hammer_cli 0.5.1 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (215) hide show
  1. checksums.yaml +4 -4
  2. data/doc/installation.md +1 -1
  3. data/doc/release_notes.md +6 -0
  4. data/lib/hammer_cli/output/formatters.rb +7 -1
  5. data/lib/hammer_cli/testing/command_assertions.rb +119 -0
  6. data/lib/hammer_cli/testing/data_helpers.rb +19 -0
  7. data/lib/hammer_cli/testing/output_matchers.rb +105 -0
  8. data/lib/hammer_cli/version.rb +1 -1
  9. data/locale/de/LC_MESSAGES/hammer-cli.mo +0 -0
  10. data/locale/de/hammer-cli.edit.po +16 -16
  11. data/locale/de/hammer-cli.po +1 -1
  12. data/locale/en/LC_MESSAGES/hammer-cli.mo +0 -0
  13. data/locale/en/hammer-cli.po +1 -1
  14. data/locale/en_GB/LC_MESSAGES/hammer-cli.mo +0 -0
  15. data/locale/en_GB/hammer-cli.edit.po +25 -25
  16. data/locale/en_GB/hammer-cli.po +1 -1
  17. data/locale/es/LC_MESSAGES/hammer-cli.mo +0 -0
  18. data/locale/es/hammer-cli.po +1 -1
  19. data/locale/fr/LC_MESSAGES/hammer-cli.mo +0 -0
  20. data/locale/fr/hammer-cli.edit.po +26 -26
  21. data/locale/fr/hammer-cli.po +1 -1
  22. data/locale/it/LC_MESSAGES/hammer-cli.mo +0 -0
  23. data/locale/it/hammer-cli.edit.po +3 -3
  24. data/locale/it/hammer-cli.po +1 -1
  25. data/locale/ja/LC_MESSAGES/hammer-cli.mo +0 -0
  26. data/locale/ja/hammer-cli.edit.po +3 -3
  27. data/locale/ja/hammer-cli.po +1 -1
  28. data/locale/ko/LC_MESSAGES/hammer-cli.mo +0 -0
  29. data/locale/ko/hammer-cli.edit.po +3 -3
  30. data/locale/ko/hammer-cli.po +1 -1
  31. data/locale/pt_BR/LC_MESSAGES/hammer-cli.mo +0 -0
  32. data/locale/pt_BR/hammer-cli.po +1 -1
  33. data/locale/ru/LC_MESSAGES/hammer-cli.mo +0 -0
  34. data/locale/ru/hammer-cli.edit.po +3 -3
  35. data/locale/ru/hammer-cli.po +1 -1
  36. data/locale/zh_CN/LC_MESSAGES/hammer-cli.mo +0 -0
  37. data/locale/zh_CN/hammer-cli.edit.po +3 -3
  38. data/locale/zh_CN/hammer-cli.po +1 -1
  39. data/locale/zh_TW/LC_MESSAGES/hammer-cli.mo +0 -0
  40. data/locale/zh_TW/hammer-cli.edit.po +3 -3
  41. data/locale/zh_TW/hammer-cli.po +1 -1
  42. data/test/functional/defaults_test.rb +85 -55
  43. data/test/functional/test_helper.rb +9 -0
  44. data/test/reports/TEST-Fields-ContainerField-display-.xml +1 -1
  45. data/test/reports/TEST-Fields-ContainerField-display-blank-is-allowed.xml +5 -5
  46. data/test/reports/TEST-Fields-ContainerField-display-blank-is-not-allowed.xml +5 -5
  47. data/test/reports/TEST-Fields-ContainerField.xml +1 -1
  48. data/test/reports/TEST-Fields-Field-display-.xml +1 -1
  49. data/test/reports/TEST-Fields-Field-display-blank-is-allowed.xml +3 -3
  50. data/test/reports/TEST-Fields-Field-display-blank-is-not-allowed.xml +3 -3
  51. data/test/reports/TEST-Fields-Field-hide-blank-.xml +3 -3
  52. data/test/reports/TEST-Fields-Field-parameters.xml +2 -2
  53. data/test/reports/TEST-Fields-Field.xml +4 -4
  54. data/test/reports/TEST-HammerCLI-AbstractCommand-build-options.xml +5 -5
  55. data/test/reports/TEST-HammerCLI-AbstractCommand-exception-handler.xml +4 -4
  56. data/test/reports/TEST-HammerCLI-AbstractCommand-logging.xml +8 -10
  57. data/test/reports/TEST-HammerCLI-AbstractCommand-option-builder.xml +3 -3
  58. data/test/reports/TEST-HammerCLI-AbstractCommand-options.xml +3 -3
  59. data/test/reports/TEST-HammerCLI-AbstractCommand-output.xml +7 -7
  60. data/test/reports/TEST-HammerCLI-AbstractCommand-subcommand-behavior-remove-subcommand.xml +3 -3
  61. data/test/reports/TEST-HammerCLI-AbstractCommand-subcommand-behavior-subcommand-.xml +4 -4
  62. data/test/reports/TEST-HammerCLI-AbstractCommand-subcommand-behavior-subcommand.xml +3 -3
  63. data/test/reports/TEST-HammerCLI-AbstractCommand-subcommand-behavior.xml +1 -1
  64. data/test/reports/TEST-HammerCLI-AbstractCommand.xml +3 -3
  65. data/test/reports/TEST-HammerCLI-Apipie-Command-options.xml +3 -3
  66. data/test/reports/TEST-HammerCLI-Apipie-Command-resource-defined.xml +2 -2
  67. data/test/reports/TEST-HammerCLI-Apipie-Command-setting-resources.xml +7 -7
  68. data/test/reports/TEST-HammerCLI-Apipie-Command.xml +2 -2
  69. data/test/reports/TEST-HammerCLI-Apipie-OptionBuilder-aliasing-resources.xml +4 -4
  70. data/test/reports/TEST-HammerCLI-Apipie-OptionBuilder-filtering-options.xml +5 -5
  71. data/test/reports/TEST-HammerCLI-Apipie-OptionBuilder-required-options.xml +3 -3
  72. data/test/reports/TEST-HammerCLI-Apipie-OptionBuilder-setting-correct-normalizers.xml +2 -8
  73. data/test/reports/TEST-HammerCLI-Apipie-OptionBuilder-with-hash-params.xml +3 -3
  74. data/test/reports/TEST-HammerCLI-Apipie-OptionBuilder-with-one-simple-param.xml +5 -5
  75. data/test/reports/TEST-HammerCLI-Apipie-OptionBuilder.xml +1 -1
  76. data/test/reports/TEST-HammerCLI-Completer-command-completion.xml +12 -12
  77. data/test/reports/TEST-HammerCLI-Completer-option-value-completion.xml +6 -6
  78. data/test/reports/TEST-HammerCLI-Completer-subcommand-completion.xml +7 -7
  79. data/test/reports/TEST-HammerCLI-Completer.xml +1 -1
  80. data/test/reports/TEST-HammerCLI-CompleterLine-line-complete.xml +10 -10
  81. data/test/reports/TEST-HammerCLI-CompleterLine-splitting-words.xml +12 -12
  82. data/test/reports/TEST-HammerCLI-CompleterLine.xml +1 -1
  83. data/test/reports/TEST-HammerCLI-CompleterWord-complete-.xml +9 -9
  84. data/test/reports/TEST-HammerCLI-CompleterWord-quote.xml +5 -5
  85. data/test/reports/TEST-HammerCLI-CompleterWord-quoted-.xml +4 -4
  86. data/test/reports/TEST-HammerCLI-CompleterWord.xml +1 -1
  87. data/test/reports/TEST-HammerCLI-Connection.xml +8 -8
  88. data/test/reports/TEST-HammerCLI-ExceptionHandler.xml +8 -8
  89. data/test/reports/TEST-HammerCLI-I18n.xml +3 -3
  90. data/test/reports/TEST-HammerCLI-MainCommand-loading-context-password.xml +3 -3
  91. data/test/reports/TEST-HammerCLI-MainCommand-loading-context-username.xml +3 -3
  92. data/test/reports/TEST-HammerCLI-MainCommand-loading-context-verbose.xml +2 -2
  93. data/test/reports/TEST-HammerCLI-MainCommand-loading-context.xml +1 -1
  94. data/test/reports/TEST-HammerCLI-MainCommand.xml +1 -1
  95. data/test/reports/TEST-HammerCLI-Modules-find-by-name.xml +4 -4
  96. data/test/reports/TEST-HammerCLI-Modules-load-a-module-module-not-found.xml +4 -4
  97. data/test/reports/TEST-HammerCLI-Modules-load-a-module-module-runtime-exception.xml +4 -4
  98. data/test/reports/TEST-HammerCLI-Modules-load-a-module-success.xml +5 -5
  99. data/test/reports/TEST-HammerCLI-Modules-load-a-module.xml +1 -1
  100. data/test/reports/TEST-HammerCLI-Modules-load-all-modules.xml +2 -4
  101. data/test/reports/TEST-HammerCLI-Modules-names.xml +4 -4
  102. data/test/reports/TEST-HammerCLI-Modules.xml +1 -1
  103. data/test/reports/TEST-HammerCLI-OptionBuilderContainer.0.xml +1 -5
  104. data/test/reports/TEST-HammerCLI-OptionBuilderContainer.xml +5 -1
  105. data/test/reports/TEST-HammerCLI-Options-Normalizers-abstract.xml +2 -2
  106. data/test/reports/TEST-HammerCLI-Options-Normalizers-bool.xml +13 -13
  107. data/test/reports/TEST-HammerCLI-Options-Normalizers-datetime.xml +6 -6
  108. data/test/reports/TEST-HammerCLI-Options-Normalizers-enum.xml +5 -5
  109. data/test/reports/TEST-HammerCLI-Options-Normalizers-enumlist.xml +8 -8
  110. data/test/reports/TEST-HammerCLI-Options-Normalizers-json-input.xml +5 -5
  111. data/test/reports/TEST-HammerCLI-Options-Normalizers-key-value-list.xml +6 -26
  112. data/test/reports/TEST-HammerCLI-Options-Normalizers-list.xml +5 -5
  113. data/test/reports/TEST-HammerCLI-Options-Normalizers.xml +1 -1
  114. data/test/reports/TEST-HammerCLI-Options-OptionDefinition-context.xml +2 -2
  115. data/test/reports/TEST-HammerCLI-Options-OptionDefinition-formatters.xml +3 -3
  116. data/test/reports/TEST-HammerCLI-Options-OptionDefinition.xml +1 -1
  117. data/test/reports/TEST-HammerCLI-Output-Adapter-Abstract-error-messages.xml +5 -5
  118. data/test/reports/TEST-HammerCLI-Output-Adapter-Abstract-messages.xml +3 -3
  119. data/test/reports/TEST-HammerCLI-Output-Adapter-Abstract-test-data-for-field.xml +5 -5
  120. data/test/reports/TEST-HammerCLI-Output-Adapter-Abstract.xml +6 -6
  121. data/test/reports/TEST-HammerCLI-Output-Adapter-Base-print-collection-show-ids.xml +2 -2
  122. data/test/reports/TEST-HammerCLI-Output-Adapter-Base-print-collection.xml +11 -11
  123. data/test/reports/TEST-HammerCLI-Output-Adapter-Base.xml +1 -1
  124. data/test/reports/TEST-HammerCLI-Output-Adapter-CSValues-print-collection-formatters.xml +3 -3
  125. data/test/reports/TEST-HammerCLI-Output-Adapter-CSValues-print-collection-handle-fields-with-collections.xml +4 -4
  126. data/test/reports/TEST-HammerCLI-Output-Adapter-CSValues-print-collection-handle-fields-with-containers.xml +3 -3
  127. data/test/reports/TEST-HammerCLI-Output-Adapter-CSValues-print-collection-handle-ids.xml +3 -3
  128. data/test/reports/TEST-HammerCLI-Output-Adapter-CSValues-print-collection.xml +3 -3
  129. data/test/reports/TEST-HammerCLI-Output-Adapter-CSValues-print-message.xml +3 -3
  130. data/test/reports/TEST-HammerCLI-Output-Adapter-CSValues.xml +1 -1
  131. data/test/reports/TEST-HammerCLI-Output-Adapter-Table-print-collection-column-width.xml +5 -11
  132. data/test/reports/TEST-HammerCLI-Output-Adapter-Table-print-collection-formatters.xml +3 -3
  133. data/test/reports/TEST-HammerCLI-Output-Adapter-Table-print-collection-handle-ids.xml +3 -7
  134. data/test/reports/TEST-HammerCLI-Output-Adapter-Table-print-collection-sort-columns.xml +2 -2
  135. data/test/reports/TEST-HammerCLI-Output-Adapter-Table-print-collection.xml +3 -3
  136. data/test/reports/TEST-HammerCLI-Output-Adapter-Table.xml +1 -1
  137. data/test/reports/TEST-HammerCLI-Output-Definition-empty-.xml +3 -3
  138. data/test/reports/TEST-HammerCLI-Output-Definition.xml +3 -3
  139. data/test/reports/TEST-HammerCLI-Output-Dsl-collection.xml +4 -4
  140. data/test/reports/TEST-HammerCLI-Output-Dsl-custom-fields.xml +3 -3
  141. data/test/reports/TEST-HammerCLI-Output-Dsl-fields.xml +5 -5
  142. data/test/reports/TEST-HammerCLI-Output-Dsl-label.xml +4 -4
  143. data/test/reports/TEST-HammerCLI-Output-Dsl-path-definition.xml +4 -4
  144. data/test/reports/TEST-HammerCLI-Output-Dsl.xml +2 -2
  145. data/test/reports/TEST-HammerCLI-Output-FieldFilter.xml +4 -4
  146. data/test/reports/TEST-HammerCLI-Output-Formatters-BooleanFormatter.xml +3 -3
  147. data/test/reports/TEST-HammerCLI-Output-Formatters-ColorFormatter.xml +2 -2
  148. data/test/reports/TEST-HammerCLI-Output-Formatters-DateFormatter.xml +3 -3
  149. data/test/reports/TEST-HammerCLI-Output-Formatters-FieldFormatter.xml +4 -4
  150. data/test/reports/TEST-HammerCLI-Output-Formatters-FormatterContainer.xml +4 -4
  151. data/test/reports/TEST-HammerCLI-Output-Formatters-FormatterLibrary.xml +3 -3
  152. data/test/reports/TEST-HammerCLI-Output-Formatters-KeyValueFormatter.xml +4 -4
  153. data/test/reports/TEST-HammerCLI-Output-Formatters-ListFormatter.xml +4 -4
  154. data/test/reports/TEST-HammerCLI-Output-Formatters-LongTextFormatter.xml +4 -4
  155. data/test/reports/TEST-HammerCLI-Output-Output-adapters.xml +6 -6
  156. data/test/reports/TEST-HammerCLI-Output-Output-data.xml +5 -5
  157. data/test/reports/TEST-HammerCLI-Output-Output-formatters.xml +2 -2
  158. data/test/reports/TEST-HammerCLI-Output-Output-messages.xml +7 -7
  159. data/test/reports/TEST-HammerCLI-Output-Output.xml +1 -1
  160. data/test/reports/TEST-HammerCLI-Output-RecordCollection.xml +4 -4
  161. data/test/reports/TEST-HammerCLI-Settings-load-from-paths.xml +5 -5
  162. data/test/reports/TEST-HammerCLI-Settings.xml +10 -10
  163. data/test/reports/TEST-HammerCLI-ShellHistory-loading-old-history.xml +3 -3
  164. data/test/reports/TEST-HammerCLI-ShellHistory-saving-history.xml +5 -5
  165. data/test/reports/TEST-HammerCLI-ShellHistory.xml +1 -1
  166. data/test/reports/TEST-MiniTest-Spec.xml +1 -1
  167. data/test/reports/TEST-String-camelize.xml +3 -3
  168. data/test/reports/TEST-String-formatting.xml +6 -6
  169. data/test/reports/TEST-String-indent.xml +3 -3
  170. data/test/reports/{TEST-HammerCLI-interactive-.xml → TEST-String-interactive-.xml} +4 -4
  171. data/test/reports/TEST-String.xml +1 -1
  172. data/test/reports/TEST-constraints-HammerCLI-Validator-AllConstraint-exist-.xml +4 -4
  173. data/test/reports/TEST-constraints-HammerCLI-Validator-AllConstraint.xml +1 -1
  174. data/test/reports/TEST-constraints-HammerCLI-Validator-AnyConstraint-exist-.xml +4 -4
  175. data/test/reports/TEST-constraints-HammerCLI-Validator-AnyConstraint.xml +1 -1
  176. data/test/reports/TEST-constraints-HammerCLI-Validator-BaseConstraint-exist-.xml +2 -2
  177. data/test/reports/TEST-constraints-HammerCLI-Validator-BaseConstraint-rejected.xml +4 -4
  178. data/test/reports/TEST-constraints-HammerCLI-Validator-BaseConstraint-required.xml +4 -4
  179. data/test/reports/TEST-constraints-HammerCLI-Validator-BaseConstraint.xml +1 -1
  180. data/test/reports/TEST-constraints.xml +1 -1
  181. data/test/test_helper.rb +20 -0
  182. data/test/unit/output/formatters_test.rb +20 -3
  183. data/test/unit/test_helper.rb +1 -20
  184. metadata +195 -251
  185. data/test/reports/TEST-Fields-Label-display-.xml +0 -7
  186. data/test/reports/TEST-Fields-Label-display-blank-is-allowed.xml +0 -15
  187. data/test/reports/TEST-Fields-Label-display-blank-is-not-allowed.xml +0 -15
  188. data/test/reports/TEST-Fields-Label.xml +0 -7
  189. data/test/reports/TEST-HammerCLI-Apipie-Command-reload-apipie-cache.xml +0 -11
  190. data/test/reports/TEST-HammerCLI-Apipie-OptionBuilder-setting-referenced-resources.xml +0 -9
  191. data/test/reports/TEST-HammerCLI-Apipie-OptionDefinition-referenced-resource.xml +0 -13
  192. data/test/reports/TEST-HammerCLI-Apipie-OptionDefinition.xml +0 -7
  193. data/test/reports/TEST-HammerCLI-Defaults.xml +0 -19
  194. data/test/reports/TEST-HammerCLI-Options-Matcher.xml +0 -17
  195. data/test/reports/TEST-HammerCLI-Options-Normalizers-number.xml +0 -11
  196. data/test/reports/TEST-HammerCLI-Options-OptionDefinition-deprecated-options.xml +0 -11
  197. data/test/reports/TEST-HammerCLI-Output-Adapter-Json-print-collection-show-ids.xml +0 -9
  198. data/test/reports/TEST-HammerCLI-Output-Adapter-Json-print-collection.xml +0 -27
  199. data/test/reports/TEST-HammerCLI-Output-Adapter-Json-print-message.xml +0 -11
  200. data/test/reports/TEST-HammerCLI-Output-Adapter-Json.xml +0 -7
  201. data/test/reports/TEST-HammerCLI-Output-Adapter-Yaml-print-collection-show-ids.xml +0 -9
  202. data/test/reports/TEST-HammerCLI-Output-Adapter-Yaml-print-collection.xml +0 -27
  203. data/test/reports/TEST-HammerCLI-Output-Adapter-Yaml-print-message.xml +0 -11
  204. data/test/reports/TEST-HammerCLI-Output-Adapter-Yaml.xml +0 -7
  205. data/test/reports/TEST-HammerCLI-constant-path.xml +0 -15
  206. data/test/reports/TEST-HammerCLI.xml +0 -7
  207. data/test/reports/TEST-Logging-LogEvent-filtering.xml +0 -9
  208. data/test/reports/TEST-Logging-LogEvent.xml +0 -7
  209. data/test/reports/TEST-String-constantize.xml +0 -15
  210. data/test/reports/TEST-String-underscore.xml +0 -13
  211. data/test/reports/TEST-commands-defaults-add.xml +0 -21
  212. data/test/reports/TEST-commands-defaults-delete.xml +0 -11
  213. data/test/reports/TEST-commands-defaults-list.xml +0 -11
  214. data/test/reports/TEST-commands-defaults-providers.xml +0 -11
  215. data/test/reports/TEST-commands.xml +0 -7
