hammer_cli 0.8.0 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. checksums.yaml +4 -4
  2. data/config/cli_config.template.yml +2 -2
  3. data/doc/release_notes.md +15 -0
  4. data/lib/hammer_cli/abstract.rb +22 -31
  5. data/lib/hammer_cli/apipie.rb +1 -0
  6. data/lib/hammer_cli/apipie/api_connection.rb +27 -0
  7. data/lib/hammer_cli/apipie/option_builder.rb +3 -3
  8. data/lib/hammer_cli/apipie/resource.rb +1 -26
  9. data/lib/hammer_cli/connection.rb +12 -11
  10. data/lib/hammer_cli/context.rb +4 -2
  11. data/lib/hammer_cli/exception_handler.rb +1 -1
  12. data/lib/hammer_cli/help/builder.rb +58 -0
  13. data/lib/hammer_cli/help/text_builder.rb +79 -0
  14. data/lib/hammer_cli/logger.rb +24 -21
  15. data/lib/hammer_cli/options/normalizers.rb +13 -2
  16. data/lib/hammer_cli/output/adapter/table.rb +2 -0
  17. data/lib/hammer_cli/output/formatters.rb +1 -1
  18. data/lib/hammer_cli/output/utils.rb +43 -0
  19. data/lib/hammer_cli/table_print/column.rb +19 -0
  20. data/lib/hammer_cli/table_print/formatter.rb +18 -0
  21. data/lib/hammer_cli/utils.rb +5 -1
  22. data/lib/hammer_cli/validator.rb +12 -2
  23. data/lib/hammer_cli/version.rb +1 -1
  24. data/locale/ca/LC_MESSAGES/hammer-cli.mo +0 -0
  25. data/locale/ca/hammer-cli.edit.po +26 -15
  26. data/locale/ca/hammer-cli.po +22 -6
  27. data/locale/de/LC_MESSAGES/hammer-cli.mo +0 -0
  28. data/locale/de/hammer-cli.edit.po +32 -20
  29. data/locale/de/hammer-cli.po +22 -6
  30. data/locale/en/LC_MESSAGES/hammer-cli.mo +0 -0
  31. data/locale/en/hammer-cli.edit.po +47 -29
  32. data/locale/en/hammer-cli.po +21 -5
  33. data/locale/en_GB/LC_MESSAGES/hammer-cli.mo +0 -0
  34. data/locale/en_GB/hammer-cli.edit.po +28 -17
  35. data/locale/en_GB/hammer-cli.po +22 -6
  36. data/locale/es/LC_MESSAGES/hammer-cli.mo +0 -0
  37. data/locale/es/hammer-cli.edit.po +28 -17
  38. data/locale/es/hammer-cli.po +22 -6
  39. data/locale/fr/LC_MESSAGES/hammer-cli.mo +0 -0
  40. data/locale/fr/hammer-cli.edit.po +28 -17
  41. data/locale/fr/hammer-cli.po +22 -6
  42. data/locale/hammer-cli.pot +49 -31
  43. data/locale/it/LC_MESSAGES/hammer-cli.mo +0 -0
  44. data/locale/it/hammer-cli.edit.po +23 -12
  45. data/locale/it/hammer-cli.po +22 -6
  46. data/locale/ja/LC_MESSAGES/hammer-cli.mo +0 -0
  47. data/locale/ja/hammer-cli.edit.po +28 -17
  48. data/locale/ja/hammer-cli.po +22 -6
  49. data/locale/ko/LC_MESSAGES/hammer-cli.mo +0 -0
  50. data/locale/ko/hammer-cli.edit.po +27 -16
  51. data/locale/ko/hammer-cli.po +22 -6
  52. data/locale/pt_BR/LC_MESSAGES/hammer-cli.mo +0 -0
  53. data/locale/pt_BR/hammer-cli.edit.po +30 -19
  54. data/locale/pt_BR/hammer-cli.po +22 -6
  55. data/locale/ru/LC_MESSAGES/hammer-cli.mo +0 -0
  56. data/locale/ru/hammer-cli.edit.po +28 -17
  57. data/locale/ru/hammer-cli.po +22 -6
  58. data/locale/zh_CN/LC_MESSAGES/hammer-cli.mo +0 -0
  59. data/locale/zh_CN/hammer-cli.edit.po +28 -17
  60. data/locale/zh_CN/hammer-cli.po +22 -6
  61. data/locale/zh_TW/LC_MESSAGES/hammer-cli.mo +0 -0
  62. data/locale/zh_TW/hammer-cli.edit.po +27 -16
  63. data/locale/zh_TW/hammer-cli.po +22 -6
  64. data/man/hammer.1.gz +0 -0
  65. data/test/functional/help_test.rb +87 -0
  66. data/test/test_helper.rb +6 -0
  67. data/test/unit/abstract_test.rb +9 -0
  68. data/test/unit/apipie/api_connection_test.rb +38 -0
  69. data/test/unit/apipie/command_test.rb +6 -46
  70. data/test/unit/connection_test.rb +45 -54
  71. data/test/unit/exception_handler_test.rb +1 -1
  72. data/test/unit/fixtures/apipie/documented.json +1 -1
  73. data/test/unit/help/builder_test.rb +57 -0
  74. data/test/unit/help/text_builder_test.rb +140 -0
  75. data/test/unit/logger_test.rb +19 -0
  76. data/test/unit/options/normalizers_test.rb +12 -0
  77. data/test/unit/output/adapter/table_test.rb +101 -13
  78. data/test/unit/output/formatters_test.rb +6 -3
  79. data/test/unit/validator_test.rb +31 -2
  80. metadata +207 -179
@@ -2,6 +2,25 @@ require File.join(File.dirname(__FILE__), 'test_helper')
2
2
  require 'tempfile'
3
3
 
4
4
  describe Logging::LogEvent do
5
+
6
+ describe '#initialize_logger' do
7
+ let (:logger) { Logging::Logger.new(File.open('/dev/null')) }
8
+
9
+ it "prints message to stderr when log dir can't be created" do
10
+ log_dir = "/nonexistant/dir/logs"
11
+ FileUtils.expects(:mkdir_p).raises(Errno::EACCES)
12
+
13
+ HammerCLI::Settings.load({:log_dir => log_dir})
14
+
15
+ out, err = capture_io do
16
+ HammerCLI::Logger::initialize_logger(logger)
17
+ end
18
+
19
+ assert_match "No permissions to create log dir #{log_dir}", err
20
+ assert_match "File #{log_dir}/hammer.log not writeable, won't log anything to the file!", err
21
+ end
22
+ end
23
+
5
24
  context "filtering" do
6
25
  before :each do
7
26
  @log_output = Logging::Appenders['__test__']
@@ -33,6 +33,18 @@ describe HammerCLI::Options::Normalizers do
33
33
  it "should parse a comma separated string" do
34
34
  formatter.format("a,b,c").must_equal ['a', 'b', 'c']
35
35
  end
36
+
37
+ it "should parse a comma separated string with values including comma" do
38
+ formatter.format('a,b,"c,d"').must_equal ['a', 'b', 'c,d']
39
+ end
40
+
41
+ it "should parse a comma separated string containig double quotes" do
42
+ formatter.format('a,b,""c""').must_equal ['a', 'b', '"c"']
43
+ end
44
+
45
+ it "should catch quoting errors" do
46
+ proc { formatter.format('1,"3,4""s') }.must_raise ArgumentError
47
+ end
36
48
  end
37
49
 
38
50
 
@@ -19,12 +19,20 @@ describe HammerCLI::Output::Adapter::Table do
19
19
  [field_name]
20
20
  }
21
21
 
22
+ let(:red) { "\e[1;31m" }
23
+ let(:reset) { "\e[0m" }
24
+
22
25
  let(:record) { {
23
26
  :id => 1,
24
27
  :firstname => "John",
25
28
  :lastname => "Doe",
29
+ :two_column_chars => "文字漢字",
30
+ :czech_chars => "žluťoučký kůň",
31
+ :colorized_name => "#{red}John#{reset}",
26
32
  :fullname => "John Doe",
27
- :long => "SomeVeryLongString"
33
+ :long => "SomeVeryLongString",
34
+ :colorized_long => "#{red}SomeVeryLongString#{reset}",
35
+ :two_column_long => "文字-Kanji-漢字-Hanja-漢字"
28
36
  } }
29
37
  let(:data) { HammerCLI::Output::RecordCollection.new [record] }
30
38
  let(:empty_data) { HammerCLI::Output::RecordCollection.new [] }
@@ -90,6 +98,86 @@ describe HammerCLI::Output::Adapter::Table do
90
98
 
91
99
  context "column width" do
92
100
 
101
+ it "calculates correct width of two-column characters" do
102
+ first_field = Fields::Field.new(:path => [:two_column_chars], :label => "Some characters")
103
+ fields = [first_field, field_lastname]
104
+
105
+ expected_output = [
106
+ "----------------|---------",
107
+ "SOME CHARACTERS | LASTNAME",
108
+ "----------------|---------",
109
+ "文字漢字 | Doe ",
110
+ "----------------|---------",
111
+ ""
112
+ ].join("\n")
113
+
114
+ proc { adapter.print_collection(fields, data) }.must_output(expected_output)
115
+ end
116
+
117
+ it "calculates correct width of czech characters" do
118
+ first_field = Fields::Field.new(:path => [:czech_chars], :label => "Some characters")
119
+ fields = [first_field, field_lastname]
120
+
121
+ expected_output = [
122
+ "----------------|---------",
123
+ "SOME CHARACTERS | LASTNAME",
124
+ "----------------|---------",
125
+ "žluťoučký kůň | Doe ",
126
+ "----------------|---------",
127
+ ""
128
+ ].join("\n")
129
+
130
+ proc { adapter.print_collection(fields, data) }.must_output(expected_output)
131
+ end
132
+
133
+ it "calculates correct width of colorized strings" do
134
+ first_field = Fields::Field.new(:path => [:colorized_name], :label => "Colorized name")
135
+ fields = [first_field, field_lastname]
136
+
137
+ expected_output = [
138
+ "---------------|---------",
139
+ "COLORIZED NAME | LASTNAME",
140
+ "---------------|---------",
141
+ "John | Doe ",
142
+ "---------------|---------",
143
+ ""
144
+ ].join("\n").gsub('John', "#{red}John#{reset}")
145
+
146
+ proc { adapter.print_collection(fields, data) }.must_output(expected_output)
147
+ end
148
+
149
+ it "truncates two-column characters when it exceeds maximum width" do
150
+ first_field = Fields::Field.new(:path => [:two_column_long], :label => "Some characters", :max_width => 16)
151
+ fields = [first_field, field_lastname]
152
+
153
+ expected_output = [
154
+ "-----------------|---------",
155
+ "SOME CHARACTERS | LASTNAME",
156
+ "-----------------|---------",
157
+ "文字-Kanji-漢... | Doe ",
158
+ "-----------------|---------",
159
+ ""
160
+ ].join("\n")
161
+
162
+ proc { adapter.print_collection(fields, data) }.must_output(expected_output)
163
+ end
164
+
165
+ it "truncates colorized string string when it exceeds maximum width" do
166
+ first_field = Fields::Field.new(:path => [:colorized_long], :label => "Long", :max_width => 10)
167
+ fields = [first_field, field_lastname]
168
+
169
+ expected_output = [
170
+ "-----------|---------",
171
+ "LONG | LASTNAME",
172
+ "-----------|---------",
173
+ "SomeVer... | Doe ",
174
+ "-----------|---------",
175
+ ""
176
+ ].join("\n").gsub('SomeVer', "#{red}SomeVer#{reset}")
177
+
178
+ proc { adapter.print_collection(fields, data) }.must_output(expected_output)
179
+ end
180
+
93
181
  it "truncates string when it exceeds maximum width" do
94
182
  first_field = Fields::Field.new(:path => [:long], :label => "Long", :max_width => 10)
95
183
  fields = [first_field, field_lastname]
@@ -122,18 +210,18 @@ describe HammerCLI::Output::Adapter::Table do
122
210
  proc { adapter.print_collection(fields, data) }.must_output(expected_output)
123
211
  end
124
212
 
125
- it "sets width to the longest column name when no data" do
126
- first_field = Fields::Field.new(:path => [:long], :label => "VeryLongTableHeaderName")
127
- fields = [first_field, field_lastname]
128
-
129
- expected_output = [
130
- "------------------------|---------",
131
- "VERYLONGTABLEHEADERNAME | LASTNAME",
132
- "------------------------|---------",
133
- ""
134
- ].join("\n")
135
- proc { adapter.print_collection(fields, empty_data) }.must_output(expected_output)
136
- end
213
+ it "sets width to the longest column name when no data" do
214
+ first_field = Fields::Field.new(:path => [:long], :label => "VeryLongTableHeaderName")
215
+ fields = [first_field, field_lastname]
216
+
217
+ expected_output = [
218
+ "------------------------|---------",
219
+ "VERYLONGTABLEHEADERNAME | LASTNAME",
220
+ "------------------------|---------",
221
+ ""
222
+ ].join("\n")
223
+ proc { adapter.print_collection(fields, empty_data) }.must_output(expected_output)
224
+ end
137
225
 
138
226
  it "sets certain width" do
139
227
  first_field = Fields::Field.new(:path => [:long], :label => "Long", :width => 25)
@@ -158,16 +158,19 @@ end
158
158
 
159
159
  describe HammerCLI::Output::Formatters::BooleanFormatter do
160
160
 
161
+ let(:formatter) { HammerCLI::Output::Formatters::BooleanFormatter.new }
162
+
161
163
  it "says yes for true like objects" do
162
- formatter = HammerCLI::Output::Formatters::BooleanFormatter.new
163
164
  formatter.format(true).must_equal "yes"
164
165
  formatter.format("yes").must_equal "yes"
166
+ formatter.format("no").must_equal "yes"
167
+ formatter.format(1).must_equal "yes"
165
168
  end
166
169
 
167
- it "says no for false and nil and empty string" do
168
- formatter = HammerCLI::Output::Formatters::BooleanFormatter.new
170
+ it "says no for false, nil, empty string and 0" do
169
171
  formatter.format(nil).must_equal "no"
170
172
  formatter.format(false).must_equal "no"
171
173
  formatter.format("").must_equal "no"
174
+ formatter.format(0).must_equal "no"
172
175
  end
173
176
  end
@@ -10,7 +10,10 @@ describe "constraints" do
10
10
 
11
11
  class FakeCmd < Clamp::Command
12
12
  def initialize
13
- super("")
13
+ context = {
14
+ :defaults => HammerCLI::Defaults.new({ :default => { :value => 2 }})
15
+ }
16
+ super("", context)
14
17
  @option_a = 1
15
18
  @option_b = 1
16
19
  @option_c = 1
@@ -23,7 +26,7 @@ describe "constraints" do
23
26
  FakeCmd.new
24
27
  }
25
28
 
26
- let(:option_names) { ["a", "b", "c", "unset-d", "unset-e"] }
29
+ let(:option_names) { ["a", "b", "c", "unset-d", "unset-e", "default"] }
27
30
  let(:options_def) {
28
31
  option_names.collect{ |n| Clamp::Option::Definition.new(["-"+n, "--option-"+n], n.upcase, "Option "+n.upcase) }
29
32
  }
@@ -106,6 +109,11 @@ describe "constraints" do
106
109
  constraint.exist?.must_equal true
107
110
  end
108
111
 
112
+ it "should return true when all the options exist or are set in the defaults" do
113
+ constraint = cls.new(options, [:option_a, :option_b, :option_c, :option_default])
114
+ constraint.exist?.must_equal true
115
+ end
116
+
109
117
  it "should return false when one of the options is missing" do
110
118
  constraint = cls.new(options, [:option_a, :option_b, :option_c, :option_unset_d])
111
119
  constraint.exist?.must_equal false
@@ -123,6 +131,11 @@ describe "constraints" do
123
131
  constraint.exist?.must_equal true
124
132
  end
125
133
 
134
+ it "should return true when the option is set in the defaults" do
135
+ constraint = cls.new(options, :option_default)
136
+ constraint.exist?.must_equal true
137
+ end
138
+
126
139
  it "should return false when the option is missing" do
127
140
  constraint = cls.new(options, :option_unset_d)
128
141
  constraint.exist?.must_equal false
@@ -160,6 +173,12 @@ describe "constraints" do
160
173
  constraint = cls.new(options, :option_a)
161
174
  constraint.value.must_equal 1
162
175
  end
176
+
177
+ it "returns value of the option defined in the defaults" do
178
+ constraint = cls.new(options, :option_default)
179
+ constraint.value.must_equal 2
180
+ end
181
+
163
182
  it "returns nil when the option is missing" do
164
183
  constraint = cls.new(options, :option_unset_d)
165
184
  constraint.value.must_equal nil
@@ -183,6 +202,11 @@ describe "constraints" do
183
202
  constraint.exist?.must_equal true
184
203
  end
185
204
 
205
+ it "should return true when one of the options exist and is set in the defaults" do
206
+ constraint = cls.new(options, [:option_default, :option_unset_d, :option_unset_e])
207
+ constraint.exist?.must_equal true
208
+ end
209
+
186
210
  it "should return false when all the options are missing" do
187
211
  constraint = cls.new(options, [:option_unset_d, :option_unset_e])
188
212
  constraint.exist?.must_equal false
@@ -206,6 +230,11 @@ describe "constraints" do
206
230
  constraint.exist?.must_equal true
207
231
  end
208
232
 
233
+ it "should return true when one of the options exist and is set in the defaults" do
234
+ constraint = cls.new(options, [:option_default, :option_unset_d, :option_unset_e])
235
+ constraint.exist?.must_equal true
236
+ end
237
+
209
238
  it "should return false when the option isn't present" do
210
239
  constraint = cls.new(options, [:option_unset_d, :option_unset_e])
211
240
  constraint.exist?.must_equal false
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.8.0
4
+ version: 0.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Bačovský
@@ -9,24 +9,38 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-09-01 00:00:00.000000000 Z
12
+ date: 2016-12-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: clamp
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - "~>"
19
+ - !ruby/object:Gem::Version
20
+ version: '1.0'
21
+ type: :runtime
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - "~>"
26
+ - !ruby/object:Gem::Version
27
+ version: '1.0'
28
+ - !ruby/object:Gem::Dependency
29
+ name: logging
16
30
  requirement: !ruby/object:Gem::Requirement
17
31
  requirements:
18
32
  - - ">="
19
33
  - !ruby/object:Gem::Version
20
- version: 1.0.0
34
+ version: '0'
21
35
  type: :runtime
22
36
  prerelease: false
23
37
  version_requirements: !ruby/object:Gem::Requirement
24
38
  requirements:
25
39
  - - ">="
26
40
  - !ruby/object:Gem::Version
27
- version: 1.0.0
41
+ version: '0'
28
42
  - !ruby/object:Gem::Dependency
29
- name: logging
43
+ name: unicode-display_width
30
44
  requirement: !ruby/object:Gem::Requirement
31
45
  requirements:
32
46
  - - ">="
@@ -123,29 +137,30 @@ dependencies:
123
137
  - - "~>"
124
138
  - !ruby/object:Gem::Version
125
139
  version: 0.0.14
126
- description: |
127
- Hammer cli provides universal extendable CLI interface for ruby apps
140
+ description: 'Hammer cli provides universal extendable CLI interface for ruby apps
141
+
142
+ '
128
143
  email: mbacovsk@redhat.com
129
144
  executables:
130
145
  - hammer
131
146
  extensions: []
132
147
  extra_rdoc_files:
133
- - doc/option_builders.md
134
- - doc/design.uml
135
148
  - doc/writing_a_plugin.md
136
- - doc/installation_gem.md
137
- - doc/option_normalizers.md
138
- - doc/development_tips.md
139
- - doc/i18n.md
140
149
  - doc/creating_apipie_commands.md
141
150
  - doc/developer_docs.md
142
- - doc/design.png
151
+ - doc/option_builders.md
152
+ - doc/i18n.md
153
+ - doc/design.uml
154
+ - doc/development_tips.md
155
+ - doc/release_notes.md
156
+ - doc/installation.md
143
157
  - doc/creating_commands.md
144
- - doc/installation_source.md
145
158
  - doc/installation_rpm.md
146
- - doc/installation.md
159
+ - doc/option_normalizers.md
160
+ - doc/installation_source.md
147
161
  - doc/installation_deb.md
148
- - doc/release_notes.md
162
+ - doc/design.png
163
+ - doc/installation_gem.md
149
164
  - config/cli.modules.d/module_config_template.yml
150
165
  - config/cli_config.template.yml
151
166
  - README.md
@@ -175,6 +190,7 @@ files:
175
190
  - lib/hammer_cli.rb
176
191
  - lib/hammer_cli/abstract.rb
177
192
  - lib/hammer_cli/apipie.rb
193
+ - lib/hammer_cli/apipie/api_connection.rb
178
194
  - lib/hammer_cli/apipie/command.rb
179
195
  - lib/hammer_cli/apipie/option_builder.rb
180
196
  - lib/hammer_cli/apipie/option_definition.rb
@@ -189,6 +205,8 @@ files:
189
205
  - lib/hammer_cli/exception_handler.rb
190
206
  - lib/hammer_cli/exceptions.rb
191
207
  - lib/hammer_cli/exit_codes.rb
208
+ - lib/hammer_cli/help/builder.rb
209
+ - lib/hammer_cli/help/text_builder.rb
192
210
  - lib/hammer_cli/i18n.rb
193
211
  - lib/hammer_cli/logger.rb
194
212
  - lib/hammer_cli/logger_watch.rb
@@ -217,9 +235,12 @@ files:
217
235
  - lib/hammer_cli/output/formatters.rb
218
236
  - lib/hammer_cli/output/output.rb
219
237
  - lib/hammer_cli/output/record_collection.rb
238
+ - lib/hammer_cli/output/utils.rb
220
239
  - lib/hammer_cli/settings.rb
221
240
  - lib/hammer_cli/shell.rb
222
241
  - lib/hammer_cli/subcommand.rb
242
+ - lib/hammer_cli/table_print/column.rb
243
+ - lib/hammer_cli/table_print/formatter.rb
223
244
  - lib/hammer_cli/testing/command_assertions.rb
224
245
  - lib/hammer_cli/testing/data_helpers.rb
225
246
  - lib/hammer_cli/testing/output_matchers.rb
@@ -284,6 +305,7 @@ files:
284
305
  - locale/zh_TW/hammer-cli.po.time_stamp
285
306
  - man/hammer.1.gz
286
307
  - test/functional/defaults_test.rb
308
+ - test/functional/help_test.rb
287
309
  - test/functional/test_helper.rb
288
310
  - test/reports/TEST-Fields-ContainerField-display-.xml
289
311
  - test/reports/TEST-Fields-ContainerField-display-blank-is-allowed.xml
@@ -424,6 +446,7 @@ files:
424
446
  - test/reports/TEST-constraints.xml
425
447
  - test/test_helper.rb
426
448
  - test/unit/abstract_test.rb
449
+ - test/unit/apipie/api_connection_test.rb
427
450
  - test/unit/apipie/command_test.rb
428
451
  - test/unit/apipie/option_builder_test.rb
429
452
  - test/unit/apipie/option_definition_test.rb
@@ -437,6 +460,8 @@ files:
437
460
  - test/unit/fixtures/defaults/defaults_dashed.yml
438
461
  - test/unit/fixtures/json_input/invalid.json
439
462
  - test/unit/fixtures/json_input/valid.json
463
+ - test/unit/help/builder_test.rb
464
+ - test/unit/help/text_builder_test.rb
440
465
  - test/unit/history_test.rb
441
466
  - test/unit/i18n_test.rb
442
467
  - test/unit/logger_test.rb
@@ -483,189 +508,192 @@ required_rubygems_version: !ruby/object:Gem::Requirement
483
508
  version: '0'
484
509
  requirements: []
485
510
  rubyforge_project:
486
- rubygems_version: 2.4.8
511
+ rubygems_version: 2.5.1
487
512
  signing_key:
488
513
  specification_version: 4
489
514
  summary: Universal command-line interface
490
515
  test_files:
