hammer_cli 0.1.0 → 0.1.1
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.
- checksums.yaml +4 -4
- data/README.md +13 -5
- data/config/cli_config.template.yml +12 -3
- data/doc/creating_apipie_commands.md +53 -56
- data/doc/creating_commands.md +25 -19
- data/doc/developer_docs.md +3 -2
- data/doc/development_tips.md +3 -3
- data/doc/i18n.md +3 -3
- data/doc/installation.md +24 -207
- data/doc/installation_deb.md +48 -0
- data/doc/installation_gem.md +30 -0
- data/doc/installation_rpm.md +53 -0
- data/doc/installation_source.md +31 -0
- data/doc/option_builders.md +77 -0
- data/doc/option_normalizers.md +5 -5
- data/doc/writing_a_plugin.md +9 -9
- data/lib/hammer_cli.rb +1 -0
- data/lib/hammer_cli/abstract.rb +21 -8
- data/lib/hammer_cli/apipie.rb +1 -2
- data/lib/hammer_cli/apipie/command.rb +37 -64
- data/lib/hammer_cli/apipie/option_builder.rb +69 -0
- data/lib/hammer_cli/apipie/options.rb +1 -61
- data/lib/hammer_cli/clamp.rb +15 -0
- data/lib/hammer_cli/i18n.rb +14 -2
- data/lib/hammer_cli/logger.rb +1 -1
- data/lib/hammer_cli/option_builder.rb +43 -0
- data/lib/hammer_cli/options/option_definition.rb +6 -0
- data/lib/hammer_cli/output/adapter/abstract.rb +2 -2
- data/lib/hammer_cli/output/adapter/base.rb +6 -3
- data/lib/hammer_cli/output/adapter/table.rb +19 -2
- data/lib/hammer_cli/output/definition.rb +4 -0
- data/lib/hammer_cli/output/fields.rb +9 -0
- data/lib/hammer_cli/output/formatters.rb +20 -8
- data/lib/hammer_cli/utils.rb +1 -1
- data/lib/hammer_cli/version.rb +1 -1
- data/locale/hammer-cli.pot +103 -79
- data/test/unit/abstract_test.rb +62 -0
- data/test/unit/apipie/command_test.rb +12 -197
- data/test/unit/apipie/option_builder_test.rb +110 -0
- data/test/unit/i18n_test.rb +50 -0
- data/test/unit/option_builder_test.rb +33 -0
- data/test/unit/output/adapter/abstract_test.rb +26 -3
- data/test/unit/output/adapter/base_test.rb +20 -3
- data/test/unit/output/adapter/csv_test.rb +2 -2
- data/test/unit/output/adapter/table_test.rb +24 -1
- data/test/unit/output/definition_test.rb +13 -0
- data/test/unit/output/formatters_test.rb +17 -1
- data/test/unit/utils_test.rb +1 -1
- metadata +101 -88
- data/lib/hammer_cli/apipie/read_command.rb +0 -41
- data/lib/hammer_cli/apipie/write_command.rb +0 -49
- data/test/unit/apipie/read_command_test.rb +0 -37
- 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}
|
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}
|
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(:
|
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
|
-
|
112
|
-
fields = [
|
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
|
data/test/unit/utils_test.rb
CHANGED
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.
|
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-
|
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.
|
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.
|
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/
|
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/
|
200
|
+
- doc/installation_source.md
|
201
|
+
- doc/installation_rpm.md
|
194
202
|
- doc/installation.md
|
195
|
-
- doc/
|
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/
|
223
|
+
- lib/hammer_cli/apipie/command.rb
|
207
224
|
- lib/hammer_cli/apipie/resource.rb
|
208
|
-
- lib/hammer_cli/apipie/
|
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/
|
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/
|
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/
|
236
|
-
- lib/hammer_cli/
|
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/
|
242
|
-
- lib/hammer_cli.rb
|
243
|
-
- test/unit/
|
244
|
-
- test/unit/
|
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/
|
249
|
-
- test/unit/
|
250
|
-
- test/unit/
|
251
|
-
- test/unit/
|
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/
|
273
|
+
- test/unit/output/formatters_test.rb
|
268
274
|
- test/unit/output/record_collection_test.rb
|
269
|
-
- test/unit/
|
270
|
-
- test/unit/
|
271
|
-
- test/unit/
|
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/
|
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/
|
293
|
+
- doc/installation_source.md
|
294
|
+
- doc/installation_rpm.md
|
280
295
|
- doc/installation.md
|
281
|
-
- doc/
|
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
|
-
-
|
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.
|
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/
|
319
|
-
- test/unit/
|
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/
|
324
|
-
- test/unit/
|
325
|
-
- test/unit/
|
326
|
-
- test/unit/
|
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/
|
354
|
+
- test/unit/output/formatters_test.rb
|
343
355
|
- test/unit/output/record_collection_test.rb
|
344
|
-
- test/unit/
|
345
|
-
- test/unit/
|
346
|
-
- test/unit/
|
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:
|