Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/include/kunit/attributes.h
26282 views
1
/* SPDX-License-Identifier: GPL-2.0 */
2
/*
3
* KUnit API to save and access test attributes
4
*
5
* Copyright (C) 2023, Google LLC.
6
* Author: Rae Moar <[email protected]>
7
*/
8
9
#ifndef _KUNIT_ATTRIBUTES_H
10
#define _KUNIT_ATTRIBUTES_H
11
12
/*
13
* struct kunit_attr_filter - representation of attributes filter with the
14
* attribute object and string input
15
*/
16
struct kunit_attr_filter {
17
struct kunit_attr *attr;
18
char *input;
19
};
20
21
/*
22
* Returns the name of the filter's attribute.
23
*/
24
const char *kunit_attr_filter_name(struct kunit_attr_filter filter);
25
26
/*
27
* Print all test attributes for a test case or suite.
28
* Output format for test cases: "# <test_name>.<attribute>: <value>"
29
* Output format for test suites: "# <attribute>: <value>"
30
*/
31
void kunit_print_attr(void *test_or_suite, bool is_test, unsigned int test_level);
32
33
/*
34
* Returns the number of fitlers in input.
35
*/
36
int kunit_get_filter_count(char *input);
37
38
/*
39
* Parse attributes filter input and return an objects containing the
40
* attribute object and the string input of the next filter.
41
*/
42
struct kunit_attr_filter kunit_next_attr_filter(char **filters, int *err);
43
44
/*
45
* Returns a copy of the suite containing only tests that pass the filter.
46
*/
47
struct kunit_suite *kunit_filter_attr_tests(const struct kunit_suite *const suite,
48
struct kunit_attr_filter filter, char *action, int *err);
49
50
#endif /* _KUNIT_ATTRIBUTES_H */
51
52