491
- - test/reports/TEST-HammerCLI-MainCommand.xml
492
- - test/reports/TEST-HammerCLI-ShellHistory.xml
493
- - test/reports/TEST-Fields-Field-display-blank-is-not-allowed.xml
494
- - test/reports/TEST-Fields-ContainerField-display-blank-is-not-allowed.xml
495
- - test/reports/TEST-HammerCLI-OptionBuilderContainer.0.xml
496
- - test/reports/TEST-HammerCLI-Output-Adapter-CSValues.xml
516
+ - test/functional/test_helper.rb
517
+ - test/functional/help_test.rb
518
+ - test/functional/defaults_test.rb
519
+ - test/unit/modules_test.rb
520
+ - test/unit/main_test.rb
521
+ - test/unit/validator_test.rb
522
+ - test/unit/history_test.rb
523
+ - test/unit/exception_handler_test.rb
524
+ - test/unit/i18n_test.rb
525
+ - test/unit/settings_test.rb
526
+ - test/unit/options/normalizers_test.rb
527
+ - test/unit/options/field_filter_test.rb
528
+ - test/unit/options/matcher_test.rb
529
+ - test/unit/options/option_definition_test.rb
530
+ - test/unit/abstract_test.rb
531
+ - test/unit/test_helper.rb
532
+ - test/unit/connection_test.rb
533
+ - test/unit/apipie/api_connection_test.rb
534
+ - test/unit/apipie/command_test.rb
535
+ - test/unit/apipie/option_builder_test.rb
536
+ - test/unit/apipie/option_definition_test.rb
537
+ - test/unit/output/formatters_test.rb
538
+ - test/unit/output/output_test.rb
539
+ - test/unit/output/adapter/table_test.rb
540
+ - test/unit/output/adapter/json_test.rb
541
+ - test/unit/output/adapter/abstract_test.rb
542
+ - test/unit/output/adapter/base_test.rb
543
+ - test/unit/output/adapter/yaml_test.rb
544
+ - test/unit/output/adapter/csv_test.rb
545
+ - test/unit/output/dsl_test.rb
546
+ - test/unit/output/record_collection_test.rb
547
+ - test/unit/output/fields_test.rb
548
+ - test/unit/output/definition_test.rb
549
+ - test/unit/help/builder_test.rb
550
+ - test/unit/help/text_builder_test.rb
551
+ - test/unit/fixtures/json_input/invalid.json
552
+ - test/unit/fixtures/json_input/valid.json
553
+ - test/unit/fixtures/defaults/defaults_dashed.yml
554
+ - test/unit/fixtures/defaults/defaults.yml
555
+ - test/unit/fixtures/apipie/documented.json
556
+ - test/unit/fixtures/apipie/architectures.json
557
+ - test/unit/defaults_test.rb
558
+ - test/unit/completer_test.rb
559
+ - test/unit/option_builder_test.rb
560
+ - test/unit/utils_test.rb
561
+ - test/unit/logger_test.rb
562
+ - test/test_helper.rb
563
+ - test/reports/TEST-String-indent.xml
564
+ - test/reports/TEST-HammerCLI-AbstractCommand-logging.xml
565
+ - test/reports/TEST-HammerCLI-Modules-find-by-name.xml
566
+ - test/reports/TEST-HammerCLI-MainCommand-loading-context-verbose.xml
567
+ - test/reports/TEST-HammerCLI-Output-Dsl-fields.xml
497
568
  - test/reports/TEST-HammerCLI-CompleterWord-complete-.xml
498
- - test/reports/TEST-HammerCLI-Output-Adapter-Table-print-collection-column-width.xml
499
- - test/reports/TEST-HammerCLI-Options-OptionDefinition-context.xml
500
- - test/reports/TEST-HammerCLI-Output-Definition.xml
501
- - test/reports/TEST-HammerCLI-ShellHistory-loading-old-history.xml
502
- - test/reports/TEST-HammerCLI-Options-Normalizers-key-value-list.xml
503
- - test/reports/TEST-HammerCLI-Apipie-Command-options.xml
504
- - test/reports/TEST-HammerCLI-Apipie-Command-resource-defined.xml
505
- - test/reports/TEST-HammerCLI-Output-Formatters-FormatterContainer.xml
506
- - test/reports/TEST-HammerCLI-Output-Formatters-BooleanFormatter.xml
569
+ - test/reports/TEST-HammerCLI-Output-Adapter-Table-print-collection-formatters.xml
507
570
  - test/reports/TEST-HammerCLI-Output-Adapter-CSValues-print-collection-formatters.xml
508
- - test/reports/TEST-HammerCLI-AbstractCommand-subcommand-behavior.xml
509
- - test/reports/TEST-constraints.xml
510
- - test/reports/TEST-HammerCLI-Output-Adapter-Table.xml
511
- - test/reports/TEST-HammerCLI-Options-Normalizers-enum.xml
512
- - test/reports/TEST-HammerCLI-AbstractCommand-option-builder.xml
513
- - test/reports/TEST-constraints-HammerCLI-Validator-BaseConstraint.xml
514
- - test/reports/TEST-HammerCLI-Apipie-Command.xml
515
- - test/reports/TEST-HammerCLI-Options-Normalizers-bool.xml
571
+ - test/reports/TEST-HammerCLI-Completer-subcommand-completion.xml
572
+ - test/reports/TEST-HammerCLI-Options-Normalizers-key-value-list.xml
573
+ - test/reports/TEST-HammerCLI-Options-Normalizers-list.xml
574
+ - test/reports/TEST-String.xml
575
+ - test/reports/TEST-HammerCLI-Output-Adapter-CSValues-print-collection.xml
576
+ - test/reports/TEST-MiniTest-Spec.xml
577
+ - test/reports/TEST-Fields-ContainerField-display-blank-is-not-allowed.xml
578
+ - test/reports/TEST-HammerCLI-Modules-load-all-modules.xml
516
579
  - test/reports/TEST-HammerCLI-Apipie-OptionBuilder-with-hash-params.xml
517
- - test/reports/TEST-HammerCLI-Output-Adapter-CSValues-print-collection-handle-ids.xml
518
- - test/reports/TEST-Fields-ContainerField.xml
519
- - test/reports/TEST-HammerCLI-AbstractCommand-output.xml
580
+ - test/reports/TEST-HammerCLI-Modules-load-a-module.xml
520
581
  - test/reports/TEST-HammerCLI-Apipie-OptionBuilder-required-options.xml
521
- - test/reports/TEST-HammerCLI-Modules.xml
522
- - test/reports/TEST-HammerCLI-Options-Normalizers-abstract.xml
582
+ - test/reports/TEST-HammerCLI-Options-Normalizers-datetime.xml
583
+ - test/reports/TEST-HammerCLI-AbstractCommand-subcommand-behavior.xml
584
+ - test/reports/TEST-HammerCLI-Output-Adapter-CSValues-print-message.xml
585
+ - test/reports/TEST-Fields-Field-display-.xml
586
+ - test/reports/TEST-constraints-HammerCLI-Validator-BaseConstraint-rejected.xml
587
+ - test/reports/TEST-HammerCLI-Output-Formatters-LongTextFormatter.xml
588
+ - test/reports/TEST-HammerCLI-Options-Normalizers-bool.xml
589
+ - test/reports/TEST-HammerCLI-Output-FieldFilter.xml
590
+ - test/reports/TEST-HammerCLI-Modules-load-a-module-module-not-found.xml
591
+ - test/reports/TEST-HammerCLI-Output-Output-messages.xml
592
+ - test/reports/TEST-HammerCLI-I18n.xml
593
+ - test/reports/TEST-HammerCLI-Options-Normalizers-enumlist.xml
594
+ - test/reports/TEST-HammerCLI-Output-Dsl.xml
595
+ - test/reports/TEST-HammerCLI-AbstractCommand-option-builder.xml
596
+ - test/reports/TEST-HammerCLI-Completer.xml
597
+ - test/reports/TEST-HammerCLI-Output-Output-formatters.xml
523
598
  - test/reports/TEST-HammerCLI-Apipie-OptionBuilder-filtering-options.xml