@@ -1,5 +1,5 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
- <testsuite name="constraints" tests="0" time="0.000339576" failures="0" errors="0" skipped="0" assertions="0" timestamp="2015-12-10T23:59:29+00:00">
2
+ <testsuite name="constraints" tests="0" time="0.000161677" failures="0" errors="0" skipped="0" assertions="0">
3
3
  <system-out>
4
4
  </system-out>
5
5
  <system-err>
@@ -0,0 +1,20 @@
1
+ require 'simplecov'
2
+ require 'pathname'
3
+
4
+ SimpleCov.use_merging true
5
+ SimpleCov.start do
6
+ command_name 'MiniTest'
7
+ add_filter 'test'
8
+ end
9
+ SimpleCov.root Pathname.new(File.dirname(__FILE__) + "../../../")
10
+
11
+ require 'minitest/autorun'
12
+ require 'minitest/spec'
13
+ require "minitest-spec-context"
14
+ require "mocha/setup"
15
+
16
+ require 'hammer_cli'
17
+ require 'hammer_cli/logger'
18
+
19
+ Logging.logger.root.appenders = Logging::Appenders['__test__'] || Logging::Appenders::StringIo.new('__test__')
20
+
@@ -76,20 +76,37 @@ describe HammerCLI::Output::Formatters::DateFormatter do
76
76
  end
