2 * Wireshark - Network traffic analyzer
3 * By Gerald Combs <gerald@wireshark.org>
4 * Copyright 2001 Gerald Combs
7 * SPDX-License-Identifier: GPL-2.0-or-later
10 #include "syntax-tree.h"
11 #include "sttype-test.h"
20 #define TEST_MAGIC 0xab9009ba
23 test_new(gpointer junk)
27 g_assert(junk == NULL);
29 test = g_new(test_t, 1);
31 test->magic = TEST_MAGIC;
32 test->op = TEST_OP_UNINITIALIZED;
36 return (gpointer) test;
40 test_dup(gconstpointer data)
42 const test_t *org = (const test_t *)data;
45 test = (test_t *)test_new(NULL);
47 test->val1 = stnode_dup(org->val1);
48 test->val2 = stnode_dup(org->val1);
50 return (gpointer) test;
54 test_free(gpointer value)
56 test_t *test = (test_t *)value;
57 assert_magic(test, TEST_MAGIC);
60 stnode_free(test->val1);
62 stnode_free(test->val2);
68 num_operands(test_op_t op)
71 case TEST_OP_UNINITIALIZED:
84 case TEST_OP_BITWISE_AND:
85 case TEST_OP_CONTAINS:
90 g_assert_not_reached();
96 sttype_test_set1(stnode_t *node, test_op_t op, stnode_t *val1)
100 test = (test_t*)stnode_data(node);
101 assert_magic(test, TEST_MAGIC);
103 g_assert(num_operands(op) == 1);
109 sttype_test_set2(stnode_t *node, test_op_t op, stnode_t *val1, stnode_t *val2)
113 test = (test_t*)stnode_data(node);
114 assert_magic(test, TEST_MAGIC);
116 g_assert(num_operands(op) == 2);
123 sttype_test_set2_args(stnode_t *node, stnode_t *val1, stnode_t *val2)
127 test = (test_t*)stnode_data(node);
128 assert_magic(test, TEST_MAGIC);
130 if (num_operands(test->op) == 1) {
131 g_assert(val2 == NULL);
138 sttype_test_get(stnode_t *node, test_op_t *p_op, stnode_t **p_val1, stnode_t **p_val2)
142 test = (test_t*)stnode_data(node);
143 assert_magic(test, TEST_MAGIC);
148 *p_val1 = test->val1;
150 *p_val2 = test->val2;
154 sttype_register_test(void)
156 static sttype_t test_type = {
164 sttype_register(&test_type);
168 * Editor modelines - http://www.wireshark.org/tools/modelines.html
173 * indent-tabs-mode: t
176 * vi: set shiftwidth=8 tabstop=8 noexpandtab:
177 * :indentSize=8:tabSize=8:noTabs=false: