]> gitweb.factorcode.org Git - factor.git/blob - core/math/parser/parser-tests.factor
allow commas in numeric literals
[factor.git] / core / math / parser / parser-tests.factor
1 USING: kernel math math.parser sequences tools.test ;
2 IN: math.parser.tests
3
4 [ f ]
5 [ f string>number ]
6 unit-test
7
8 [ f ]
9 [ "12345abcdef" string>number ]
10 unit-test
11
12 [ t ]
13 [ "-12" string>number 0 < ]
14 unit-test
15
16 [ f ]
17 [ "--12" string>number ]
18 unit-test
19
20 [ f ]
21 [ "-" string>number ]
22 unit-test
23
24 [ f ]
25 [ "e" string>number ]
26 unit-test
27
28 [ 100000 ]
29 [ "100,000" string>number ]
30 unit-test
31
32 [ 100000.0 ]
33 [ "100,000.0" string>number ]
34 unit-test
35
36 [ "100.0" ]
37 [ "1.0e2" string>number number>string ]
38 unit-test
39
40 [ "-100.0" ]
41 [ "-1.0e2" string>number number>string ]
42 unit-test
43
44 [ "0.01" ]
45 [ "1.0e-2" string>number number>string ]
46 unit-test
47
48 [ "-0.01" ]
49 [ "-1.0e-2" string>number number>string ]
50 unit-test
51
52 [ t ]
53 [ "-1.0e-12" string>number number>string { "-1.0e-12" "-1.0e-012" } member? ]
54 unit-test
55
56 [ f ]
57 [ "-1e-2e4" string>number ]
58 unit-test
59
60 [ "3.14" ]
61 [ "3.14" string>number number>string ]
62 unit-test
63
64 [ f ]
65 [ "." string>number ]
66 unit-test
67
68 [ f ]
69 [ ".e" string>number ]
70 unit-test
71
72 [ "101.0" ]
73 [ "1.01e2" string>number number>string ]
74 unit-test
75
76 [ "-101.0" ]
77 [ "-1.01e2" string>number number>string ]
78 unit-test
79
80 [ "1.01" ]
81 [ "101.0e-2" string>number number>string ]
82 unit-test
83
84 [ "-1.01" ]
85 [ "-101.0e-2" string>number number>string ]
86 unit-test
87
88 [ f ]
89 [ "1e1/2" string>number ]
90 unit-test
91
92 [ f ]
93 [ "e/2" string>number ]
94 unit-test
95
96 [ f ] [ "12" bin> ] unit-test
97 [ f ] [ "fdsf" bin> ] unit-test
98 [ 3 ] [ "11" bin> ] unit-test
99
100 [ f ] [ "\0." string>number ] unit-test
101
102 [ 1 1 >base ] must-fail
103 [ 1 0 >base ] must-fail
104 [ 1 -1 >base ] must-fail
105
106 [ "0/0." ] [ 0.0 0.0 / number>string ] unit-test
107
108 [ "1/0." ] [ 1.0 0.0 / number>string ] unit-test
109
110 [ "-1/0." ] [ -1.0 0.0 / number>string ] unit-test
111
112 [ t ] [ "0/0." string>number fp-nan? ] unit-test
113
114 [ 1/0. ] [ "1/0." string>number ] unit-test
115
116 [ -1/0. ] [ "-1/0." string>number ] unit-test
117
118 [ "-0.0" ] [ -0.0 number>string ] unit-test
119
120 [ "-3/4" ] [ -3/4 number>string ] unit-test
121 [ "-1-1/4" ] [ -5/4 number>string ] unit-test