599
+ - test/reports/TEST-HammerCLI-Options-Normalizers-abstract.xml
600
+ - test/reports/TEST-HammerCLI-AbstractCommand.xml
601
+ - test/reports/TEST-HammerCLI-Modules-names.xml
602
+ - test/reports/TEST-HammerCLI-Apipie-Command-options.xml
603
+ - test/reports/TEST-HammerCLI-ShellHistory-saving-history.xml
604
+ - test/reports/TEST-HammerCLI-Apipie-OptionBuilder.xml
605
+ - test/reports/TEST-HammerCLI-Output-Formatters-FormatterContainer.xml
606
+ - test/reports/TEST-String-camelize.xml
607
+ - test/reports/TEST-Fields-ContainerField-display-.xml
608
+ - test/reports/TEST-HammerCLI-AbstractCommand-options.xml
609
+ - test/reports/TEST-constraints-HammerCLI-Validator-AnyConstraint-exist-.xml
524
610
  - test/reports/TEST-HammerCLI-Output-Adapter-Table-print-collection.xml
611
+ - test/reports/TEST-HammerCLI-MainCommand-loading-context.xml
612
+ - test/reports/TEST-HammerCLI-Output-Formatters-KeyValueFormatter.xml
613
+ - test/reports/TEST-HammerCLI-Options-Normalizers-json-input.xml
614
+ - test/reports/TEST-HammerCLI-Output-Adapter-Base.xml
615
+ - test/reports/TEST-HammerCLI-CompleterWord-quoted-.xml
616
+ - test/reports/TEST-HammerCLI-CompleterWord-quote.xml
617
+ - test/reports/TEST-HammerCLI-Output-Adapter-Table.xml
525
618
  - test/reports/TEST-HammerCLI-Options-OptionDefinition-formatters.xml
526
- - test/reports/TEST-HammerCLI-Apipie-OptionBuilder-aliasing-resources.xml
527
- - test/reports/TEST-HammerCLI-Modules-find-by-name.xml
528
- - test/reports/TEST-HammerCLI-Output-Output-formatters.xml
529
- - test/reports/TEST-HammerCLI-Output-Formatters-ListFormatter.xml
619
+ - test/reports/TEST-HammerCLI-Output-Output-adapters.xml
620
+ - test/reports/TEST-HammerCLI-Output-Output-data.xml
621
+ - test/reports/TEST-HammerCLI-Modules.xml
622
+ - test/reports/TEST-HammerCLI-AbstractCommand-subcommand-behavior-subcommand.xml
623
+ - test/reports/TEST-HammerCLI-OptionBuilderContainer.0.xml
624
+ - test/reports/TEST-Fields-ContainerField.xml
625
+ - test/reports/TEST-Fields-Field-display-blank-is-allowed.xml
530
626
  - test/reports/TEST-HammerCLI-AbstractCommand-exception-handler.xml
531
- - test/reports/TEST-HammerCLI-CompleterLine-splitting-words.xml
627
+ - test/reports/TEST-String-formatting.xml
532
628
  - test/reports/TEST-HammerCLI-Output-Output.xml
533
- - test/reports/TEST-HammerCLI-Apipie-OptionBuilder-with-one-simple-param.xml
534
- - test/reports/TEST-HammerCLI-CompleterLine.xml
535
- - test/reports/TEST-HammerCLI-Modules-names.xml
536
- - test/reports/TEST-Fields-Field-hide-blank-.xml
537
- - test/reports/TEST-HammerCLI-AbstractCommand-logging.xml
538
- - test/reports/TEST-HammerCLI-Connection.xml
539
- - test/reports/TEST-HammerCLI-CompleterWord-quote.xml
540
- - test/reports/TEST-HammerCLI-AbstractCommand-build-options.xml
541
- - test/reports/TEST-HammerCLI-Output-Formatters-DateFormatter.xml
542
- - test/reports/TEST-HammerCLI-MainCommand-loading-context-password.xml
543
- - test/reports/TEST-HammerCLI-Output-Adapter-Abstract-messages.xml
544
- - test/reports/TEST-HammerCLI-Output-Adapter-Table-print-collection-handle-ids.xml
545
- - test/reports/TEST-HammerCLI-OptionBuilderContainer.xml
546
- - test/reports/TEST-HammerCLI-Output-FieldFilter.xml
547
- - test/reports/TEST-Fields-ContainerField-display-blank-is-allowed.xml
629
+ - test/reports/TEST-HammerCLI-Output-Dsl-collection.xml
630
+ - test/reports/TEST-String-interactive-.xml
631
+ - test/reports/TEST-HammerCLI-ShellHistory.xml
632
+ - test/reports/TEST-HammerCLI-Output-Dsl-custom-fields.xml
633
+ - test/reports/TEST-HammerCLI-Output-Formatters-FieldFormatter.xml
634
+ - test/reports/TEST-HammerCLI-Options-OptionDefinition.xml
635
+ - test/reports/TEST-constraints-HammerCLI-Validator-BaseConstraint.xml
636
+ - test/reports/TEST-HammerCLI-Apipie-OptionBuilder-setting-correct-normalizers.xml
637
+ - test/reports/TEST-constraints-HammerCLI-Validator-AllConstraint-exist-.xml
548
638
  - test/reports/TEST-HammerCLI-CompleterWord.xml
549
- - test/reports/TEST-HammerCLI-Apipie-Command-setting-resources.xml
550
- - test/reports/TEST-HammerCLI-Modules-load-a-module.xml
551
- - test/reports/TEST-constraints-HammerCLI-Validator-BaseConstraint-required.xml
552
- - test/reports/TEST-HammerCLI-Options-Normalizers-enumlist.xml
553
- - test/reports/TEST-HammerCLI-Output-Adapter-Base-print-collection-show-ids.xml
554
- - test/reports/TEST-constraints-HammerCLI-Validator-AnyConstraint-exist-.xml
555
- - test/reports/TEST-HammerCLI-ShellHistory-saving-history.xml
556
- - test/reports/TEST-String.xml
557
- - test/reports/TEST-HammerCLI-Output-Adapter-Table-print-collection-formatters.xml
558
- - test/reports/TEST-constraints-HammerCLI-Validator-AnyConstraint.xml
559
- - test/reports/TEST-HammerCLI-Output-Adapter-Base-print-collection.xml
560
- - test/reports/TEST-Fields-ContainerField-display-.xml
639
+ - test/reports/TEST-Fields-ContainerField-display-blank-is-allowed.xml
640
+ - test/reports/TEST-Fields-Field-parameters.xml
561
641
  - test/reports/TEST-HammerCLI-Settings-load-from-paths.xml
