aboutsummaryrefslogtreecommitdiffstats
path: root/yql/essentials/udfs/common/python/bindings/py_utils_ut.cpp
diff options
context:
space:
mode:
authorimunkin <imunkin@yandex-team.com>2024-11-08 10:00:23 +0300
committerimunkin <imunkin@yandex-team.com>2024-11-08 10:12:13 +0300
commita784a2f943d6e15caa6241e2e96d80aac6dbf375 (patch)
tree05f1e5366c916b988a8afb75bdab8ddeee0f6e6d /yql/essentials/udfs/common/python/bindings/py_utils_ut.cpp
parentd70137a7b530ccaa52834274913bbb5a3d1ca06e (diff)
downloadydb-a784a2f943d6e15caa6241e2e96d80aac6dbf375.tar.gz
Move yql/udfs/common/ to /yql/essentials YQL-19206
Except the following directories: * clickhouse/client * datetime * knn * roaring commit_hash:c7da95636144d28db109d6b17ddc762e9bacb59f
Diffstat (limited to 'yql/essentials/udfs/common/python/bindings/py_utils_ut.cpp')
-rw-r--r--yql/essentials/udfs/common/python/bindings/py_utils_ut.cpp37
1 files changed, 37 insertions, 0 deletions
diff --git a/yql/essentials/udfs/common/python/bindings/py_utils_ut.cpp b/yql/essentials/udfs/common/python/bindings/py_utils_ut.cpp
new file mode 100644
index 0000000000..ce521689b4
--- /dev/null
+++ b/yql/essentials/udfs/common/python/bindings/py_utils_ut.cpp
@@ -0,0 +1,37 @@
+#include "py_utils.h"
+
+#include <library/cpp/testing/unittest/registar.h>
+
+
+using namespace NPython;
+
+Y_UNIT_TEST_SUITE(TPyUtilsTest) {
+
+ Y_UNIT_TEST(EncodingCookie) {
+ UNIT_ASSERT(HasEncodingCookie("# -*- coding: latin-1 -*-"));
+ UNIT_ASSERT(HasEncodingCookie("# -*- coding:latin-1 -*-"));
+ UNIT_ASSERT(HasEncodingCookie("# -*- coding=latin-1 -*-"));
+ UNIT_ASSERT(HasEncodingCookie("# -*- encoding: latin-1 -*-"));
+ UNIT_ASSERT(HasEncodingCookie("# -*- encoding:latin-1 -*-"));
+ UNIT_ASSERT(HasEncodingCookie("# -*- encoding=latin-1 -*-"));
+ UNIT_ASSERT(HasEncodingCookie("# -*- coding: iso-8859-15 -*-"));
+ UNIT_ASSERT(HasEncodingCookie("# -*- coding: ascii -*-"));
+ UNIT_ASSERT(HasEncodingCookie(
+ "# This Python file uses the following encoding: utf-8"));
+
+ // encoding commend on second line
+ UNIT_ASSERT(HasEncodingCookie(
+ "#!/usr/local/bin/python\n"
+ "# -*- coding: iso-8859-15 -*-\n"
+ "print 'hello'"));
+
+ // missing "coding:" prefix
+ UNIT_ASSERT(false == HasEncodingCookie("# latin-1"));
+
+ // encoding comment not on line 1 or 2
+ UNIT_ASSERT(false == HasEncodingCookie(
+ "#!/usr/local/bin/python\n"
+ "#\n"
+ "# -*- coding: latin-1 -*-\n"));
+ }
+}