]> gitweb.factorcode.org Git - factor.git/blob - basis/unicode/case/case-tests.factor
Merge branch 'master' of git://factorcode.org/git/factor into clean-linux-x86-32
[factor.git] / basis / unicode / case / case-tests.factor
1 ! Copyright (C) 2008, 2009 Daniel Ehrenberg.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: unicode.case tools.test namespaces strings unicode.normalize
4 unicode.case.private ;
5 IN: unicode.case.tests
6
7 \ >upper must-infer
8 \ >lower must-infer
9 \ >title must-infer
10
11 [ "Hello How Are You? I'm Good" ] [ "hEllo how ARE yOU? I'm good" >title ] unit-test
12 [ "FUSS" ] [ "Fu\u0000DF" >upper ] unit-test
13 [ "\u0003C3a\u0003C2 \u0003C3\u0003C2 \u0003C3a\u0003C2" ] [ "\u0003A3A\u0003A3 \u0003A3\u0003A3 \u0003A3A\u0003A3" >lower ] unit-test
14 [ t ] [ "hello how are you?" lower? ] unit-test
15 [
16     [ f ] [ i-dot? ] unit-test
17     [ f ] [ lt? ] unit-test
18     "tr" locale set
19     [ t ] [ i-dot? ] unit-test
20     [ f ] [ lt? ] unit-test
21     [ "i\u000131i \u000131jj" ] [ "i\u000131I\u000307 IJj" >lower ] unit-test
22     [ "I\u000307\u000131i Ijj" ] [ "i\u000131I\u000307 IJj" >title ] unit-test
23     [ "I\u000307II\u000307 IJJ" ] [ "i\u000131I\u000307 IJj" >upper ] unit-test
24     "lt" locale set
25     [ f ] [ i-dot? ] unit-test
26     [ t ] [ lt? ] unit-test
27     [ "i\u000307\u000300" ] [ HEX: CC 1string nfd >lower ] unit-test
28     [ "\u00012f\u000307" ] [ HEX: 12E 1string nfd >lower nfc ] unit-test
29     [ "I\u000300" ] [ "i\u000307\u000300" >upper ] unit-test
30 !    [ "I\u000300" ] [ "i\u000307\u000300" >title ] unit-test
31 ] with-scope
32
33 [ t ] [ "asdf" lower? ] unit-test
34 [ f ] [ "asdF" lower? ] unit-test
35
36 [ t ] [ "ASDF" upper? ] unit-test
37 [ f ] [ "ASDf" upper? ] unit-test