質問編集履歴

3

タイトルの改善

2021/11/25 01:59

投稿

MAOAU
MAOAU

スコア11

test CHANGED
@@ -1 +1 @@
1
- Swagger JSONからexample valueのJSONデータを生成したい
1
+ Swagger JSON(JSON Schema)からexample valueのJSONデータ(テスト用JSONパラメータ)を生成したい
test CHANGED
File without changes

2

追加で判明した情報を記入したかった

2021/11/25 01:59

投稿

MAOAU
MAOAU

スコア11

test CHANGED
@@ -1 +1 @@
1
- Swagger JSONからexample valueのJSONを生成したい
1
+ Swagger JSONからexample valueのJSONデータを生成したい
test CHANGED
@@ -21,3 +21,127 @@
21
21
  Ruby 2.6
22
22
 
23
23
  Rails 6
24
+
25
+
26
+
27
+
28
+
29
+ ## 追記
30
+
31
+
32
+
33
+ JSON::Fuzz::Generator というgemを見つけてこれだ!と思ったのですが、思うように変換できず・・・
34
+
35
+
36
+
37
+ 例)
38
+
39
+ swaggerからリクエスト定義部分を抽出
40
+
41
+
42
+
43
+ ```json
44
+
45
+ {
46
+
47
+ "additionalProperties": false,
48
+
49
+ "required": [
50
+
51
+ "hoge_tables"
52
+
53
+ ],
54
+
55
+ "properties": {
56
+
57
+ "hoge_tables": {
58
+
59
+ "type": "array",
60
+
61
+ "items": {
62
+
63
+ "type": "object",
64
+
65
+ "additionalProperties": false,
66
+
67
+ "required": [
68
+
69
+ "hoge_id",
70
+
71
+ "hoge_num"
72
+
73
+ ],
74
+
75
+ "properties": {
76
+
77
+ "hoge_id": {
78
+
79
+ "type": "integer",
80
+
81
+ "format": "int64",
82
+
83
+ "example": 1
84
+
85
+ },
86
+
87
+ "hoge_num": {
88
+
89
+ "type": "number",
90
+
91
+ "format": "float",
92
+
93
+ "minimum": 0.0001
94
+
95
+ }
96
+
97
+ }
98
+
99
+ }
100
+
101
+ }
102
+
103
+ }
104
+
105
+ }
106
+
107
+ ```
108
+
109
+
110
+
111
+ こちらをJSON::Fuzz::Generator.default_paramで変換すると
112
+
113
+
114
+
115
+ ```json
116
+
117
+ {"hoge_tables"=>{"hoge_id"=>86, "hoge_num"=>0.0001}}
118
+
119
+ ```
120
+
121
+
122
+
123
+ とarrayが無視されて出力されますが、Swagger UIでは
124
+
125
+ ```json
126
+
127
+ {
128
+
129
+ "hoge_tables": [
130
+
131
+ {
132
+
133
+ "hoge_id": 1,
134
+
135
+ "hoge_num": 0
136
+
137
+ }
138
+
139
+ ]
140
+
141
+ }
142
+
143
+ ```
144
+
145
+
146
+
147
+ とhoge_tablesがスキーマの指定通り配列で出力されており、こちらのSwagger UIの結果の形で出力されて欲しいのですが・・・

1

タイトルの改善

2021/11/19 08:03

投稿

MAOAU
MAOAU

スコア11

test CHANGED
@@ -1 +1 @@
1
- Swagger JSONからexample valueのJSONを取り出したい
1
+ Swagger JSONからexample valueのJSONを生成したい
test CHANGED
File without changes