562
- - test/reports/TEST-HammerCLI-Output-Adapter-CSValues-print-message.xml
563
- - test/reports/TEST-HammerCLI-Settings.xml
642
+ - test/reports/TEST-HammerCLI-Connection.xml
643
+ - test/reports/TEST-HammerCLI-Apipie-Command.xml
644
+ - test/reports/TEST-HammerCLI-Output-Definition.xml
645
+ - test/reports/TEST-HammerCLI-AbstractCommand-output.xml
646
+ - test/reports/TEST-Fields-Field-display-blank-is-not-allowed.xml
647
+ - test/reports/TEST-HammerCLI-CompleterLine.xml
648
+ - test/reports/TEST-HammerCLI-MainCommand-loading-context-username.xml
649
+ - test/reports/TEST-HammerCLI-Options-Normalizers.xml
564
650
  - test/reports/TEST-HammerCLI-Output-RecordCollection.xml
565
- - test/reports/TEST-HammerCLI-Modules-load-a-module-module-not-found.xml
566
- - test/reports/TEST-HammerCLI-Output-Formatters-FieldFormatter.xml
567
- - test/reports/TEST-HammerCLI-Completer-subcommand-completion.xml
568
- - test/reports/TEST-HammerCLI-Output-Adapter-Abstract.xml
651
+ - test/reports/TEST-HammerCLI-MainCommand-loading-context-password.xml
652
+ - test/reports/TEST-HammerCLI-Output-Adapter-Base-print-collection-show-ids.xml
653
+ - test/reports/TEST-HammerCLI-Output-Adapter-CSValues-print-collection-handle-fields-with-collections.xml
569
654
  - test/reports/TEST-HammerCLI-Output-Formatters-FormatterLibrary.xml
655
+ - test/reports/TEST-Fields-Field-hide-blank-.xml
656
+ - test/reports/TEST-HammerCLI-Output-Dsl-label.xml
657
+ - test/reports/TEST-HammerCLI-Modules-load-a-module-module-runtime-exception.xml
658
+ - test/reports/TEST-HammerCLI-Output-Formatters-DateFormatter.xml
659
+ - test/reports/TEST-HammerCLI-Output-Formatters-ColorFormatter.xml
660
+ - test/reports/TEST-HammerCLI-Output-Adapter-Table-print-collection-column-width.xml
661
+ - test/reports/TEST-HammerCLI-Output-Adapter-Abstract-error-messages.xml
662
+ - test/reports/TEST-HammerCLI-AbstractCommand-build-options.xml
570
663
  - test/reports/TEST-HammerCLI-AbstractCommand-subcommand-behavior-remove-subcommand.xml
571
- - test/reports/TEST-HammerCLI-Output-Output-messages.xml
572
- - test/reports/TEST-HammerCLI-MainCommand-loading-context-verbose.xml
664
+ - test/reports/TEST-HammerCLI-Output-Adapter-CSValues-print-collection-handle-ids.xml
665
+ - test/reports/TEST-constraints-HammerCLI-Validator-AllConstraint.xml
573
666
  - test/reports/TEST-HammerCLI-Completer-option-value-completion.xml
574
- - test/reports/TEST-HammerCLI-AbstractCommand-subcommand-behavior-subcommand.xml
575
- - test/reports/TEST-Fields-Field.xml
576
- - test/reports/TEST-HammerCLI-AbstractCommand.xml
577
- - test/reports/TEST-HammerCLI-CompleterWord-quoted-.xml
578
- - test/reports/TEST-HammerCLI-Modules-load-a-module-module-runtime-exception.xml
579
- - test/reports/TEST-HammerCLI-Output-Formatters-KeyValueFormatter.xml
580
- - test/reports/TEST-constraints-HammerCLI-Validator-BaseConstraint-exist-.xml
581
- - test/reports/TEST-HammerCLI-Options-Normalizers-datetime.xml
667
+ - test/reports/TEST-HammerCLI-Output-Adapter-Table-print-collection-handle-ids.xml
668
+ - test/reports/TEST-HammerCLI-Output-Definition-empty-.xml
669
+ - test/reports/TEST-HammerCLI-ShellHistory-loading-old-history.xml
670
+ - test/reports/TEST-HammerCLI-Settings.xml
582
671
  - test/reports/TEST-HammerCLI-Output-Adapter-CSValues-print-collection-handle-fields-with-containers.xml
583
- - test/reports/TEST-HammerCLI-Completer-command-completion.xml
584
- - test/reports/TEST-HammerCLI-Options-OptionDefinition.xml
585
- - test/reports/TEST-HammerCLI-Modules-load-all-modules.xml
586
- - test/reports/TEST-HammerCLI-Output-Dsl-label.xml
587
- - test/reports/TEST-constraints-HammerCLI-Validator-BaseConstraint-rejected.xml
588
- - test/reports/TEST-HammerCLI-Apipie-OptionBuilder-setting-correct-normalizers.xml
589
- - test/reports/TEST-HammerCLI-I18n.xml
590
- - test/reports/TEST-MiniTest-Spec.xml
591
- - test/reports/TEST-HammerCLI-Output-Output-adapters.xml
592
- - test/reports/TEST-HammerCLI-MainCommand-loading-context-username.xml
593
- - test/reports/TEST-HammerCLI-Options-Normalizers.xml
594
- - test/reports/TEST-HammerCLI-Output-Dsl.xml
595
- - test/reports/TEST-HammerCLI-Output-Output-data.xml
596
- - test/reports/TEST-Fields-Field-display-.xml
597
- - test/reports/TEST-HammerCLI-Output-Dsl-collection.xml
672
+ - test/reports/TEST-HammerCLI-ExceptionHandler.xml
673
+ - test/reports/TEST-HammerCLI-Options-OptionDefinition-context.xml
674
+ - test/reports/TEST-HammerCLI-Modules-load-a-module-success.xml
675
+ - test/reports/TEST-HammerCLI-Apipie-Command-resource-defined.xml
676
+ - test/reports/TEST-HammerCLI-Apipie-Command-setting-resources.xml
677
+ - test/reports/TEST-HammerCLI-Output-Adapter-CSValues.xml
678
+ - test/reports/TEST-HammerCLI-Output-Adapter-Abstract-messages.xml
679
+ - test/reports/TEST-HammerCLI-Apipie-OptionBuilder-aliasing-resources.xml
680
+ - test/reports/TEST-HammerCLI-Options-Normalizers-enum.xml
681
+ - test/reports/TEST-constraints-HammerCLI-Validator-BaseConstraint-exist-.xml
682
+ - test/reports/TEST-constraints-HammerCLI-Validator-BaseConstraint-required.xml
598
683
  - test/reports/TEST-HammerCLI-AbstractCommand-subcommand-behavior-subcommand-.xml
