hammer_cli 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +13 -5
  3. data/config/cli_config.template.yml +12 -3
  4. data/doc/creating_apipie_commands.md +53 -56
  5. data/doc/creating_commands.md +25 -19
  6. data/doc/developer_docs.md +3 -2
  7. data/doc/development_tips.md +3 -3
  8. data/doc/i18n.md +3 -3
  9. data/doc/installation.md +24 -207
  10. data/doc/installation_deb.md +48 -0
  11. data/doc/installation_gem.md +30 -0
  12. data/doc/installation_rpm.md +53 -0
  13. data/doc/installation_source.md +31 -0
  14. data/doc/option_builders.md +77 -0
  15. data/doc/option_normalizers.md +5 -5
  16. data/doc/writing_a_plugin.md +9 -9
  17. data/lib/hammer_cli.rb +1 -0
  18. data/lib/hammer_cli/abstract.rb +21 -8
  19. data/lib/hammer_cli/apipie.rb +1 -2
  20. data/lib/hammer_cli/apipie/command.rb +37 -64
  21. data/lib/hammer_cli/apipie/option_builder.rb +69 -0
  22. data/lib/hammer_cli/apipie/options.rb +1 -61
  23. data/lib/hammer_cli/clamp.rb +15 -0
  24. data/lib/hammer_cli/i18n.rb +14 -2
  25. data/lib/hammer_cli/logger.rb +1 -1
  26. data/lib/hammer_cli/option_builder.rb +43 -0
  27. data/lib/hammer_cli/options/option_definition.rb +6 -0
  28. data/lib/hammer_cli/output/adapter/abstract.rb +2 -2
  29. data/lib/hammer_cli/output/adapter/base.rb +6 -3
  30. data/lib/hammer_cli/output/adapter/table.rb +19 -2
  31. data/lib/hammer_cli/output/definition.rb +4 -0
  32. data/lib/hammer_cli/output/fields.rb +9 -0
  33. data/lib/hammer_cli/output/formatters.rb +20 -8
  34. data/lib/hammer_cli/utils.rb +1 -1
  35. data/lib/hammer_cli/version.rb +1 -1
  36. data/locale/hammer-cli.pot +103 -79
  37. data/test/unit/abstract_test.rb +62 -0
  38. data/test/unit/apipie/command_test.rb +12 -197
  39. data/test/unit/apipie/option_builder_test.rb +110 -0
  40. data/test/unit/i18n_test.rb +50 -0
  41. data/test/unit/option_builder_test.rb +33 -0
  42. data/test/unit/output/adapter/abstract_test.rb +26 -3
  43. data/test/unit/output/adapter/base_test.rb +20 -3
  44. data/test/unit/output/adapter/csv_test.rb +2 -2
  45. data/test/unit/output/adapter/table_test.rb +24 -1
  46. data/test/unit/output/definition_test.rb +13 -0
  47. data/test/unit/output/formatters_test.rb +17 -1
  48. data/test/unit/utils_test.rb +1 -1
  49. metadata +101 -88
  50. data/lib/hammer_cli/apipie/read_command.rb +0 -41
  51. data/lib/hammer_cli/apipie/write_command.rb +0 -49
  52. data/test/unit/apipie/read_command_test.rb +0 -37
  53. data/test/unit/apipie/write_command_test.rb +0 -41
