colibri_imx6: fix video stdout in default environment
[oweals/u-boot.git] / include / test / test.h
index 5977c59d3f78fd55257a92c88b12e38a2c86cf5c..029288de88069675c598a40c4a88d876d2897756 100644 (file)
  * @start: Store the starting mallinfo when doing leak test
  * @priv: A pointer to some other info some suites want to track
  * @of_root: Record of the livetree root node (used for setting up tests)
+ * @expect_str: Temporary string used to hold expected string value
+ * @actual_str: Temporary string used to hold actual string value
  */
 struct unit_test_state {
        int fail_count;
        struct mallinfo start;
        void *priv;
        struct device_node *of_root;
+       char expect_str[256];
+       char actual_str[256];
 };
 
 /**
@@ -37,7 +41,29 @@ struct unit_test {
        int flags;
 };
 
-/* Declare a new unit test */
+/**
+ * UNIT_TEST() - create linker generated list entry for unit a unit test
+ *
+ * The macro UNIT_TEST() is used to create a linker generated list entry. These
+ * list entries are enumerate tests that can be execute using the ut command.
+ * The list entries are used both by the implementation of the ut command as
+ * well as in a related Python test.
+ *
+ * For Python testing the subtests are collected in Python function
+ * generate_ut_subtest() by applying a regular expression to the lines of file
+ * u-boot.sym. The list entries have to follow strict naming conventions to be
+ * matched by the expression.
+ *
+ * Use UNIT_TEST(foo_test_bar, _flags, foo_test) for a test bar in test suite
+ * foo that can be executed via command 'ut foo bar' and is implemented in
+ * function foo_test_bar().
+ *
+ * @_name:     concatenation of name of the test suite, "_test_", and the name
+ *             of the test
+ * @_flags:    an integer field that can be evaluated by the test suite
+ *             implementation
+ * @_suite:    name of the test suite concatenated with "_test"
+ */
 #define UNIT_TEST(_name, _flags, _suite)                               \
        ll_entry_declare(struct unit_test, _name, _suite) = {           \
                .file = __FILE__,                                       \
@@ -52,8 +78,9 @@ enum {
        TEST_DEVRES_COUNT       = 10,
        TEST_DEVRES_TOTAL       = TEST_DEVRES_SIZE * TEST_DEVRES_COUNT,
 
-       /* A different size */
+       /* A few different sizes */
        TEST_DEVRES_SIZE2       = 15,
+       TEST_DEVRES_SIZE3       = 37,
 };
 
 #endif /* __TEST_TEST_H */