599
- - test/reports/TEST-HammerCLI-Output-Dsl-fields.xml
600
- - test/reports/TEST-HammerCLI-MainCommand-loading-context.xml
601
- - test/reports/TEST-HammerCLI-Completer.xml
602
- - test/reports/TEST-String-interactive-.xml
603
- - test/reports/TEST-HammerCLI-Output-Adapter-CSValues-print-collection-handle-fields-with-collections.xml
604
- - test/reports/TEST-String-formatting.xml
684
+ - test/reports/TEST-HammerCLI-CompleterLine-line-complete.xml
685
+ - test/reports/TEST-HammerCLI-OptionBuilderContainer.xml
686
+ - test/reports/TEST-HammerCLI-MainCommand.xml
605
687
  - test/reports/TEST-HammerCLI-Output-Dsl-path-definition.xml
606
- - test/reports/TEST-HammerCLI-Output-Adapter-Abstract-error-messages.xml
607
- - test/reports/TEST-HammerCLI-Output-Dsl-custom-fields.xml
608
- - test/reports/TEST-HammerCLI-Output-Formatters-ColorFormatter.xml
609
- - test/reports/TEST-HammerCLI-ExceptionHandler.xml
610
- - test/reports/TEST-HammerCLI-Output-Adapter-Base.xml
688
+ - test/reports/TEST-HammerCLI-Output-Adapter-Abstract.xml
611
689
  - test/reports/TEST-HammerCLI-Output-Adapter-Abstract-test-data-for-field.xml
612
- - test/reports/TEST-HammerCLI-Modules-load-a-module-success.xml
613
- - test/reports/TEST-Fields-Field-parameters.xml
614
- - test/reports/TEST-constraints-HammerCLI-Validator-AllConstraint-exist-.xml
615
- - test/reports/TEST-Fields-Field-display-blank-is-allowed.xml
616
- - test/reports/TEST-HammerCLI-Output-Formatters-LongTextFormatter.xml
690
+ - test/reports/TEST-Fields-Field.xml
691
+ - test/reports/TEST-HammerCLI-CompleterLine-splitting-words.xml
692
+ - test/reports/TEST-HammerCLI-Output-Formatters-BooleanFormatter.xml
617
693
  - test/reports/TEST-HammerCLI-Output-Adapter-Table-print-collection-sort-columns.xml
618
- - test/reports/TEST-String-camelize.xml
619
- - test/reports/TEST-String-indent.xml
620
- - test/reports/TEST-HammerCLI-Output-Adapter-CSValues-print-collection.xml
621
- - test/reports/TEST-HammerCLI-Options-Normalizers-list.xml
622
- - test/reports/TEST-HammerCLI-Apipie-OptionBuilder.xml
623
- - test/reports/TEST-constraints-HammerCLI-Validator-AllConstraint.xml
624
- - test/reports/TEST-HammerCLI-AbstractCommand-options.xml
625
- - test/reports/TEST-HammerCLI-CompleterLine-line-complete.xml
626
- - test/reports/TEST-HammerCLI-Output-Definition-empty-.xml
627
- - test/reports/TEST-HammerCLI-Options-Normalizers-json-input.xml
628
- - test/functional/defaults_test.rb
629
- - test/functional/test_helper.rb
630
- - test/unit/logger_test.rb
631
- - test/unit/abstract_test.rb
632
- - test/unit/validator_test.rb
633
- - test/unit/main_test.rb
634
- - test/unit/options/field_filter_test.rb
635
- - test/unit/options/option_definition_test.rb
636
- - test/unit/options/normalizers_test.rb
637
- - test/unit/options/matcher_test.rb
638
- - test/unit/settings_test.rb
639
- - test/unit/exception_handler_test.rb
640
- - test/unit/defaults_test.rb
641
- - test/unit/utils_test.rb
642
- - test/unit/fixtures/json_input/valid.json
643
- - test/unit/fixtures/json_input/invalid.json
644
- - test/unit/fixtures/apipie/documented.json
645
- - test/unit/fixtures/apipie/architectures.json
646
- - test/unit/fixtures/defaults/defaults.yml
647
- - test/unit/fixtures/defaults/defaults_dashed.yml
648
- - test/unit/apipie/command_test.rb
649
- - test/unit/apipie/option_definition_test.rb
650
- - test/unit/apipie/option_builder_test.rb
651
- - test/unit/i18n_test.rb
652
- - test/unit/option_builder_test.rb
653
- - test/unit/output/fields_test.rb
654
- - test/unit/output/adapter/csv_test.rb
655
- - test/unit/output/adapter/abstract_test.rb
656
- - test/unit/output/adapter/json_test.rb
657
- - test/unit/output/adapter/base_test.rb
658
- - test/unit/output/adapter/table_test.rb
659
- - test/unit/output/adapter/yaml_test.rb
660
- - test/unit/output/dsl_test.rb
661
- - test/unit/output/output_test.rb
662
- - test/unit/output/formatters_test.rb
663
- - test/unit/output/record_collection_test.rb
664
- - test/unit/output/definition_test.rb
665
- - test/unit/completer_test.rb
666
- - test/unit/history_test.rb
667
- - test/unit/modules_test.rb
668
- - test/unit/test_helper.rb
669
- - test/unit/connection_test.rb
670
- - test/test_helper.rb
671
- has_rdoc:
694
+ - test/reports/TEST-HammerCLI-Completer-command-completion.xml
695
+ - test/reports/TEST-constraints-HammerCLI-Validator-AnyConstraint.xml
696
+ - test/reports/TEST-HammerCLI-Output-Formatters-ListFormatter.xml
697
+ - test/reports/TEST-HammerCLI-Output-Adapter-Base-print-collection.xml
698
+ - test/reports/TEST-constraints.xml
699
+ - test/reports/TEST-HammerCLI-Apipie-OptionBuilder-with-one-simple-param.xml