77
77
 
78
78
  describe HammerCLI::Output::Formatters::ListFormatter do
79
+ let(:formatter) { HammerCLI::Output::Formatters::ListFormatter.new }
80
+
79
81
  it "serializes the value" do
80
- formatter = HammerCLI::Output::Formatters::ListFormatter.new
81
82
  formatter.format([1, 2]).must_equal '1, 2'
82
83
  end
83
84
 
84
85
  it "returns empty string when the input is nil" do
85
- formatter = HammerCLI::Output::Formatters::ListFormatter.new
86
86
  formatter.format(nil).must_equal ''
87
87
  end
88
88
 
89
89
  it "returns string value when the input is not a list" do
90
- formatter = HammerCLI::Output::Formatters::ListFormatter.new
91
90
  formatter.format('some string').must_equal 'some string'
92
91
  end
92
+
93
+ it 'can put the string on a new line' do
94
+ formatter.format([1, 2], :on_new_line => true).must_equal "\n 1, 2"
95
+ end
96
+
97
+ it 'allows to change the separator' do
98
+ formatter.format([1, 2, 3], :separator => '#').must_equal "1#2#3"
99
+ end
100
+
101
+ it 'can format list vertically' do
102
+ expected_output = [
103
+ '',
104
+ ' value 1',
105
+ ' value 2',
106
+ ].join("\n")
107
+
108
+ formatter.format(['value 1', 'value 2'], :separator => "\n", :on_new_line => true).must_equal expected_output
109
+ end
93
110
  end
94
111
 
95
112
 
@@ -1,20 +1 @@
1
- require 'simplecov'
2
- require 'pathname'
3
-
4
- SimpleCov.use_merging true
5
- SimpleCov.start do
6
- command_name 'MiniTest'
7
- add_filter 'test'
8
- end
9
- SimpleCov.root Pathname.new(File.dirname(__FILE__) + "../../../")
10
-
11
- require 'minitest/autorun'
12
- require 'minitest/spec'
13
- require "minitest-spec-context"
14
- require "mocha/setup"
15
-
16
- require 'hammer_cli'
17
- require 'hammer_cli/logger'
18
-
19
- Logging.logger.root.appenders = Logging::Appenders['__test__'] || Logging::Appenders::StringIo.new('__test__')
20
-
1
+ require File.join(File.dirname(__FILE__), '../test_helper')