generated from 2BAD/ts-lib-starter
-
Notifications
You must be signed in to change notification settings - Fork 0
/
openapi.yml
270 lines (255 loc) · 6.89 KB
/
openapi.yml
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
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
openapi: 3.1.0
info:
title: Load Simulation API
description: An API for simulating various performance scenarios including CPU load, memory usage, and I/O operations.
version: 1.0.0
servers:
- url: http://localhost:3000
paths:
/ping:
get:
summary: Check if server is running
responses:
'200':
description: Server is running
content:
text/plain:
schema:
type: string
example: "pong\n"
/time/delay:
get:
summary: Delayed response
parameters:
- name: ms
in: query
schema:
type: integer
description: Delay in milliseconds
responses:
'200':
description: Delayed response
content:
text/plain:
schema:
type: string
example: "Response delayed by 1000 ms\n"
/cpu/compute:
get:
summary: Compute Fibonacci number
parameters:
- name: n
in: query
schema:
type: integer
description: The nth Fibonacci number to compute
responses:
'200':
description: Computed Fibonacci number
content:
text/plain:
schema:
type: string
example: "Fibonacci(40) = 102334155\n"
/cpu/load:
get:
summary: Simulate random CPU usage
parameters:
- name: duration
in: query
schema:
type: integer
description: Duration of the simulation in milliseconds
default: 10000
- name: maxLoad
in: query
schema:
type: integer
description: Maximum CPU load percentage
default: 100
responses:
'200':
description: CPU load simulation results
content:
text/plain:
schema:
type: string
example: "Random CPU load simulated for 10000 ms. Average load: 50.25%\n"
/memory:
get:
summary: Get current memory usage
responses:
'200':
description: Current memory usage
content:
application/json:
schema:
type: object
properties:
rss:
type: string
heapTotal:
type: string
heapUsed:
type: string
external:
type: string
arrayBuffers:
type: string
/memory/leak:
get:
summary: Create a memory leak
parameters:
- name: size
in: query
schema:
type: string
description: Size of each memory leak (e.g., "1MB")
default: "1MB"
- name: count
in: query
schema:
type: integer
description: Number of memory leaks to create
default: 1
responses:
'200':
description: Memory leak created
content:
text/plain:
schema:
type: string
example: "Created 1 memory leak(s) of size 1048576 bytes each\n"
/memory/allocate:
get:
summary: Allocate memory
parameters:
- name: size
in: query
schema:
type: string
description: Size of memory to allocate (e.g., "1MB")
default: "1MB"
responses:
'200':
description: Memory allocated
content:
text/plain:
schema:
type: string
example: "Allocated 1048576 bytes of memory\n"
/io/read:
get:
summary: Simulate file read operation
parameters:
- name: size
in: query
schema:
type: string
description: Size of file to read (e.g., "1MB")
default: "1MB"
responses:
'200':
description: File read operation results
content:
text/plain:
schema:
type: string
example: "Read 1048576 bytes in 5 ms\n"
/io/write:
get:
summary: Simulate file write operation
parameters:
- name: size
in: query
schema:
type: string
description: Size of file to write (e.g., "1MB")
default: "1MB"
responses:
'200':
description: File write operation results
content:
text/plain:
schema:
type: string
example: "Wrote 1048576 bytes in 10 ms\n"
/io/network:
get:
summary: Simulate network request
parameters:
- name: url
in: query
schema:
type: string
description: URL to fetch
default: "https://test.k6.io"
responses:
'200':
description: Network request results
content:
text/plain:
schema:
type: string
example: "Fetched https://test.k6.io in 200 ms\n"
/problems/slow-image:
get:
summary: Generate a slow-loading image
parameters:
- name: complexity
in: query
schema:
type: integer
description: Complexity of the image generation (affects processing time)
default: 1
- name: name
in: query
schema:
type: string
description: Name used for generating the image
default: "default"
responses:
'200':
description: Generated image
content:
image/jpeg:
schema:
type: string
format: binary
headers:
X-Processing-Time:
schema:
type: number
description: Processing time in milliseconds
X-Timestamp:
schema:
type: string
description: Timestamp of the request
/problems/slow-image-gallery:
get:
summary: Display a gallery of slow-loading images
responses:
'200':
description: HTML page with slow-loading image gallery
content:
text/html:
schema:
type: string
/problems/limited-connections/pool/{ms}:
get:
summary: Simulate limited connections with a connection pool
parameters:
- name: ms
in: path
required: true
schema:
type: integer
description: Delay in milliseconds
responses:
'200':
description: Delayed response from connection pool
content:
text/plain:
schema:
type: string
example: "Response delayed by 1000 ms\n"