-
Notifications
You must be signed in to change notification settings - Fork 182
Expand file tree
/
Copy pathbyte_math.carp
More file actions
50 lines (48 loc) · 1.32 KB
/
byte_math.carp
File metadata and controls
50 lines (48 loc) · 1.32 KB
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
(load "Test.carp")
(use-all Byte Test)
(deftest test
(assert-equal test
1b
(min 1b 2b)
"min works as expected")
(assert-equal test
2b
(max 1b 2b)
"max works as expected")
(assert-equal test
false
(even? 3b)
"even? works as expected")
(assert-equal test
true
(odd? 3b)
"odd? works as expected")
(assert-equal test
1b
(bit-and 3b 5b)
"bit-and works as expected")
(assert-equal test
5b
(bit-or 1b 4b)
"bit-or works as expected")
(assert-equal test
4b
(bit-xor 1b 5b)
"bit-xor works as expected")
(assert-equal test
1b
(bit-not 254b)
"bit-not works as expected")
(assert-equal test
8b
(bit-shift-left 2b 2b)
"bit-shift-left works as expected")
(assert-equal test
2b
(bit-shift-right 16b 3b)
"bit-shift-right works as expected")
(assert-equal test
1
(/ 3 2)
"integer division truncates as expected")
)