1 #[test]
test_true_eql_true()2 fn test_true_eql_true() {
3 let text = " {% if true == true %} true {% else %} false {% endif %} ";
4 assert_template_result!(" true ", text);
5 }
6
7 #[test]
test_true_not_eql_true()8 fn test_true_not_eql_true() {
9 let text = " {% if true != true %} true {% else %} false {% endif %} ";
10 assert_template_result!(" false ", text);
11 }
12
13 #[test]
test_true_lq_true()14 fn test_true_lq_true() {
15 let text = " {% if 0 > 0 %} true {% else %} false {% endif %} ";
16 assert_template_result!(" false ", text);
17 }
18
19 #[test]
test_one_lq_zero()20 fn test_one_lq_zero() {
21 let text = " {% if 1 > 0 %} true {% else %} false {% endif %} ";
22 assert_template_result!(" true ", text);
23 }
24
25 #[test]
test_zero_lq_one()26 fn test_zero_lq_one() {
27 let text = " {% if 0 < 1 %} true {% else %} false {% endif %} ";
28 assert_template_result!(" true ", text);
29 }
30
31 #[test]
test_zero_lq_or_equal_one()32 fn test_zero_lq_or_equal_one() {
33 let text = " {% if 0 <= 0 %} true {% else %} false {% endif %} ";
34 assert_template_result!(" true ", text);
35 }
36
37 #[test]
test_zero_lq_or_equal_one_involving_nil()38 fn test_zero_lq_or_equal_one_involving_nil() {
39 let text = " {% if null <= 0 %} true {% else %} false {% endif %} ";
40 assert_template_result!(" false ", text);
41
42 let text = " {% if 0 <= null %} true {% else %} false {% endif %} ";
43 assert_template_result!(" false ", text);
44 }
45
46 #[test]
test_zero_lqq_or_equal_one()47 fn test_zero_lqq_or_equal_one() {
48 let text = " {% if 0 >= 0 %} true {% else %} false {% endif %} ";
49 assert_template_result!(" true ", text);
50 }
51
52 #[test]
test_strings()53 fn test_strings() {
54 let text = " {% if 'test' == 'test' %} true {% else %} false {% endif %} ";
55 assert_template_result!(" true ", text);
56 }
57
58 #[test]
test_strings_not_equal()59 fn test_strings_not_equal() {
60 let text = " {% if 'test' != 'test' %} true {% else %} false {% endif %} ";
61 assert_template_result!(" false ", text);
62 }
63
64 #[test]
test_var_strings_equal()65 fn test_var_strings_equal() {
66 let text = r#" {% if var == "hello there!" %} true {% else %} false {% endif %} "#;
67 assert_template_result!(" true ", text, o!({"var": "hello there!"}));
68 }
69
70 #[test]
test_var_strings_are_not_equal()71 fn test_var_strings_are_not_equal() {
72 let text = r#" {% if "hello there!" == var %} true {% else %} false {% endif %} "#;
73 assert_template_result!(" true ", text, o!({"var": "hello there!"}));
74 }
75
76 #[test]
test_var_and_long_string_are_equal()77 fn test_var_and_long_string_are_equal() {
78 let text = r#" {% if var == "hello there!" %} true {% else %} false {% endif %} "#;
79 assert_template_result!(" true ", text, o!({"var": "hello there!"}));
80 }
81
82 #[test]
test_var_and_long_string_are_equal_backwards()83 fn test_var_and_long_string_are_equal_backwards() {
84 let text = r#" {% if "hello there!" == var %} true {% else %} false {% endif %} "#;
85 assert_template_result!(" true ", text, o!({"var": "hello there!"}));
86 }
87
88 /*
89 # def test_is_nil
90 # text = %| {% if var != nil %} true {% else %} false {% end %} |
91 # @template.assigns = { "var": "hello there!"}
92 # expected = %| true |
93 # assert_equal expected, @template.parse(text)
94 # end
95 */
96
97 #[test]
test_is_collection_empty()98 fn test_is_collection_empty() {
99 let text = " {% if array == empty %} true {% else %} false {% endif %} ";
100 assert_template_result!(" true ", text, o!({"array": []}));
101 }
102
103 #[test]
test_is_not_collection_empty()104 fn test_is_not_collection_empty() {
105 let text = " {% if array == empty %} true {% else %} false {% endif %} ";
106 assert_template_result!(" false ", text, o!({"array": [1, 2, 3]}));
107 }
108
109 #[test]
test_nil()110 fn test_nil() {
111 let text = " {% if var == nil %} true {% else %} false {% endif %} ";
112 assert_template_result!(" true ", text, o!({ "var": nil }));
113
114 let text = " {% if var == null %} true {% else %} false {% endif %} ";
115 assert_template_result!(" true ", text, o!({ "var": nil }));
116 }
117
118 #[test]
test_not_nil()119 fn test_not_nil() {
120 let text = " {% if var != nil %} true {% else %} false {% endif %} ";
121 assert_template_result!(" true ", text, o!({"var": 1}));
122
123 let text = " {% if var != null %} true {% else %} false {% endif %} ";
124 assert_template_result!(" true ", text, o!({"var": 1}));
125 }
126