lhj-tools 0.1.79 → 0.1.81
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/lhj/command/yapi.rb +55 -9
- data/lib/lhj/tools/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3b9f5da62956cd6f5be84a8db48b90307c8edde017d5bd84729e6e2d93e2b7c4
|
4
|
+
data.tar.gz: bfd72c52e5c8c10412ed1f99e9d14dce9496d00ff78d20ff89aedbf1b847a782
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bc6a0baac57148b1c5feb71940f460873f3d9bae57683ce2f4a3b74fef03f0542b27047fc353ec44874c2904056499b041091a1599332541625ea6d6534489ec
|
7
|
+
data.tar.gz: 5a1723ddeacce9428df22bf2ed4bf583e3f1eaa05fc4a13accb180db381d1a7ab07735e7b6074892f9df2f8f2c84e19b20be7db68ebb565275ab8f6f468d71ca
|
data/lib/lhj/command/yapi.rb
CHANGED
@@ -64,13 +64,15 @@ module Lhj
|
|
64
64
|
project_id = res_body['data']['project_id']
|
65
65
|
project_info = get_project_info(project_id)
|
66
66
|
# 1.print request result
|
67
|
-
print_res_body_model(res_body)
|
67
|
+
res_models = print_res_body_model(res_body)
|
68
68
|
# 2.print request json body
|
69
|
-
print_req_body_model(res_body) if res_body['data']['req_body_is_json_schema']
|
69
|
+
req_models = print_req_body_model(res_body) if res_body['data']['req_body_is_json_schema']
|
70
70
|
# 3.print request param
|
71
71
|
print_req_query(res_body['data']) unless res_body['data']['req_body_is_json_schema']
|
72
72
|
# 4.print request method
|
73
73
|
service_code = print_http_method(res_body['data'], project_info)
|
74
|
+
# print request mock data
|
75
|
+
print_mock_request_data(req_models) unless req_models.empty?
|
74
76
|
# 5.save to file
|
75
77
|
file_map = save_to_file(service_code) if @save
|
76
78
|
# 6.push to git
|
@@ -97,6 +99,12 @@ module Lhj
|
|
97
99
|
@m_file_array << str
|
98
100
|
end
|
99
101
|
|
102
|
+
def puts_mock(str)
|
103
|
+
puts str.green
|
104
|
+
@req_mock_array ||= []
|
105
|
+
@req_mock_array << str
|
106
|
+
end
|
107
|
+
|
100
108
|
def sub_folder_name
|
101
109
|
return @sub_folder_name if @sub_folder_name
|
102
110
|
|
@@ -112,14 +120,19 @@ module Lhj
|
|
112
120
|
h_file = File.join('.', sub_folder_name, "#{file_name}.h")
|
113
121
|
m_file = File.join('.', sub_folder_name, "#{file_name}.m")
|
114
122
|
service_file = File.join('.', sub_folder_name, "#{model_pre}#{name}Service.m")
|
123
|
+
req_mock_file = File.join('.', sub_folder_name, "#{model_pre}#{name}Mock.m")
|
124
|
+
|
115
125
|
File.write(h_file, @h_file_array.join("\n")) if @h_file_array.count.positive?
|
116
126
|
File.write(m_file, @m_file_array.join("\n")) if @m_file_array.count.positive?
|
117
127
|
File.write(service_file, service_code) if service_code
|
128
|
+
File.write(req_mock_file, @req_mock_array.join("\n")) if @req_mock_array.count.positive?
|
129
|
+
|
118
130
|
puts "\n\n生成文件成功!所在路径:\n#{File.expand_path(h_file)} \n#{File.expand_path(m_file)}".green if @save && !@notify
|
119
131
|
{
|
120
132
|
h_file: "#{sub_folder_name}/#{file_name}.h",
|
121
133
|
m_file: "#{sub_folder_name}/#{file_name}.m",
|
122
|
-
s_file: "#{sub_folder_name}/#{model_pre}#{name}Service.m"
|
134
|
+
s_file: "#{sub_folder_name}/#{model_pre}#{name}Service.m",
|
135
|
+
req_mock_file: "#{sub_folder_name}/#{model_pre}#{name}Mock.m"
|
123
136
|
}
|
124
137
|
end
|
125
138
|
|
@@ -237,7 +250,7 @@ module Lhj
|
|
237
250
|
|
238
251
|
puts "\n<===============打印返回数据模型-Begin=====================>\n".green
|
239
252
|
models = []
|
240
|
-
handle_model(res_body) do |model|
|
253
|
+
handle_model(res_body, :res) do |model|
|
241
254
|
models << model
|
242
255
|
end
|
243
256
|
case @language
|
@@ -248,6 +261,7 @@ module Lhj
|
|
248
261
|
print_models_for_java(models)
|
249
262
|
end
|
250
263
|
puts "\n<===============打印返回数据模型-End=====================>\n".green
|
264
|
+
models
|
251
265
|
end
|
252
266
|
|
253
267
|
def print_req_body_model(res_json)
|
@@ -256,7 +270,7 @@ module Lhj
|
|
256
270
|
|
257
271
|
puts "\n<===============打印请求模型-Begin=====================>\n".green
|
258
272
|
models = []
|
259
|
-
handle_model(req_body) do |model|
|
273
|
+
handle_model(req_body, :req) do |model|
|
260
274
|
models << model
|
261
275
|
end
|
262
276
|
case @language
|
@@ -267,6 +281,7 @@ module Lhj
|
|
267
281
|
print_models_for_java(models)
|
268
282
|
end
|
269
283
|
puts "\n<===============打印请求模型-End=====================>\n".green
|
284
|
+
models
|
270
285
|
end
|
271
286
|
|
272
287
|
def fetch_res_boy(res_json)
|
@@ -304,7 +319,7 @@ module Lhj
|
|
304
319
|
end
|
305
320
|
end
|
306
321
|
|
307
|
-
def handle_model(model, &block)
|
322
|
+
def handle_model(model, type, &block)
|
308
323
|
p_type = model['type']
|
309
324
|
p_name = model['name']
|
310
325
|
p_properties = model['properties']
|
@@ -318,12 +333,12 @@ module Lhj
|
|
318
333
|
c_model = { key: k, type: c_type, description: v['description'], default: '' }
|
319
334
|
if v['type'].eql?('object') || v['type'].eql?('array')
|
320
335
|
o = v['items'] || v
|
321
|
-
o['name'] = gen_model_name(k)
|
336
|
+
o['name'] = gen_model_name(k, type)
|
322
337
|
if v['type'].eql?('array') && v['items']['type'].eql?('string')
|
323
338
|
c_model[:type_name] = 'NSString'
|
324
339
|
else
|
325
340
|
c_model[:type_name] = o['name']
|
326
|
-
handle_model(o, &block)
|
341
|
+
handle_model(o, type, &block)
|
327
342
|
end
|
328
343
|
end
|
329
344
|
properties << c_model
|
@@ -333,7 +348,7 @@ module Lhj
|
|
333
348
|
when 'array'
|
334
349
|
t = model['items']
|
335
350
|
t['name'] = p_name
|
336
|
-
handle_model(t, &block)
|
351
|
+
handle_model(t, type, &block)
|
337
352
|
end
|
338
353
|
end
|
339
354
|
|
@@ -506,6 +521,37 @@ module Lhj
|
|
506
521
|
end
|
507
522
|
|
508
523
|
end
|
524
|
+
|
525
|
+
def print_mock_request_data(req_models)
|
526
|
+
puts "\n<===============打印Mock Data-Begin=====================>\n".green
|
527
|
+
req_models.each do |model|
|
528
|
+
model_name = model[:name] || ''
|
529
|
+
model_properties = model[:properties]
|
530
|
+
puts_mock "#{model_name} *mock = [[#{model_name} alloc] init];"
|
531
|
+
model_properties.each do |m|
|
532
|
+
puts_mock "/// #{m[:description]}"
|
533
|
+
type = m[:type]
|
534
|
+
case type
|
535
|
+
when 'integer'
|
536
|
+
puts_mock "mock.#{m[:key]} = 0;"
|
537
|
+
when 'number'
|
538
|
+
puts_mock "mock.#{m[:key]} = 0;"
|
539
|
+
when 'float'
|
540
|
+
puts_mock "mock.#{m[:key]} = 0;"
|
541
|
+
when 'double'
|
542
|
+
puts_mock "mock.#{m[:key]} = 0;"
|
543
|
+
when 'object'
|
544
|
+
puts_mock "mock.#{m[:key]} = @{};"
|
545
|
+
when 'array'
|
546
|
+
puts_mock "mock.#{m[:key]} = @[];"
|
547
|
+
else
|
548
|
+
puts_mock "mock.#{m[:key]} = @\"\";"
|
549
|
+
end
|
550
|
+
end
|
551
|
+
puts_mock "\n\n"
|
552
|
+
end
|
553
|
+
puts "\n<===============打印Mock Data-End=====================>\n".green
|
554
|
+
end
|
509
555
|
end
|
510
556
|
end
|
511
557
|
end
|
data/lib/lhj/tools/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lhj-tools
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.81
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- lihaijian
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-12-
|
11
|
+
date: 2022-12-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: xcodeproj
|