locitest: remove redundant list setup/check functions
These functions were almost identical to the more commonly used populate/check
functions.
diff --git a/c_gen/c_test_gen.py b/c_gen/c_test_gen.py
index 109ab9b..07959b4 100644
--- a/c_gen/c_test_gen.py
+++ b/c_gen/c_test_gen.py
@@ -393,24 +393,6 @@
%(cls)s_t *obj, int value);
""" % dict(cls=cls, v_name=loxi_utils.version_to_name(version)))
- out.write("""
-/*
- * Declarations for list population and check primitives
- */
-""")
-
- for version in of_g.of_version_range:
- for cls in of_g.ordered_list_objects:
- if version in of_g.unified[cls]:
- out.write("""
-extern int
- list_setup_%(cls)s_%(v_name)s(
- %(cls)s_t *list, int value);
-extern int
- list_check_%(cls)s_%(v_name)s(
- %(cls)s_t *list, int value);
-""" % dict(cls=cls, v_name=loxi_utils.version_to_name(version)))
-
out.write("\n#endif /* _TEST_COMMON_H_ */\n")
def gen_common_test(out, name):
@@ -485,7 +467,6 @@
gen_fill_string(out)
gen_scalar_set_check_funs(out)
- gen_list_set_check_funs(out)
gen_unified_accessor_funs(out)
gen_ident_tests(out)
@@ -757,115 +738,6 @@
TEST_OK(%(cls)s_next(list, &elt));
""" % dict(cls=cls))
-def setup_list_fn(out, version, cls):
- """
- Generate a helper function that populates a list with two
- of each type of subclass it supports
- """
- out.write("""
-/**
- * Set up a list of type %(cls)s with two of each type of subclass
- */
-int
-list_setup_%(cls)s_%(v_name)s(
- %(cls)s_t *list, int value)
-{
-""" % dict(cls=cls, v_name=loxi_utils.version_to_name(version)))
- base_type = loxi_utils.list_to_entry_type(cls)
- out.write("""
- of_object_t elt;
- int cur_len = 0;
- (void) elt;
- (void) cur_len;
-""" % dict(cls=cls, base_type=base_type))
-
- sub_classes = type_maps.sub_class_map(base_type, version)
- sub_classes = [(instance, subcls) for (instance, subcls) in sub_classes if not type_maps.class_is_virtual(subcls)]
- v_name = loxi_utils.version_to_name(version)
-
- if not type_maps.class_is_virtual(base_type):
- out.write(" /* No subclasses for %s */\n"% base_type)
- out.write(" %s_t *elt_p;\n" % base_type)
- out.write("\n elt_p = &elt;\n")
- else:
- out.write(" /* Declare pointers for each subclass */\n")
- for instance, subcls in sub_classes:
- out.write(" %s_t *%s;\n" % (subcls, instance))
- out.write("\n /* Instantiate pointers for each subclass */\n")
- for instance, subcls in sub_classes:
- out.write(" %s = &elt;\n" % (instance))
-
- if not type_maps.class_is_virtual(base_type): # No inheritance case
- setup_instance(out, cls, base_type, "elt_p", v_name, version)
- else:
- for instance, subcls in sub_classes:
- setup_instance(out, cls, subcls, instance, v_name, version)
- out.write("""
-
- return value;
-}
-""")
-
-def check_list_fn(out, version, cls):
- """
- Generate a helper function that checks a list populated by above fn
- """
- out.write("""
-/**
- * Check a list of type %(cls)s generated by
- * list_setup_%(cls)s_%(v_name)s
- */
-int
-list_check_%(cls)s_%(v_name)s(
- %(cls)s_t *list, int value)
-{
-""" % dict(cls=cls, v_name=loxi_utils.version_to_name(version)))
- base_type = loxi_utils.list_to_entry_type(cls)
- out.write("""
- of_object_t elt;
- (void) elt;
-""" % dict(cls=cls, base_type=base_type))
-
- sub_classes = type_maps.sub_class_map(base_type, version)
- sub_classes = [(instance, subcls) for (instance, subcls) in sub_classes if not type_maps.class_is_virtual(subcls)]
- v_name = loxi_utils.version_to_name(version)
-
- if not type_maps.class_is_virtual(base_type):
- out.write(" /* No subclasses for %s */\n"% base_type)
- out.write(" %s_t *elt_p;\n" % base_type)
- out.write("\n elt_p = &elt;\n")
- else:
- out.write(" /* Declare pointers for each subclass */\n")
- for instance, subcls in sub_classes:
- out.write(" %s_t *%s;\n" % (subcls, instance))
- out.write("\n /* Instantiate pointers for each subclass */\n")
- for instance, subcls in sub_classes:
- out.write(" %s = &elt;\n" % (instance))
-
- if not type_maps.class_is_virtual(base_type) or sub_classes:
- out.write(" TEST_OK(%(cls)s_first(list, &elt));\n" % dict(cls=cls))
-
- if not type_maps.class_is_virtual(base_type): # No inheritance case
- check_instance(out, cls, base_type, "elt_p", v_name, version, True)
- else:
- count = 0
- for instance, subcls in sub_classes:
- count += 1
- check_instance(out, cls, subcls, instance, v_name,
- version, count==len(sub_classes))
-
- out.write("""
- return value;
-}
-""" % dict(base_type=base_type))
-
-def gen_list_set_check_funs(out):
- for version in of_g.of_version_range:
- for cls in of_g.ordered_list_objects:
- if version in of_g.unified[cls]:
- setup_list_fn(out, version, cls)
- check_list_fn(out, version, cls)
-
# Maybe: Get a map from list class to parent, mem_name of container
def list_test(out, version, cls):
@@ -888,7 +760,7 @@
TEST_ASSERT(list->parent == NULL);
TEST_ASSERT(list->object_id == %(enum_cls)s);
- value = list_setup_%(cls)s_%(v_name)s(list, value);
+ value = %(cls)s_%(v_name)s_populate(list, value);
TEST_ASSERT(value != 0);
""" % dict(cls=cls, base_type=base_type, v_name=loxi_utils.version_to_name(version),
enum_cls=loxi_utils.enum_name(cls)))
@@ -896,7 +768,7 @@
out.write("""
/* Now check values */
value = 1;
- value = list_check_%(cls)s_%(v_name)s(list, value);
+ value = %(cls)s_%(v_name)s_check(list, value);
TEST_ASSERT(value != 0);
""" % dict(cls=cls, v_name=loxi_utils.version_to_name(version)))