@@ -50,3 +50,78 @@ fn test_if_not() {
5050 assert_eq ! ( if_not( true ) , Ok ( 1 ) ) ;
5151 assert_eq ! ( if_not( false ) , Ok ( 0 ) ) ;
5252}
53+
54+ #[ test]
55+ fn test_eq ( ) {
56+ let eq = jit_function ! { eq( a: bool , b: bool ) -> i64 => r##"
57+ def eq(a: bool, b: bool):
58+ if a == b:
59+ return 1
60+ return 0
61+ "## } ;
62+
63+ assert_eq ! ( eq( false , false ) , Ok ( 1 ) ) ;
64+ assert_eq ! ( eq( true , true ) , Ok ( 1 ) ) ;
65+ assert_eq ! ( eq( false , true ) , Ok ( 0 ) ) ;
66+ assert_eq ! ( eq( true , false ) , Ok ( 0 ) ) ;
67+ }
68+
69+ #[ test]
70+ fn test_gt ( ) {
71+ let gt = jit_function ! { gt( a: bool , b: bool ) -> i64 => r##"
72+ def gt(a: bool, b: bool):
73+ if a > b:
74+ return 1
75+ return 0
76+ "## } ;
77+
78+ assert_eq ! ( gt( false , false ) , Ok ( 0 ) ) ;
79+ assert_eq ! ( gt( true , true ) , Ok ( 0 ) ) ;
80+ assert_eq ! ( gt( false , true ) , Ok ( 0 ) ) ;
81+ assert_eq ! ( gt( true , false ) , Ok ( 1 ) ) ;
82+ }
83+
84+ #[ test]
85+ fn test_lt ( ) {
86+ let lt = jit_function ! { lt( a: bool , b: bool ) -> i64 => r##"
87+ def lt(a: bool, b: bool):
88+ if a < b:
89+ return 1
90+ return 0
91+ "## } ;
92+
93+ assert_eq ! ( lt( false , false ) , Ok ( 0 ) ) ;
94+ assert_eq ! ( lt( true , true ) , Ok ( 0 ) ) ;
95+ assert_eq ! ( lt( false , true ) , Ok ( 1 ) ) ;
96+ assert_eq ! ( lt( true , false ) , Ok ( 0 ) ) ;
97+ }
98+
99+ #[ test]
100+ fn test_gte ( ) {
101+ let gte = jit_function ! { gte( a: bool , b: bool ) -> i64 => r##"
102+ def gte(a: bool, b: bool):
103+ if a >= b:
104+ return 1
105+ return 0
106+ "## } ;
107+
108+ assert_eq ! ( gte( false , false ) , Ok ( 1 ) ) ;
109+ assert_eq ! ( gte( true , true ) , Ok ( 1 ) ) ;
110+ assert_eq ! ( gte( false , true ) , Ok ( 0 ) ) ;
111+ assert_eq ! ( gte( true , false ) , Ok ( 1 ) ) ;
112+ }
113+
114+ #[ test]
115+ fn test_lte ( ) {
116+ let lte = jit_function ! { lte( a: bool , b: bool ) -> i64 => r##"
117+ def lte(a: bool, b: bool):
118+ if a <= b:
119+ return 1
120+ return 0
121+ "## } ;
122+
123+ assert_eq ! ( lte( false , false ) , Ok ( 1 ) ) ;
124+ assert_eq ! ( lte( true , true ) , Ok ( 1 ) ) ;
125+ assert_eq ! ( lte( false , true ) , Ok ( 1 ) ) ;
126+ assert_eq ! ( lte( true , false ) , Ok ( 0 ) ) ;
127+ }
0 commit comments