blob: cf5079711cd8636b339a326321b9ae93835948b8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
|
# SPDX-License-Identifier: GPL-2.0
# Copyright(c) 2026: Mauro Carvalho Chehab <mchehab@kernel.org>.
# KDoc Test File Schema
# This schema contains objects and properties needed to run kernel-doc
# self-tests.
$schema: "http://json-schema.org/draft-07/schema#"
tests:
type: array
minItems: 1
description: |
A list of kernel-doc tests.
properties:
type: object
properties:
name:
type: string
description: |
Test name. Should be an unique identifier within the schema.
Don't prepend it with "test", as the dynamic test creation will
do it.
description:
type: string
description: |
Test description
source:
type: string
description: |
C source code that should be parsed by kernel-doc.
fname:
type: string
description: |
The filename that contains the element.
When placing real testcases, please use here the name of
the C file (or header) from where the source code was picked.
exports:
type: array
items: { type: string }
description: |
A list of export identifiers that are expected when parsing source.
expected:
type: array
minItems: 1
description: |
A list of expected values. This list consists on objects to check
both kdoc_parser and/or kdoc_output objects.
items:
type: object
properties:
#
# kdoc_item
#
kdoc_item:
type: object
description: |
Object expected to represent the C source code after parsed
by tools/lib/python/kdoc/kdoc_parser.py KernelDoc class.
See tools/lib/python/kdoc/kdoc_item.py for its contents.
properties:
name:
type: string
description: |
The name of the identifier (function name, struct name, etc).
type:
type: string
description: |
Type of the object, as filled by kdoc_parser. can be:
- enum
- typedef
- union
- struct
- var
- function
declaration_start_line:
type: integer
description: |
The line number where the kernel-doc markup started.
The first line of the code is line number 1.
sections:
type: object
additionalProperties: { type: string }
description: |
Sections inside the kernel-doc markups:
- "description"
- "return"
- any other part of the markup that starts with "something:"
sections_start_lines:
type: object
additionalProperties: { type: integer }
description: |
a list of section names and the starting line of it.
parameterlist:
type: array
items: { type: string }
description: |
Ordered list of parameter names.
parameterdesc_start_lines:
type: object
additionalProperties: { type: integer }
description: |
Mapping from parameter name to the line where its
description starts.
parameterdescs:
type: object
additionalProperties: { type: string }
description: |
Mapping from parameter name to its description.
parametertypes:
type: object
additionalProperties: { type: string }
description: |
Mapping from parameter name to its type.
other_stuff:
type: object
additionalProperties: {}
description: |
Extra properties that will be stored at the item.
Should match what kdoc_output expects.
required:
- name
- type
- declaration_start_line
rst:
type: string
description: |
The expected output for RestOutput class.
man:
type: string
description: |
The expected output for ManOutput class.
anyOf:
required: kdoc_item
required: source
required:
- name
- fname
- expected
|