aboutsummaryrefslogtreecommitdiff
path: root/tests/unicode_test.ml
diff options
context:
space:
mode:
Diffstat (limited to 'tests/unicode_test.ml')
-rwxr-xr-xtests/unicode_test.ml39
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/unicode_test.ml b/tests/unicode_test.ml
new file mode 100755
index 0000000..8c58dc8
--- /dev/null
+++ b/tests/unicode_test.ml
@@ -0,0 +1,39 @@
+open OUnit2
+
+let _msg ~expected ~result =
+ Printf.sprintf "Expected %s but got %s"
+ (String.escaped expected)
+ (String.escaped result)
+
+let test_decode env = begin
+ let result = Unicode.decode ~encoding:`ISO_8859_1 "caf\xE9"
+ |> Unicode.to_utf8
+ and expected = "café" in
+
+ assert_equal
+ ~msg:(_msg ~expected ~result)
+ expected
+ result
+end
+
+let test_tolist env = begin
+
+
+ let result = Unicode.decode ~encoding:`UTF_8 "café"
+ |> Unicode.to_list in
+
+ let expected = ['c'; 'a'; 'f'; '\xE9']
+ |> List.map Uchar.of_char in
+
+ assert_equal
+ expected
+ result
+
+end
+
+
+let tests = "unicode_test">::: [
+ "test_decode" >:: test_decode;
+ "test_tolist" >:: test_tolist
+
+]