1
- using Microsoft . OpenApi . Attributes ;
1
+ using System ;
2
+ using System . Collections . Generic ;
3
+ using System . Linq ;
4
+ using System . Reflection . Metadata ;
5
+ using Microsoft . OpenApi . Attributes ;
2
6
using Microsoft . OpenApi . Extensions ;
7
+ using Microsoft . OpenApi . Models ;
3
8
using Xunit ;
4
9
5
10
namespace Microsoft . OpenApi . Tests . Attributes
@@ -26,5 +31,147 @@ public void GetDisplayNameExtensionShouldUseDisplayAttribute(ApiLevel apiLevel,
26
31
Assert . Equal ( expected , apiLevel . GetDisplayName ( ) ) ;
27
32
#pragma warning restore CS0618 // Type or member is obsolete, testing obsolete behavior
28
33
}
34
+
35
+ [ Fact ]
36
+ public void GetDisplayNameWorksForAllParameterStyle ( )
37
+ {
38
+ var enumValues = new List < ParameterStyle > ( Enum . GetValues < ParameterStyle > ( ) ) ;
39
+
40
+ Assert . Equal ( "matrix" , ParameterStyle . Matrix . GetDisplayName ( ) ) ;
41
+ Assert . True ( enumValues . Remove ( ParameterStyle . Matrix ) ) ;
42
+
43
+ Assert . Equal ( "label" , ParameterStyle . Label . GetDisplayName ( ) ) ;
44
+ Assert . True ( enumValues . Remove ( ParameterStyle . Label ) ) ;
45
+
46
+ Assert . Equal ( "form" , ParameterStyle . Form . GetDisplayName ( ) ) ;
47
+ Assert . True ( enumValues . Remove ( ParameterStyle . Form ) ) ;
48
+
49
+ Assert . Equal ( "simple" , ParameterStyle . Simple . GetDisplayName ( ) ) ;
50
+ Assert . True ( enumValues . Remove ( ParameterStyle . Simple ) ) ;
51
+
52
+ Assert . Equal ( "spaceDelimited" , ParameterStyle . SpaceDelimited . GetDisplayName ( ) ) ;
53
+ Assert . True ( enumValues . Remove ( ParameterStyle . SpaceDelimited ) ) ;
54
+
55
+ Assert . Equal ( "pipeDelimited" , ParameterStyle . PipeDelimited . GetDisplayName ( ) ) ;
56
+ Assert . True ( enumValues . Remove ( ParameterStyle . PipeDelimited ) ) ;
57
+
58
+ Assert . Equal ( "deepObject" , ParameterStyle . DeepObject . GetDisplayName ( ) ) ;
59
+ Assert . True ( enumValues . Remove ( ParameterStyle . DeepObject ) ) ;
60
+
61
+ Assert . Empty ( enumValues ) ;
62
+ }
63
+
64
+ [ Fact ]
65
+ public void GetDisplayNameWorksForAllParameterLocation ( )
66
+ {
67
+ var enumValues = new List < ParameterLocation > ( Enum . GetValues < ParameterLocation > ( ) ) ;
68
+
69
+ Assert . Equal ( "query" , ParameterLocation . Query . GetDisplayName ( ) ) ;
70
+ Assert . True ( enumValues . Remove ( ParameterLocation . Query ) ) ;
71
+
72
+ Assert . Equal ( "header" , ParameterLocation . Header . GetDisplayName ( ) ) ;
73
+ Assert . True ( enumValues . Remove ( ParameterLocation . Header ) ) ;
74
+
75
+ Assert . Equal ( "path" , ParameterLocation . Path . GetDisplayName ( ) ) ;
76
+ Assert . True ( enumValues . Remove ( ParameterLocation . Path ) ) ;
77
+
78
+ Assert . Equal ( "cookie" , ParameterLocation . Cookie . GetDisplayName ( ) ) ;
79
+ Assert . True ( enumValues . Remove ( ParameterLocation . Cookie ) ) ;
80
+
81
+ Assert . Empty ( enumValues ) ;
82
+ }
83
+
84
+ [ Fact ]
85
+ public void GetDisplayNameWorksForAllReferenceType ( )
86
+ {
87
+ var enumValues = new List < ReferenceType > ( Enum . GetValues < ReferenceType > ( ) ) ;
88
+
89
+ Assert . Equal ( "schemas" , ReferenceType . Schema . GetDisplayName ( ) ) ;
90
+ Assert . True ( enumValues . Remove ( ReferenceType . Schema ) ) ;
91
+
92
+ Assert . Equal ( "responses" , ReferenceType . Response . GetDisplayName ( ) ) ;
93
+ Assert . True ( enumValues . Remove ( ReferenceType . Response ) ) ;
94
+
95
+ Assert . Equal ( "parameters" , ReferenceType . Parameter . GetDisplayName ( ) ) ;
96
+ Assert . True ( enumValues . Remove ( ReferenceType . Parameter ) ) ;
97
+
98
+ Assert . Equal ( "examples" , ReferenceType . Example . GetDisplayName ( ) ) ;
99
+ Assert . True ( enumValues . Remove ( ReferenceType . Example ) ) ;
100
+
101
+ Assert . Equal ( "requestBodies" , ReferenceType . RequestBody . GetDisplayName ( ) ) ;
102
+ Assert . True ( enumValues . Remove ( ReferenceType . RequestBody ) ) ;
103
+
104
+ Assert . Equal ( "headers" , ReferenceType . Header . GetDisplayName ( ) ) ;
105
+ Assert . True ( enumValues . Remove ( ReferenceType . Header ) ) ;
106
+
107
+ Assert . Equal ( "securitySchemes" , ReferenceType . SecurityScheme . GetDisplayName ( ) ) ;
108
+ Assert . True ( enumValues . Remove ( ReferenceType . SecurityScheme ) ) ;
109
+
110
+ Assert . Equal ( "links" , ReferenceType . Link . GetDisplayName ( ) ) ;
111
+ Assert . True ( enumValues . Remove ( ReferenceType . Link ) ) ;
112
+
113
+ Assert . Equal ( "callbacks" , ReferenceType . Callback . GetDisplayName ( ) ) ;
114
+ Assert . True ( enumValues . Remove ( ReferenceType . Callback ) ) ;
115
+
116
+ Assert . Equal ( "tags" , ReferenceType . Tag . GetDisplayName ( ) ) ;
117
+ Assert . True ( enumValues . Remove ( ReferenceType . Tag ) ) ;
118
+
119
+ Assert . Equal ( "path" , ReferenceType . Path . GetDisplayName ( ) ) ;
120
+ Assert . True ( enumValues . Remove ( ReferenceType . Path ) ) ;
121
+
122
+ Assert . Empty ( enumValues ) ;
123
+ }
124
+
125
+ [ Fact ]
126
+ public void GetDisplayNameWorksForAllOperationTypes ( )
127
+ {
128
+ var enumValues = new List < OperationType > ( Enum . GetValues < OperationType > ( ) ) ;
129
+
130
+ Assert . Equal ( "get" , OperationType . Get . GetDisplayName ( ) ) ;
131
+ Assert . True ( enumValues . Remove ( OperationType . Get ) ) ;
132
+
133
+ Assert . Equal ( "put" , OperationType . Put . GetDisplayName ( ) ) ;
134
+ Assert . True ( enumValues . Remove ( OperationType . Put ) ) ;
135
+
136
+ Assert . Equal ( "post" , OperationType . Post . GetDisplayName ( ) ) ;
137
+ Assert . True ( enumValues . Remove ( OperationType . Post ) ) ;
138
+
139
+ Assert . Equal ( "delete" , OperationType . Delete . GetDisplayName ( ) ) ;
140
+ Assert . True ( enumValues . Remove ( OperationType . Delete ) ) ;
141
+
142
+ Assert . Equal ( "options" , OperationType . Options . GetDisplayName ( ) ) ;
143
+ Assert . True ( enumValues . Remove ( OperationType . Options ) ) ;
144
+
145
+ Assert . Equal ( "head" , OperationType . Head . GetDisplayName ( ) ) ;
146
+ Assert . True ( enumValues . Remove ( OperationType . Head ) ) ;
147
+
148
+ Assert . Equal ( "patch" , OperationType . Patch . GetDisplayName ( ) ) ;
149
+ Assert . True ( enumValues . Remove ( OperationType . Patch ) ) ;
150
+
151
+ Assert . Equal ( "trace" , OperationType . Trace . GetDisplayName ( ) ) ;
152
+ Assert . True ( enumValues . Remove ( OperationType . Trace ) ) ;
153
+
154
+ Assert . Empty ( enumValues ) ;
155
+ }
156
+
157
+ [ Fact ]
158
+ public void GetDisplayNameWorksForAllSecuritySchemeTypes ( )
159
+ {
160
+ var enumValues = new List < SecuritySchemeType > ( Enum . GetValues < SecuritySchemeType > ( ) ) ;
161
+
162
+ Assert . Equal ( "apiKey" , SecuritySchemeType . ApiKey . GetDisplayName ( ) ) ;
163
+ Assert . True ( enumValues . Remove ( SecuritySchemeType . ApiKey ) ) ;
164
+
165
+ Assert . Equal ( "http" , SecuritySchemeType . Http . GetDisplayName ( ) ) ;
166
+ Assert . True ( enumValues . Remove ( SecuritySchemeType . Http ) ) ;
167
+
168
+ Assert . Equal ( "oauth2" , SecuritySchemeType . OAuth2 . GetDisplayName ( ) ) ;
169
+ Assert . True ( enumValues . Remove ( SecuritySchemeType . OAuth2 ) ) ;
170
+
171
+ Assert . Equal ( "openIdConnect" , SecuritySchemeType . OpenIdConnect . GetDisplayName ( ) ) ;
172
+ Assert . True ( enumValues . Remove ( SecuritySchemeType . OpenIdConnect ) ) ;
173
+
174
+ Assert . Empty ( enumValues ) ;
175
+ }
29
176
}
30
177
}
0 commit comments