| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- /* SPDX-License-Identifier: GPL-2.0 */
- /*
- * KUnit API to save and access test attributes
- *
- * Copyright (C) 2023, Google LLC.
- * Author: Rae Moar <rmoar@google.com>
- */
- #ifndef _KUNIT_ATTRIBUTES_H
- #define _KUNIT_ATTRIBUTES_H
- /*
- * struct kunit_attr_filter - representation of attributes filter with the
- * attribute object and string input
- */
- struct kunit_attr_filter {
- struct kunit_attr *attr;
- char *input;
- };
- /*
- * Returns the name of the filter's attribute.
- */
- const char *kunit_attr_filter_name(struct kunit_attr_filter filter);
- /*
- * Print all test attributes for a test case or suite.
- * Output format for test cases: "# <test_name>.<attribute>: <value>"
- * Output format for test suites: "# <attribute>: <value>"
- */
- void kunit_print_attr(void *test_or_suite, bool is_test, unsigned int test_level);
- /*
- * Returns the number of fitlers in input.
- */
- int kunit_get_filter_count(char *input);
- /*
- * Parse attributes filter input and return an objects containing the
- * attribute object and the string input of the next filter.
- */
- struct kunit_attr_filter kunit_next_attr_filter(char **filters, int *err);
- /*
- * Returns a copy of the suite containing only tests that pass the filter.
- */
- struct kunit_suite *kunit_filter_attr_tests(const struct kunit_suite *const suite,
- struct kunit_attr_filter filter, char *action, int *err);
- #endif /* _KUNIT_ATTRIBUTES_H */
|