123 const char* sp1 =
"94:83:c4:06:da:66.[MACAddress == '00:01:02:03:44:f0'].Extender";
124 const char* sp2 =
"['Foundation' in Science-fiction].Author";
125 const char* sp3 =
"*.Awards.*.[year == 1980]";
126 const char* sp4 =
"0.[Age > 50]";
127 const char* sp5 =
"0.[Age > 60]";
128 const char* sp6 =
"0.[Age > 10]";
130 amxc_htable_it_t* it = NULL;
131 amxc_var_t* data = NULL;
132 amxc_htable_t results;
133 amxc_htable_init(&results, 5);
136 assert_int_equal(amxc_htable_size(&results), 1);
137 it = amxc_htable_get(&results,
"'94:83:c4:06:da:66'.0.'Extender'");
139 data = amxc_var_from_htable_it(it);
140 assert_non_null(data);
141 assert_int_equal(amxc_var_type_of(data), AMXC_VAR_ID_BOOL);
142 amxc_htable_clean(&results, variant_htable_it_free);
144 amxc_htable_init(&results, 5);
146 assert_int_equal(amxc_htable_size(&results), 1);
147 it = amxc_htable_get(&results,
"1.'Author'");
149 data = amxc_var_from_htable_it(it);
150 assert_non_null(data);
151 assert_int_equal(amxc_var_type_of(data), AMXC_VAR_ID_CSTRING);
152 amxc_htable_clean(&results, variant_htable_it_free);
154 amxc_htable_init(&results, 5);
156 assert_int_equal(amxc_htable_size(&results), 1);
157 it = amxc_htable_get(&results,
"2.'Awards'.'Hugo'.1");
159 data = amxc_var_from_htable_it(it);
160 assert_non_null(data);
161 assert_int_equal(amxc_var_type_of(data), AMXC_VAR_ID_HTABLE);
162 amxc_htable_clean(&results, variant_htable_it_free);
164 amxc_htable_init(&results, 5);
166 assert_int_equal(amxc_htable_size(&results), 1);
167 it = amxc_htable_get(&results,
"0.'John Doe'");
169 data = amxc_var_from_htable_it(it);
170 assert_non_null(data);
171 assert_int_equal(amxc_var_type_of(data), AMXC_VAR_ID_HTABLE);
172 amxc_htable_clean(&results, variant_htable_it_free);
174 amxc_htable_init(&results, 5);
176 assert_int_equal(amxc_htable_size(&results), 0);
177 amxc_htable_clean(&results, variant_htable_it_free);
179 amxc_htable_init(&results, 5);
181 assert_int_equal(amxc_htable_size(&results), 2);
182 amxc_htable_clean(&results, variant_htable_it_free);
int amxp_expr_find_var_values(const amxc_var_t *const var, amxc_htable_t *values, const char *path)
Search matching variant paths in a composite variant.
static amxc_var_t * test_set1
static amxc_var_t * test_set2