blob: 2e81bfe82c79a350bb3fe95cc5065cb87453446b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
source [file dirname [info script]]/testing.tcl
# Test number detection
set good_testcases {
0 0
1 1
8 8
00 0
07 7
0x5 5
0x0 0
0x00 0
-0x5 -5
0b111 7
-0b111 -7
-0B101 -5
0o7 7
0d0 0
0d7 7
0d99 99
0d099 99
-0d099 -99
}
set i 0
foreach {str exp} $good_testcases {
test expr-base-1.[incr i] "expr conversion" [list expr [list $str]] $exp
}
# JimTCL specifically does not adhere to the octal default for numbers starting with zero
test expr-base-2.1 {expr conversion jim specific} -constraints jim -body {
expr [list "08"]
} -result {8}
set bad_testcases {
{0x + 1}
x
0xx5
0x-5
{0x 5}
{0o8 + 1}
0d-5
0dff
}
set i 0
foreach str $bad_testcases {
test expr-base-3.[incr i] "expr conversion failure" -returnCodes error -body [list expr $str] -match glob -result "*"
}
testreport
|