@@ -0,0 +1,33 @@
1
+ require File.join(File.dirname(__FILE__), 'test_helper')
2
+ require 'tempfile'
3
+
4
+
5
+ describe HammerCLI::OptionBuilderContainer do
6
+
7
+ let(:options) {
8
+ [
9
+ HammerCLI::Options::OptionDefinition.new(["--test"], "TEST", "test"),
10
+ HammerCLI::Options::OptionDefinition.new(["--test2"], "TEST2", "test2")
11
+ ]
12
+ }
13
+ let(:container) { HammerCLI::OptionBuilderContainer.new }
14
+
15
+ it "collects options from contained builders" do
16
+ builder = Object.new
17
+ builder.stubs(:build).returns(options)
18
+
19
+ container.builders = [builder, builder]
20
+ container.build.must_equal options+options
21
+ end
22
+
23
+ it "passes build parameters from contained builders" do
24
+ params = {:param => :value}
25
+ builder = Object.new
26
+ builder.expects(:build).with(params).returns(options)
27
+
28
+ container.builders = [builder]
29
+ container.build(params)
30
+ end
31
+
32
+ end
33
+
@@ -11,7 +11,7 @@ describe HammerCLI::Output::Adapter::Abstract do
11
11
  end
12
12
 
13
13
  class UnknownTestFormatter < HammerCLI::Output::Formatters::FieldFormatter
14
- def format(data)
14
+ def format(data, field_params={})
15
15
  data+'.'
16
16
  end
17
17
 
@@ -52,7 +52,7 @@ describe HammerCLI::Output::Adapter::Abstract do
52
52
  end
53
53
 
54
54
  it "should print formatted message with parameters" do
55
- proc { adapter.print_message("MESSAGE %{a}s, %{b}s", :a => 'A', :b => 'B') }.must_output(/.*MESSAGE A, B.*/, "")
55
+ proc { adapter.print_message("MESSAGE %{a}, %{b}", :a => 'A', :b => 'B') }.must_output(/.*MESSAGE A, B.*/, "")
56
56
  end
57
57
 
58
58
  end
@@ -87,10 +87,33 @@ describe HammerCLI::Output::Adapter::Abstract do
87
87
 
88
88
  it "should print formatted message with parameters" do
89
89
  proc {
90
- adapter.print_error("MESSAGE %{a}s, %{b}s", ["error %{a}s", "error %{b}s"], :a => 'A', :b => 'B')
90
+ adapter.print_error("MESSAGE %{a}, %{b}", ["error %{a}", "error %{b}"], :a => 'A', :b => 'B')
91
91
  }.must_output("", expected_formatted_output)
92
92
  end
93
93
 
94
94
  end
95
95
 
96
+ context "test data_for_field" do
97
+ let(:field) { Fields::Field.new(:path => [:field1]) }
98
+
99
+ it "returns nil if the record is nil" do
100
+ record = nil
101
+ assert_nil adapter.send(:data_for_field, field, record)
102
+ end
103
+
104
+ it "returns nil if the record is not a hash" do
105
+ record = []
106
+ assert_nil adapter.send(:data_for_field, field, record)
107
+ end
108
+
109
+ it "returns nil, if the data does not exist for the field" do
110
+ record = { :field2 => :value2 }
111
+ assert_nil adapter.send(:data_for_field, field, record)
112
+ end
113
+
114
+ it "returns the value, if data exists for the field" do
115
+ record = { :field1 => :value1, :field2 => :value2 }
116
+ assert_equal adapter.send(:data_for_field, field, record), :value1
117
+ end
118
+ end
96
119
  end
@@ -14,7 +14,8 @@ describe HammerCLI::Output::Adapter::Base do
14
14
  let(:address_city) { Fields::Field.new(:path => [:address, :city], :label => "City") }
15
15
  let(:city) { Fields::Field.new(:path => [:city], :label => "City") }
16
16
  let(:label_address) { Fields::Label.new(:path => [:address], :label => "Address") }
17
- let(:contacts) { Fields::Collection.new(:path => [:contacts], :label => "Contacts") }
17
+ let(:num_contacts) { Fields::Collection.new(:path => [:contacts], :label => "Contacts") }
18
+ let(:contacts) { Fields::Collection.new(:path => [:contacts], :label => "Contacts", :numbered => false) }
18
19
  let(:desc) { Fields::Field.new(:path => [:desc], :label => "Description") }
19
20
  let(:contact) { Fields::Field.new(:path => [:contact], :label => "Contact") }
20
21
  let(:params) { Fields::KeyValueList.new(:path => [:params], :label => "Parameters") }
@@ -108,8 +109,8 @@ describe HammerCLI::Output::Adapter::Base do
108
109
 
109
110
 
110
111
  it "should print collection" do
111
- contacts.output_definition.append [desc, contact]
112
- fields = [contacts]
112
+ num_contacts.output_definition.append [desc, contact]
113
+ fields = [num_contacts]
113
114
 
114
115
  expected_output = [
115
116
  "Contacts: ",
@@ -123,6 +124,22 @@ describe HammerCLI::Output::Adapter::Base do
123
124
  proc { adapter.print_collection(fields, data) }.must_output(expected_output)
124
125
  end
125
126
 
127
+ it "should print unnumbered collection" do
128
+ contacts.output_definition.append [desc, contact]
129
+ fields = [contacts]
130
+
131
+ expected_output = [
132
+ "Contacts: ",
133
+ " Description: personal email",
134
+ " Contact: john.doe@doughnut.com",
135
+ " Description: telephone",
136
+ " Contact: 123456789",
137
+ "\n"
138
+ ].join("\n")
139
+
140
+ proc { adapter.print_collection(fields, data) }.must_output(expected_output)
141
+ end
142
+
126
143
  it "hides ids by default" do
127
144
  fields = [id, name]
128
145
  expected_output = [
@@ -47,7 +47,7 @@ describe HammerCLI::Output::Adapter::CSValues do
47
47
  context "formatters" do
48
48
  it "should apply formatters" do
49
49
  class DotFormatter < HammerCLI::Output::Formatters::FieldFormatter
50
- def format(data)
50
+ def format(data, field_params={})
51
51
  '-DOT-'
52
52
  end
53
53
  end
@@ -59,7 +59,7 @@ describe HammerCLI::Output::Adapter::CSValues do
59
59
 
60
60
  it "should not replace nil with empty string before it applies formatters" do
61
61
  class NilFormatter < HammerCLI::Output::Formatters::FieldFormatter
62
- def format(data)
62
+ def format(data, field_params={})
63
63
  'NIL' if data.nil?
64
64
  end
65
65
  end
@@ -9,6 +9,7 @@ describe HammerCLI::Output::Adapter::Table do
9
9
  let(:field_name) { Fields::Field.new(:path => [:fullname], :label => "Name") }
10
10
  let(:field_firstname) { Fields::Field.new(:path => [:firstname], :label => "Firstname") }
11
11
  let(:field_lastname) { Fields::Field.new(:path => [:lastname], :label => "Lastname") }
12
+ let(:field_long) { Fields::Field.new(:path => [:long], :label => "Full") }
12
13
 
13
14
  let(:fields) {
14
15
  [field_name]
@@ -119,7 +120,7 @@ describe HammerCLI::Output::Adapter::Table do
119
120
  context "formatters" do
120
121
  it "should apply formatters" do
121
122
  class DotFormatter < HammerCLI::Output::Formatters::FieldFormatter
122
- def format(data)
123
+ def format(data, field_params={})
123
124
  '-DOT-'
124
125
  end
125
126
  end
@@ -128,6 +129,28 @@ describe HammerCLI::Output::Adapter::Table do
128
129
  out, err = capture_io { adapter.print_collection(fields, data) }
129
130
  out.must_match(/.*-DOT-.*/)
130
131
  end
132
+
133
+ it "should not break formatting" do
134
+ class SliceFormatter < HammerCLI::Output::Formatters::FieldFormatter
135
+ def format(data, field_params={})
136
+ data[0..5]
137
+ end
138
+ end
139
+
140
+ adapter = HammerCLI::Output::Adapter::Table.new({}, { :Field => [ SliceFormatter.new ]})
141
+
142
+ expected_output = [
143
+ "------",
144
+ "FULL ",
145
+ "------",
146
+ "SomeVe",
147
+ "------",
148
+ ""
149
+ ].join("\n")
150
+
151
+ proc { adapter.print_collection([field_long], data) }.must_output(expected_output)
152
+ end
153
+
131
154
  end
132
155
 
133
156
  context "sort_columns" do
@@ -8,6 +8,19 @@ describe HammerCLI::Output::Definition do
8
8
  let(:last_field) { definition.fields[-1] }
9
9
  let(:field_count) { definition.fields.length }
10
10
 
11
+ describe "empty?" do
12
+
13
+ it "returns true for empty definition" do
14
+ definition.empty?.must_equal true
15
+ end
16
+
17
+ it "returns false for definition with fields" do
18
+ definition.fields << Fields::Field.new
19
+ definition.empty?.must_equal false
20
+ end
21
+
22
+ end
23
+
11
24
  it "should be able to add field" do
12
25
  definition.fields << Fields::Field.new
13
26
  field_count.must_equal 1
@@ -34,7 +34,7 @@ end
34
34
  describe HammerCLI::Output::Formatters::FormatterContainer do
35
35
 
36
36
  class TestFormatter
37
- def format(data)
37
+ def format(data, field_params={})
38
38
  data+'.'
39
39
  end
40
40
  end
@@ -138,3 +138,19 @@ describe HammerCLI::Output::Formatters::LongTextFormatter do
138
138
  end
139
139
 
140
140
  end
141
+
142
+ describe HammerCLI::Output::Formatters::BooleanFormatter do
143
+
144
+ it "says yes for true like objects" do
145
+ formatter = HammerCLI::Output::Formatters::BooleanFormatter.new
146
+ formatter.format(true).must_equal "yes"
147
+ formatter.format("yes").must_equal "yes"
148
+ end
149
+
150
+ it "says no for false and nil and empty string" do
151
+ formatter = HammerCLI::Output::Formatters::BooleanFormatter.new
152
+ formatter.format(nil).must_equal "no"
153
+ formatter.format(false).must_equal "no"
154
+ formatter.format("").must_equal "no"
155
+ end
156
+ end
@@ -6,7 +6,7 @@ describe String do
6
6
  context "formatting" do
7
7
 
8
8
  let(:str) { "AA%<a>s BB%<b>s" }
9
- let(:curly_str) { "AA%{a}s BB%{b}s" }
9
+ let(:curly_str) { "AA%{a} BB%{b}" }
10
10
  let(:pos_str) { "AA%s BB%s" }
11
11
 
12
12
  it "should not fail without expected parameters" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hammer_cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Bačovský
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-03-26 00:00:00.000000000 Z
12
+ date: 2014-05-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: clamp
@@ -171,14 +171,14 @@ dependencies:
171
171
  requirements:
172
172
  - - '>='
173
173
  - !ruby/object:Gem::Version
174
- version: 0.0.6
174
+ version: 0.0.8
175
175
  type: :runtime
176
176
  prerelease: false
177
177
  version_requirements: !ruby/object:Gem::Requirement
178
178
  requirements:
179
179
  - - '>='
180
180
  - !ruby/object:Gem::Version
181
- version: 0.0.6
181
+ version: 0.0.8
182
182
  description: |
183
183
  Hammer cli provides universal extendable CLI interface for ruby apps
184
184
  email: mbacovsk@redhat.com
@@ -186,107 +186,119 @@ executables:
186
186
  - hammer
187
187
  extensions: []
188
188
  extra_rdoc_files:
189
- - doc/creating_apipie_commands.md
189
+ - doc/option_builders.md
190
+ - doc/design.uml
191
+ - doc/writing_a_plugin.md
192
+ - doc/installation_gem.md
193
+ - doc/option_normalizers.md
190
194
  - doc/development_tips.md
195
+ - doc/i18n.md
196
+ - doc/creating_apipie_commands.md
191
197
  - doc/developer_docs.md
198
+ - doc/design.png
192
199
  - doc/creating_commands.md
193
- - doc/option_normalizers.md
200
+ - doc/installation_source.md
201
+ - doc/installation_rpm.md
194
202
  - doc/installation.md
195
- - doc/design.png
196
- - doc/design.uml
197
- - doc/writing_a_plugin.md
198
- - doc/i18n.md
199
- - config/cli_config.template.yml
203
+ - doc/installation_deb.md
200
204
  - config/cli.modules.d/module_config_template.yml
205
+ - config/cli_config.template.yml
201
206
  - README.md
202
207
  files:
208
+ - lib/hammer_cli.rb
209
+ - lib/hammer_cli/clamp.rb
210
+ - lib/hammer_cli/options/option_definition.rb
211
+ - lib/hammer_cli/options/normalizers.rb
212
+ - lib/hammer_cli/logger.rb
213
+ - lib/hammer_cli/messages.rb
214
+ - lib/hammer_cli/main.rb
203
215
  - lib/hammer_cli/connection.rb
216
+ - lib/hammer_cli/apipie.rb
217
+ - lib/hammer_cli/settings.rb
218
+ - lib/hammer_cli/completer.rb
219
+ - lib/hammer_cli/modules.rb
220
+ - lib/hammer_cli/exception_handler.rb
204
221
  - lib/hammer_cli/logger_watch.rb
205
222
  - lib/hammer_cli/i18n.rb
206
- - lib/hammer_cli/apipie/write_command.rb
223
+ - lib/hammer_cli/apipie/command.rb
207
224
  - lib/hammer_cli/apipie/resource.rb
208
- - lib/hammer_cli/apipie/read_command.rb
225
+ - lib/hammer_cli/apipie/option_builder.rb
209
226
  - lib/hammer_cli/apipie/options.rb
210
- - lib/hammer_cli/apipie/command.rb
211
- - lib/hammer_cli/logger.rb
212
- - lib/hammer_cli/messages.rb
213
- - lib/hammer_cli/exceptions.rb
214
- - lib/hammer_cli/abstract.rb
215
- - lib/hammer_cli/apipie.rb
216
227
  - lib/hammer_cli/version.rb
217
- - lib/hammer_cli/exception_handler.rb
218
- - lib/hammer_cli/output.rb
219
- - lib/hammer_cli/shell.rb
220
- - lib/hammer_cli/modules.rb
221
228
  - lib/hammer_cli/utils.rb
222
- - lib/hammer_cli/output/adapter/table.rb
229
+ - lib/hammer_cli/exceptions.rb
230
+ - lib/hammer_cli/validator.rb
231
+ - lib/hammer_cli/output/adapter.rb
232
+ - lib/hammer_cli/output/dsl.rb
233
+ - lib/hammer_cli/output/record_collection.rb
234
+ - lib/hammer_cli/output/adapter/csv.rb
223
235
  - lib/hammer_cli/output/adapter/base.rb
236
+ - lib/hammer_cli/output/adapter/table.rb
224
237
  - lib/hammer_cli/output/adapter/abstract.rb
225
238
  - lib/hammer_cli/output/adapter/silent.rb
226
- - lib/hammer_cli/output/adapter/csv.rb
227
- - lib/hammer_cli/output/definition.rb
228
- - lib/hammer_cli/output/adapter.rb
229
- - lib/hammer_cli/output/dsl.rb
230
239
  - lib/hammer_cli/output/formatters.rb
231
- - lib/hammer_cli/output/output.rb
232
240
  - lib/hammer_cli/output/fields.rb
233
- - lib/hammer_cli/output/record_collection.rb
241
+ - lib/hammer_cli/output/output.rb
242
+ - lib/hammer_cli/output/definition.rb
234
243
  - lib/hammer_cli/output/field_filter.rb
235
- - lib/hammer_cli/options/option_definition.rb
236
- - lib/hammer_cli/options/normalizers.rb
237
- - lib/hammer_cli/completer.rb
238
- - lib/hammer_cli/settings.rb
239
- - lib/hammer_cli/validator.rb
244
+ - lib/hammer_cli/option_builder.rb
245
+ - lib/hammer_cli/output.rb
240
246
  - lib/hammer_cli/exit_codes.rb
241
- - lib/hammer_cli/main.rb
242
- - lib/hammer_cli.rb
243
- - test/unit/fixtures/apipie/documented.json
244
- - test/unit/fixtures/apipie/architectures.json
247
+ - lib/hammer_cli/shell.rb
248
+ - lib/hammer_cli/abstract.rb
249
+ - test/unit/abstract_test.rb
250
+ - test/unit/validator_test.rb
251
+ - test/unit/main_test.rb
252
+ - test/unit/options/field_filter_test.rb
253
+ - test/unit/options/option_definition_test.rb
254
+ - test/unit/options/normalizers_test.rb
255
+ - test/unit/settings_test.rb
256
+ - test/unit/exception_handler_test.rb
257
+ - test/unit/utils_test.rb
245
258
  - test/unit/fixtures/json_input/valid.json
246
259
  - test/unit/fixtures/json_input/invalid.json
260
+ - test/unit/fixtures/apipie/documented.json
261
+ - test/unit/fixtures/apipie/architectures.json
247
262
  - test/unit/apipie/command_test.rb
248
- - test/unit/apipie/write_command_test.rb
249
- - test/unit/apipie/read_command_test.rb
250
- - test/unit/validator_test.rb
251
- - test/unit/history_test.rb
252
- - test/unit/completer_test.rb
253
- - test/unit/utils_test.rb
254
- - test/unit/exception_handler_test.rb
255
- - test/unit/main_test.rb
256
- - test/unit/test_helper.rb
257
- - test/unit/modules_test.rb
258
- - test/unit/abstract_test.rb
259
- - test/unit/output/adapter/base_test.rb
263
+ - test/unit/apipie/option_builder_test.rb
264
+ - test/unit/i18n_test.rb
265
+ - test/unit/option_builder_test.rb
266
+ - test/unit/output/fields_test.rb
260
267
  - test/unit/output/adapter/csv_test.rb
261
268
  - test/unit/output/adapter/abstract_test.rb
269
+ - test/unit/output/adapter/base_test.rb
262
270
  - test/unit/output/adapter/table_test.rb
263
- - test/unit/output/formatters_test.rb
264
271
  - test/unit/output/dsl_test.rb
265
- - test/unit/output/definition_test.rb
266
272
  - test/unit/output/output_test.rb
267
- - test/unit/output/fields_test.rb
273
+ - test/unit/output/formatters_test.rb
268
274
  - test/unit/output/record_collection_test.rb
269
- - test/unit/options/option_definition_test.rb
270
- - test/unit/options/normalizers_test.rb
271
- - test/unit/options/field_filter_test.rb
275
+ - test/unit/output/definition_test.rb
276
+ - test/unit/completer_test.rb
277
+ - test/unit/history_test.rb
278
+ - test/unit/modules_test.rb
279
+ - test/unit/test_helper.rb
272
280
  - test/unit/connection_test.rb
273
- - test/unit/settings_test.rb
274
281
  - bin/hammer
275
- - doc/creating_apipie_commands.md
282
+ - doc/option_builders.md
283
+ - doc/design.uml
284
+ - doc/writing_a_plugin.md
285
+ - doc/installation_gem.md
286
+ - doc/option_normalizers.md
276
287
  - doc/development_tips.md
288
+ - doc/i18n.md
289
+ - doc/creating_apipie_commands.md
277
290
  - doc/developer_docs.md
291
+ - doc/design.png
278
292
  - doc/creating_commands.md
279
- - doc/option_normalizers.md
293
+ - doc/installation_source.md
294
+ - doc/installation_rpm.md
280
295
  - doc/installation.md
281
- - doc/design.png
282
- - doc/design.uml
283
- - doc/writing_a_plugin.md
284
- - doc/i18n.md
285
- - config/cli_config.template.yml
296
+ - doc/installation_deb.md
286
297
  - config/cli.modules.d/module_config_template.yml
287
- - locale/zanata.xml
298
+ - config/cli_config.template.yml
288
299
  - locale/hammer-cli.pot
289
300
  - locale/Makefile
301
+ - locale/zanata.xml
290
302
  - LICENSE
291
303
  - README.md
292
304
  - hammer_cli_complete
@@ -310,40 +322,41 @@ required_rubygems_version: !ruby/object:Gem::Requirement
310
322
  version: '0'
311
323
  requirements: []
312
324
  rubyforge_project:
313
- rubygems_version: 2.0.14
325
+ rubygems_version: 2.1.11
314
326
  signing_key:
315
327
  specification_version: 4
316
328
  summary: Universal command-line interface
317
329
  test_files:
318
- - test/unit/fixtures/apipie/documented.json
319
- - test/unit/fixtures/apipie/architectures.json
330
+ - test/unit/abstract_test.rb
331
+ - test/unit/validator_test.rb
332
+ - test/unit/main_test.rb
333
+ - test/unit/options/field_filter_test.rb
334
+ - test/unit/options/option_definition_test.rb
335
+ - test/unit/options/normalizers_test.rb
336
+ - test/unit/settings_test.rb
337
+ - test/unit/exception_handler_test.rb
338
+ - test/unit/utils_test.rb
320
339
  - test/unit/fixtures/json_input/valid.json
321
340
  - test/unit/fixtures/json_input/invalid.json
341
+ - test/unit/fixtures/apipie/documented.json
342
+ - test/unit/fixtures/apipie/architectures.json
322
343
  - test/unit/apipie/command_test.rb
323
- - test/unit/apipie/write_command_test.rb
324
- - test/unit/apipie/read_command_test.rb
325
- - test/unit/validator_test.rb
326
- - test/unit/history_test.rb
327
- - test/unit/completer_test.rb
328
- - test/unit/utils_test.rb
329
- - test/unit/exception_handler_test.rb
330
- - test/unit/main_test.rb
331
- - test/unit/test_helper.rb
332
- - test/unit/modules_test.rb
333
- - test/unit/abstract_test.rb
334
- - test/unit/output/adapter/base_test.rb
344
+ - test/unit/apipie/option_builder_test.rb
345
+ - test/unit/i18n_test.rb
346
+ - test/unit/option_builder_test.rb
347
+ - test/unit/output/fields_test.rb
335
348
  - test/unit/output/adapter/csv_test.rb
336
349
  - test/unit/output/adapter/abstract_test.rb
350
+ - test/unit/output/adapter/base_test.rb
337
351
  - test/unit/output/adapter/table_test.rb
338
- - test/unit/output/formatters_test.rb
339
352
  - test/unit/output/dsl_test.rb
340
- - test/unit/output/definition_test.rb
341
353
  - test/unit/output/output_test.rb
342
- - test/unit/output/fields_test.rb
354
+ - test/unit/output/formatters_test.rb
343
355
  - test/unit/output/record_collection_test.rb
344
- - test/unit/options/option_definition_test.rb
345
- - test/unit/options/normalizers_test.rb
346
- - test/unit/options/field_filter_test.rb
356
+ - test/unit/output/definition_test.rb
357
+ - test/unit/completer_test.rb
358
+ - test/unit/history_test.rb
359
+ - test/unit/modules_test.rb
360
+ - test/unit/test_helper.rb
347
361
  - test/unit/connection_test.rb
348
- - test/unit/settings_test.rb
349
362
  has_rdoc: