hammer_cli_foreman 0.4.0 → 0.5.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 (340) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +13 -2
  3. data/doc/host_create.md +15 -7
  4. data/doc/release_notes.md +11 -0
  5. data/lib/hammer_cli_foreman/commands.rb +5 -1
  6. data/lib/hammer_cli_foreman/defaults.rb +29 -0
  7. data/lib/hammer_cli_foreman/host.rb +8 -1
  8. data/lib/hammer_cli_foreman/id_resolver.rb +1 -1
  9. data/lib/hammer_cli_foreman/location.rb +21 -0
  10. data/lib/hammer_cli_foreman/organization.rb +21 -0
  11. data/lib/hammer_cli_foreman/parameter.rb +7 -7
  12. data/lib/hammer_cli_foreman/role.rb +13 -0
  13. data/lib/hammer_cli_foreman/subnet.rb +1 -1
  14. data/lib/hammer_cli_foreman/version.rb +1 -1
  15. data/lib/hammer_cli_foreman.rb +2 -0
  16. data/locale/de/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  17. data/locale/de/hammer-cli-foreman.edit.po +394 -423
  18. data/locale/de/hammer-cli-foreman.po +1920 -1511
  19. data/locale/en/hammer-cli-foreman.edit.po +188 -124
  20. data/locale/en/hammer-cli-foreman.po +49 -1
  21. data/locale/en_GB/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  22. data/locale/en_GB/hammer-cli-foreman.edit.po +208 -152
  23. data/locale/en_GB/hammer-cli-foreman.po +1554 -1145
  24. data/locale/es/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  25. data/locale/es/hammer-cli-foreman.edit.po +438 -464
  26. data/locale/es/hammer-cli-foreman.po +1930 -1519
  27. data/locale/fr/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  28. data/locale/fr/hammer-cli-foreman.edit.po +301 -328
  29. data/locale/fr/hammer-cli-foreman.po +1922 -1513
  30. data/locale/hammer-cli-foreman.pot +194 -127
  31. data/locale/it/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  32. data/locale/it/hammer-cli-foreman.edit.po +303 -331
  33. data/locale/it/hammer-cli-foreman.po +1909 -1500
  34. data/locale/ja/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  35. data/locale/ja/hammer-cli-foreman.edit.po +302 -330
  36. data/locale/ja/hammer-cli-foreman.po +1920 -1511
  37. data/locale/ko/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  38. data/locale/ko/hammer-cli-foreman.edit.po +303 -332
  39. data/locale/ko/hammer-cli-foreman.po +1910 -1501
  40. data/locale/pt_BR/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  41. data/locale/pt_BR/hammer-cli-foreman.edit.po +369 -393
  42. data/locale/pt_BR/hammer-cli-foreman.po +1916 -1506
  43. data/locale/ru/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  44. data/locale/ru/hammer-cli-foreman.edit.po +344 -372
  45. data/locale/ru/hammer-cli-foreman.po +1940 -1531
  46. data/locale/zh_CN/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  47. data/locale/zh_CN/hammer-cli-foreman.edit.po +303 -331
  48. data/locale/zh_CN/hammer-cli-foreman.po +1905 -1496
  49. data/locale/zh_TW/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  50. data/locale/zh_TW/hammer-cli-foreman.edit.po +306 -334
  51. data/locale/zh_TW/hammer-cli-foreman.po +1908 -1499
  52. data/test/functional/api_expectations.rb +65 -0
  53. data/test/functional/command_assertions.rb +76 -0
  54. data/test/functional/location_test.rb +140 -0
  55. data/test/functional/organization_test.rb +140 -0
  56. data/test/functional/test_helper.rb +7 -0
  57. data/test/test_helper.rb +27 -0
  58. data/test/unit/apipie_resource_mock.rb +24 -6
  59. data/test/unit/architecture_test.rb +1 -1
  60. data/test/unit/auth_source_ldap_test.rb +1 -3
  61. data/test/unit/common_parameter_test.rb +1 -1
  62. data/test/unit/compute_resource_test.rb +1 -1
  63. data/test/unit/data/1.10/foreman_api.json +1 -0
  64. data/test/unit/data/README.md +22 -0
  65. data/test/unit/data/test_api.json +609 -0
  66. data/test/unit/defaults_test.rb +32 -0
  67. data/test/unit/dependency_resolver_test.rb +21 -16
  68. data/test/unit/domain_test.rb +1 -1
  69. data/test/unit/environment_test.rb +1 -1
  70. data/test/unit/external_usergroup_test.rb +1 -1
  71. data/test/unit/helpers/command.rb +5 -1
  72. data/test/unit/host_test.rb +16 -8
  73. data/test/unit/hostgroup_test.rb +1 -1
  74. data/test/unit/id_resolver_test.rb +40 -37
  75. data/test/unit/image_test.rb +1 -3
  76. data/test/unit/location_test.rb +1 -1
  77. data/test/unit/media_test.rb +3 -3
  78. data/test/unit/model_test.rb +1 -1
  79. data/test/unit/operating_system_test.rb +1 -2
  80. data/test/unit/option_builders_test.rb +106 -116
  81. data/test/unit/organization_test.rb +1 -1
  82. data/test/unit/partition_table_test.rb +1 -1
  83. data/test/unit/puppet_class_test.rb +4 -1
  84. data/test/unit/report_test.rb +1 -1
  85. data/test/unit/role_test.rb +15 -0
  86. data/test/unit/smart_class_parameter_test.rb +1 -1
  87. data/test/unit/smart_proxy_test.rb +1 -1
  88. data/test/unit/smart_variable_test.rb +1 -1
  89. data/test/unit/subnet_test.rb +1 -1
  90. data/test/unit/template_test.rb +1 -1
  91. data/test/unit/test_helper.rb +2 -29
  92. data/test/unit/user_test.rb +1 -2
  93. metadata +67 -539
  94. data/test/reports/TEST-HammerCLIForeman-Architecture-CreateCommand-parameters.xml +0 -11
  95. data/test/reports/TEST-HammerCLIForeman-Architecture-CreateCommand.xml +0 -7
  96. data/test/reports/TEST-HammerCLIForeman-Architecture-DeleteCommand-parameters.xml +0 -13
  97. data/test/reports/TEST-HammerCLIForeman-Architecture-DeleteCommand.xml +0 -7
  98. data/test/reports/TEST-HammerCLIForeman-Architecture-InfoCommand-output.xml +0 -13
  99. data/test/reports/TEST-HammerCLIForeman-Architecture-InfoCommand-parameters.xml +0 -13
  100. data/test/reports/TEST-HammerCLIForeman-Architecture-InfoCommand.xml +0 -7
  101. data/test/reports/TEST-HammerCLIForeman-Architecture-ListCommand-output.xml +0 -13
  102. data/test/reports/TEST-HammerCLIForeman-Architecture-ListCommand-parameters.xml +0 -17
  103. data/test/reports/TEST-HammerCLIForeman-Architecture-ListCommand.xml +0 -7
  104. data/test/reports/TEST-HammerCLIForeman-Architecture-UpdateCommand-parameters.xml +0 -15
  105. data/test/reports/TEST-HammerCLIForeman-Architecture-UpdateCommand.xml +0 -7
  106. data/test/reports/TEST-HammerCLIForeman-Architecture.xml +0 -7
  107. data/test/reports/TEST-HammerCLIForeman-CommonParameter-DeleteCommand-parameters.xml +0 -11
  108. data/test/reports/TEST-HammerCLIForeman-CommonParameter-DeleteCommand.xml +0 -7
  109. data/test/reports/TEST-HammerCLIForeman-CommonParameter-ListCommand-output.xml +0 -13
  110. data/test/reports/TEST-HammerCLIForeman-CommonParameter-ListCommand-parameters.xml +0 -17
  111. data/test/reports/TEST-HammerCLIForeman-CommonParameter-ListCommand.xml +0 -7
  112. data/test/reports/TEST-HammerCLIForeman-CommonParameter-SetCommand-parameters.xml +0 -13
  113. data/test/reports/TEST-HammerCLIForeman-CommonParameter-SetCommand.xml +0 -7
  114. data/test/reports/TEST-HammerCLIForeman-CommonParameter.xml +0 -7
  115. data/test/reports/TEST-HammerCLIForeman-ComputeResource-CreateCommand-parameters.xml +0 -15
  116. data/test/reports/TEST-HammerCLIForeman-ComputeResource-CreateCommand.xml +0 -7
  117. data/test/reports/TEST-HammerCLIForeman-ComputeResource-DeleteCommand-parameters.xml +0 -13
  118. data/test/reports/TEST-HammerCLIForeman-ComputeResource-DeleteCommand.xml +0 -7
  119. data/test/reports/TEST-HammerCLIForeman-ComputeResource-InfoCommand-output.xml +0 -17
  120. data/test/reports/TEST-HammerCLIForeman-ComputeResource-InfoCommand-parameters.xml +0 -13
  121. data/test/reports/TEST-HammerCLIForeman-ComputeResource-InfoCommand.xml +0 -7
  122. data/test/reports/TEST-HammerCLIForeman-ComputeResource-ListCommand-output.xml +0 -15
  123. data/test/reports/TEST-HammerCLIForeman-ComputeResource-ListCommand-parameters.xml +0 -17
  124. data/test/reports/TEST-HammerCLIForeman-ComputeResource-ListCommand.xml +0 -7
  125. data/test/reports/TEST-HammerCLIForeman-ComputeResource-UpdateCommand-parameters.xml +0 -15
  126. data/test/reports/TEST-HammerCLIForeman-ComputeResource-UpdateCommand.xml +0 -7
  127. data/test/reports/TEST-HammerCLIForeman-ComputeResource.xml +0 -7
  128. data/test/reports/TEST-HammerCLIForeman-Domain-CreateCommand-parameters.xml +0 -11
  129. data/test/reports/TEST-HammerCLIForeman-Domain-CreateCommand.xml +0 -7
  130. data/test/reports/TEST-HammerCLIForeman-Domain-DeleteCommand-parameters.xml +0 -13
  131. data/test/reports/TEST-HammerCLIForeman-Domain-DeleteCommand.xml +0 -7
  132. data/test/reports/TEST-HammerCLIForeman-Domain-DeleteParameterCommand-parameters.xml +0 -15
  133. data/test/reports/TEST-HammerCLIForeman-Domain-DeleteParameterCommand.xml +0 -7
  134. data/test/reports/TEST-HammerCLIForeman-Domain-InfoCommand-output.xml +0 -21
  135. data/test/reports/TEST-HammerCLIForeman-Domain-InfoCommand-parameters.xml +0 -13
  136. data/test/reports/TEST-HammerCLIForeman-Domain-InfoCommand.xml +0 -7
  137. data/test/reports/TEST-HammerCLIForeman-Domain-ListCommand-output.xml +0 -13
  138. data/test/reports/TEST-HammerCLIForeman-Domain-ListCommand-parameters.xml +0 -17
  139. data/test/reports/TEST-HammerCLIForeman-Domain-ListCommand.xml +0 -7
  140. data/test/reports/TEST-HammerCLIForeman-Domain-SetParameterCommand-parameters.xml +0 -17
  141. data/test/reports/TEST-HammerCLIForeman-Domain-SetParameterCommand.xml +0 -7
  142. data/test/reports/TEST-HammerCLIForeman-Domain-UpdateCommand-parameters.xml +0 -15
  143. data/test/reports/TEST-HammerCLIForeman-Domain-UpdateCommand.xml +0 -7
  144. data/test/reports/TEST-HammerCLIForeman-Domain.xml +0 -7
  145. data/test/reports/TEST-HammerCLIForeman-Environment-CreateCommand-parameters.xml +0 -11
  146. data/test/reports/TEST-HammerCLIForeman-Environment-CreateCommand.xml +0 -7
  147. data/test/reports/TEST-HammerCLIForeman-Environment-DeleteCommand-parameters.xml +0 -13
  148. data/test/reports/TEST-HammerCLIForeman-Environment-DeleteCommand.xml +0 -7
  149. data/test/reports/TEST-HammerCLIForeman-Environment-InfoCommand-output.xml +0 -17
  150. data/test/reports/TEST-HammerCLIForeman-Environment-InfoCommand-parameters.xml +0 -13
  151. data/test/reports/TEST-HammerCLIForeman-Environment-InfoCommand.xml +0 -7
  152. data/test/reports/TEST-HammerCLIForeman-Environment-ListCommand-output.xml +0 -13
  153. data/test/reports/TEST-HammerCLIForeman-Environment-ListCommand-parameters.xml +0 -17
  154. data/test/reports/TEST-HammerCLIForeman-Environment-ListCommand.xml +0 -7
  155. data/test/reports/TEST-HammerCLIForeman-Environment-UpdateCommand-parameters.xml +0 -15
  156. data/test/reports/TEST-HammerCLIForeman-Environment-UpdateCommand.xml +0 -7
  157. data/test/reports/TEST-HammerCLIForeman-Environment.xml +0 -7
  158. data/test/reports/TEST-HammerCLIForeman-ExceptionHandler.xml +0 -13
  159. data/test/reports/TEST-HammerCLIForeman-Host-CreateCommand-parameters.xml +0 -46
  160. data/test/reports/TEST-HammerCLIForeman-Host-CreateCommand.xml +0 -7
  161. data/test/reports/TEST-HammerCLIForeman-Host-DeleteCommand-parameters.xml +0 -13
  162. data/test/reports/TEST-HammerCLIForeman-Host-DeleteCommand.xml +0 -7
  163. data/test/reports/TEST-HammerCLIForeman-Host-DeleteParameterCommand-parameters.xml +0 -15
  164. data/test/reports/TEST-HammerCLIForeman-Host-DeleteParameterCommand.xml +0 -7
  165. data/test/reports/TEST-HammerCLIForeman-Host-InfoCommand-output.xml +0 -85
  166. data/test/reports/TEST-HammerCLIForeman-Host-InfoCommand-parameters.xml +0 -13
  167. data/test/reports/TEST-HammerCLIForeman-Host-InfoCommand.xml +0 -7
  168. data/test/reports/TEST-HammerCLIForeman-Host-ListCommand-output.xml +0 -21
  169. data/test/reports/TEST-HammerCLIForeman-Host-ListCommand-parameters.xml +0 -17
  170. data/test/reports/TEST-HammerCLIForeman-Host-ListCommand.xml +0 -7
  171. data/test/reports/TEST-HammerCLIForeman-Host-PuppetRunCommand-output.xml +0 -9
  172. data/test/reports/TEST-HammerCLIForeman-Host-PuppetRunCommand.xml +0 -7
  173. data/test/reports/TEST-HammerCLIForeman-Host-SetParameterCommand-parameters.xml +0 -17
  174. data/test/reports/TEST-HammerCLIForeman-Host-SetParameterCommand.xml +0 -7
  175. data/test/reports/TEST-HammerCLIForeman-Host-StatusCommand-output.xml +0 -9
  176. data/test/reports/TEST-HammerCLIForeman-Host-StatusCommand.xml +0 -7
  177. data/test/reports/TEST-HammerCLIForeman-Host-UpdateCommand-parameters.xml +0 -40
  178. data/test/reports/TEST-HammerCLIForeman-Host-UpdateCommand.xml +0 -7
  179. data/test/reports/TEST-HammerCLIForeman-Host.xml +0 -7
  180. data/test/reports/TEST-HammerCLIForeman-Hostgroup-CreateCommand-parameters.xml +0 -11
  181. data/test/reports/TEST-HammerCLIForeman-Hostgroup-CreateCommand.xml +0 -7
  182. data/test/reports/TEST-HammerCLIForeman-Hostgroup-DeleteCommand-parameters.xml +0 -11
  183. data/test/reports/TEST-HammerCLIForeman-Hostgroup-DeleteCommand.xml +0 -7
  184. data/test/reports/TEST-HammerCLIForeman-Hostgroup-DeleteParameterCommand-parameters.xml +0 -13
  185. data/test/reports/TEST-HammerCLIForeman-Hostgroup-DeleteParameterCommand.xml +0 -7
  186. data/test/reports/TEST-HammerCLIForeman-Hostgroup-InfoCommand-output.xml +0 -29
  187. data/test/reports/TEST-HammerCLIForeman-Hostgroup-InfoCommand-parameters.xml +0 -11
  188. data/test/reports/TEST-HammerCLIForeman-Hostgroup-InfoCommand.xml +0 -7
  189. data/test/reports/TEST-HammerCLIForeman-Hostgroup-ListCommand-output.xml +0 -27
  190. data/test/reports/TEST-HammerCLIForeman-Hostgroup-ListCommand-parameters.xml +0 -17
  191. data/test/reports/TEST-HammerCLIForeman-Hostgroup-ListCommand.xml +0 -7
  192. data/test/reports/TEST-HammerCLIForeman-Hostgroup-SetParameterCommand-parameters.xml +0 -15
  193. data/test/reports/TEST-HammerCLIForeman-Hostgroup-SetParameterCommand.xml +0 -7
  194. data/test/reports/TEST-HammerCLIForeman-Hostgroup-UpdateCommand-parameters.xml +0 -13
  195. data/test/reports/TEST-HammerCLIForeman-Hostgroup-UpdateCommand.xml +0 -7
  196. data/test/reports/TEST-HammerCLIForeman-Hostgroup.xml +0 -7
  197. data/test/reports/TEST-HammerCLIForeman-Location-CreateCommand-parameters.xml +0 -11
  198. data/test/reports/TEST-HammerCLIForeman-Location-CreateCommand-resource-disabled.xml +0 -11
  199. data/test/reports/TEST-HammerCLIForeman-Location-CreateCommand.xml +0 -7
  200. data/test/reports/TEST-HammerCLIForeman-Location-DeleteCommand-parameters.xml +0 -13
  201. data/test/reports/TEST-HammerCLIForeman-Location-DeleteCommand-resource-disabled.xml +0 -11
  202. data/test/reports/TEST-HammerCLIForeman-Location-DeleteCommand.xml +0 -7
  203. data/test/reports/TEST-HammerCLIForeman-Location-InfoCommand-output.xml +0 -17
  204. data/test/reports/TEST-HammerCLIForeman-Location-InfoCommand-parameters.xml +0 -13
  205. data/test/reports/TEST-HammerCLIForeman-Location-InfoCommand-resource-disabled.xml +0 -11
  206. data/test/reports/TEST-HammerCLIForeman-Location-InfoCommand.xml +0 -7
  207. data/test/reports/TEST-HammerCLIForeman-Location-ListCommand-output.xml +0 -13
  208. data/test/reports/TEST-HammerCLIForeman-Location-ListCommand-parameters.xml +0 -17
  209. data/test/reports/TEST-HammerCLIForeman-Location-ListCommand-resource-disabled.xml +0 -11
  210. data/test/reports/TEST-HammerCLIForeman-Location-ListCommand.xml +0 -7
  211. data/test/reports/TEST-HammerCLIForeman-Location-UpdateCommand-parameters.xml +0 -15
  212. data/test/reports/TEST-HammerCLIForeman-Location-UpdateCommand-resource-disabled.xml +0 -11
  213. data/test/reports/TEST-HammerCLIForeman-Location-UpdateCommand.xml +0 -7
  214. data/test/reports/TEST-HammerCLIForeman-Location.xml +0 -7
  215. data/test/reports/TEST-HammerCLIForeman-Medium-CreateCommand-parameters.xml +0 -13
  216. data/test/reports/TEST-HammerCLIForeman-Medium-CreateCommand.xml +0 -7
  217. data/test/reports/TEST-HammerCLIForeman-Medium-DeleteCommand-parameters.xml +0 -13
  218. data/test/reports/TEST-HammerCLIForeman-Medium-DeleteCommand.xml +0 -7
  219. data/test/reports/TEST-HammerCLIForeman-Medium-InfoCommand-output.xml +0 -23
  220. data/test/reports/TEST-HammerCLIForeman-Medium-InfoCommand-parameters.xml +0 -13
  221. data/test/reports/TEST-HammerCLIForeman-Medium-InfoCommand.xml +0 -7
  222. data/test/reports/TEST-HammerCLIForeman-Medium-ListCommand-output.xml +0 -15
  223. data/test/reports/TEST-HammerCLIForeman-Medium-ListCommand-parameters.xml +0 -17
  224. data/test/reports/TEST-HammerCLIForeman-Medium-ListCommand.xml +0 -7
  225. data/test/reports/TEST-HammerCLIForeman-Medium-UpdateCommand-parameters.xml +0 -17
  226. data/test/reports/TEST-HammerCLIForeman-Medium-UpdateCommand.xml +0 -7
  227. data/test/reports/TEST-HammerCLIForeman-Medium.xml +0 -7
  228. data/test/reports/TEST-HammerCLIForeman-OperatingSystem-CreateCommand-parameters.xml +0 -11
  229. data/test/reports/TEST-HammerCLIForeman-OperatingSystem-CreateCommand.xml +0 -7
  230. data/test/reports/TEST-HammerCLIForeman-OperatingSystem-DeleteCommand-parameters.xml +0 -13
  231. data/test/reports/TEST-HammerCLIForeman-OperatingSystem-DeleteCommand.xml +0 -7
  232. data/test/reports/TEST-HammerCLIForeman-OperatingSystem-DeleteParameterCommand-parameters.xml +0 -13
  233. data/test/reports/TEST-HammerCLIForeman-OperatingSystem-DeleteParameterCommand.xml +0 -7
  234. data/test/reports/TEST-HammerCLIForeman-OperatingSystem-InfoCommand-output.xml +0 -27
  235. data/test/reports/TEST-HammerCLIForeman-OperatingSystem-InfoCommand-parameters.xml +0 -13
  236. data/test/reports/TEST-HammerCLIForeman-OperatingSystem-InfoCommand.xml +0 -7
  237. data/test/reports/TEST-HammerCLIForeman-OperatingSystem-ListCommand-output.xml +0 -17
  238. data/test/reports/TEST-HammerCLIForeman-OperatingSystem-ListCommand-parameters.xml +0 -17
  239. data/test/reports/TEST-HammerCLIForeman-OperatingSystem-ListCommand.xml +0 -7
  240. data/test/reports/TEST-HammerCLIForeman-OperatingSystem-SetParameterCommand-parameters.xml +0 -15
  241. data/test/reports/TEST-HammerCLIForeman-OperatingSystem-SetParameterCommand.xml +0 -7
  242. data/test/reports/TEST-HammerCLIForeman-OperatingSystem-UpdateCommand-parameters.xml +0 -17
  243. data/test/reports/TEST-HammerCLIForeman-OperatingSystem-UpdateCommand.xml +0 -7
  244. data/test/reports/TEST-HammerCLIForeman-OperatingSystem.xml +0 -7
  245. data/test/reports/TEST-HammerCLIForeman-Organization-CreateCommand-parameters.xml +0 -11
  246. data/test/reports/TEST-HammerCLIForeman-Organization-CreateCommand-resource-disabled.xml +0 -11
  247. data/test/reports/TEST-HammerCLIForeman-Organization-CreateCommand.xml +0 -7
  248. data/test/reports/TEST-HammerCLIForeman-Organization-DeleteCommand-parameters.xml +0 -13
  249. data/test/reports/TEST-HammerCLIForeman-Organization-DeleteCommand-resource-disabled.xml +0 -11
  250. data/test/reports/TEST-HammerCLIForeman-Organization-DeleteCommand.xml +0 -7
  251. data/test/reports/TEST-HammerCLIForeman-Organization-InfoCommand-output.xml +0 -17
  252. data/test/reports/TEST-HammerCLIForeman-Organization-InfoCommand-parameters.xml +0 -13
  253. data/test/reports/TEST-HammerCLIForeman-Organization-InfoCommand-resource-disabled.xml +0 -11
  254. data/test/reports/TEST-HammerCLIForeman-Organization-InfoCommand.xml +0 -7
  255. data/test/reports/TEST-HammerCLIForeman-Organization-ListCommand-output.xml +0 -13
  256. data/test/reports/TEST-HammerCLIForeman-Organization-ListCommand-parameters.xml +0 -17
  257. data/test/reports/TEST-HammerCLIForeman-Organization-ListCommand-resource-disabled.xml +0 -11
  258. data/test/reports/TEST-HammerCLIForeman-Organization-ListCommand.xml +0 -7
  259. data/test/reports/TEST-HammerCLIForeman-Organization-UpdateCommand-parameters.xml +0 -15
  260. data/test/reports/TEST-HammerCLIForeman-Organization-UpdateCommand-resource-disabled.xml +0 -11
  261. data/test/reports/TEST-HammerCLIForeman-Organization-UpdateCommand.xml +0 -7
  262. data/test/reports/TEST-HammerCLIForeman-Organization.xml +0 -7
  263. data/test/reports/TEST-HammerCLIForeman-PartitionTable-CreateCommand-parameters.xml +0 -13
  264. data/test/reports/TEST-HammerCLIForeman-PartitionTable-CreateCommand.xml +0 -7
  265. data/test/reports/TEST-HammerCLIForeman-PartitionTable-DeleteCommand-parameters.xml +0 -13
  266. data/test/reports/TEST-HammerCLIForeman-PartitionTable-DeleteCommand.xml +0 -7
  267. data/test/reports/TEST-HammerCLIForeman-PartitionTable-DumpCommand-parameters.xml +0 -15
  268. data/test/reports/TEST-HammerCLIForeman-PartitionTable-DumpCommand.xml +0 -7
  269. data/test/reports/TEST-HammerCLIForeman-PartitionTable-InfoCommand-output.xml +0 -19
  270. data/test/reports/TEST-HammerCLIForeman-PartitionTable-InfoCommand-parameters.xml +0 -13
  271. data/test/reports/TEST-HammerCLIForeman-PartitionTable-InfoCommand.xml +0 -7
  272. data/test/reports/TEST-HammerCLIForeman-PartitionTable-ListCommand-output.xml +0 -15
  273. data/test/reports/TEST-HammerCLIForeman-PartitionTable-ListCommand-parameters.xml +0 -17
  274. data/test/reports/TEST-HammerCLIForeman-PartitionTable-ListCommand.xml +0 -7
  275. data/test/reports/TEST-HammerCLIForeman-PartitionTable-UpdateCommand-parameters.xml +0 -13
  276. data/test/reports/TEST-HammerCLIForeman-PartitionTable-UpdateCommand.xml +0 -7
  277. data/test/reports/TEST-HammerCLIForeman-PartitionTable.xml +0 -7
  278. data/test/reports/TEST-HammerCLIForeman-SmartProxy-CreateCommand-parameters.xml +0 -13
  279. data/test/reports/TEST-HammerCLIForeman-SmartProxy-CreateCommand.xml +0 -7
  280. data/test/reports/TEST-HammerCLIForeman-SmartProxy-DeleteCommand-parameters.xml +0 -13
  281. data/test/reports/TEST-HammerCLIForeman-SmartProxy-DeleteCommand.xml +0 -7
  282. data/test/reports/TEST-HammerCLIForeman-SmartProxy-InfoCommand-output.xml +0 -21
  283. data/test/reports/TEST-HammerCLIForeman-SmartProxy-InfoCommand-parameters.xml +0 -13
  284. data/test/reports/TEST-HammerCLIForeman-SmartProxy-InfoCommand.xml +0 -7
  285. data/test/reports/TEST-HammerCLIForeman-SmartProxy-ListCommand-output.xml +0 -15
  286. data/test/reports/TEST-HammerCLIForeman-SmartProxy-ListCommand-parameters.xml +0 -11
  287. data/test/reports/TEST-HammerCLIForeman-SmartProxy-ListCommand.xml +0 -7
  288. data/test/reports/TEST-HammerCLIForeman-SmartProxy-UpdateCommand-parameters.xml +0 -15
  289. data/test/reports/TEST-HammerCLIForeman-SmartProxy-UpdateCommand.xml +0 -7
  290. data/test/reports/TEST-HammerCLIForeman-SmartProxy.xml +0 -7
  291. data/test/reports/TEST-HammerCLIForeman-Subnet-CreateCommand-parameters.xml +0 -15
  292. data/test/reports/TEST-HammerCLIForeman-Subnet-CreateCommand.xml +0 -7
  293. data/test/reports/TEST-HammerCLIForeman-Subnet-DeleteCommand-parameters.xml +0 -13
  294. data/test/reports/TEST-HammerCLIForeman-Subnet-DeleteCommand.xml +0 -7
  295. data/test/reports/TEST-HammerCLIForeman-Subnet-InfoCommand-output.xml +0 -43
  296. data/test/reports/TEST-HammerCLIForeman-Subnet-InfoCommand-parameters.xml +0 -13
  297. data/test/reports/TEST-HammerCLIForeman-Subnet-InfoCommand.xml +0 -7
  298. data/test/reports/TEST-HammerCLIForeman-Subnet-ListCommand-output.xml +0 -17
  299. data/test/reports/TEST-HammerCLIForeman-Subnet-ListCommand-parameters.xml +0 -17
  300. data/test/reports/TEST-HammerCLIForeman-Subnet-ListCommand.xml +0 -7
  301. data/test/reports/TEST-HammerCLIForeman-Subnet-UpdateCommand-parameters.xml +0 -15
  302. data/test/reports/TEST-HammerCLIForeman-Subnet-UpdateCommand.xml +0 -7
  303. data/test/reports/TEST-HammerCLIForeman-Subnet.xml +0 -7
  304. data/test/reports/TEST-HammerCLIForeman-Template-CreateCommand-parameters.xml +0 -15
  305. data/test/reports/TEST-HammerCLIForeman-Template-CreateCommand.xml +0 -7
  306. data/test/reports/TEST-HammerCLIForeman-Template-DeleteCommand-parameters.xml +0 -11
  307. data/test/reports/TEST-HammerCLIForeman-Template-DeleteCommand.xml +0 -7
  308. data/test/reports/TEST-HammerCLIForeman-Template-DumpCommand-parameters.xml +0 -12
  309. data/test/reports/TEST-HammerCLIForeman-Template-DumpCommand.xml +0 -7
  310. data/test/reports/TEST-HammerCLIForeman-Template-InfoCommand-output.xml +0 -17
  311. data/test/reports/TEST-HammerCLIForeman-Template-InfoCommand-parameters.xml +0 -11
  312. data/test/reports/TEST-HammerCLIForeman-Template-InfoCommand.xml +0 -7
  313. data/test/reports/TEST-HammerCLIForeman-Template-ListCommand-output.xml +0 -15
  314. data/test/reports/TEST-HammerCLIForeman-Template-ListCommand-parameters.xml +0 -17
  315. data/test/reports/TEST-HammerCLIForeman-Template-ListCommand.xml +0 -7
  316. data/test/reports/TEST-HammerCLIForeman-Template-ListKindsCommand-parameters.xml +0 -9
  317. data/test/reports/TEST-HammerCLIForeman-Template-ListKindsCommand.xml +0 -7
  318. data/test/reports/TEST-HammerCLIForeman-Template-UpdateCommand-parameters.xml +0 -11
  319. data/test/reports/TEST-HammerCLIForeman-Template-UpdateCommand.xml +0 -7
  320. data/test/reports/TEST-HammerCLIForeman-Template.xml +0 -7
  321. data/test/reports/TEST-HammerCLIForeman-User-CreateCommand-parameters.xml +0 -19
  322. data/test/reports/TEST-HammerCLIForeman-User-CreateCommand.xml +0 -7
  323. data/test/reports/TEST-HammerCLIForeman-User-DeleteCommand-parameters.xml +0 -11
  324. data/test/reports/TEST-HammerCLIForeman-User-DeleteCommand.xml +0 -7
  325. data/test/reports/TEST-HammerCLIForeman-User-InfoCommand-output.xml +0 -23
  326. data/test/reports/TEST-HammerCLIForeman-User-InfoCommand-parameters.xml +0 -11
  327. data/test/reports/TEST-HammerCLIForeman-User-InfoCommand.xml +0 -7
  328. data/test/reports/TEST-HammerCLIForeman-User-ListCommand-output.xml +0 -17
  329. data/test/reports/TEST-HammerCLIForeman-User-ListCommand-parameters.xml +0 -17
  330. data/test/reports/TEST-HammerCLIForeman-User-ListCommand.xml +0 -7
  331. data/test/reports/TEST-HammerCLIForeman-User-UpdateCommand-parameters.xml +0 -11
  332. data/test/reports/TEST-HammerCLIForeman-User-UpdateCommand.xml +0 -7
  333. data/test/reports/TEST-HammerCLIForeman-User.xml +0 -7
  334. data/test/reports/TEST-MiniTest-Spec.xml +0 -7
  335. data/test/unit/data/1.4/foreman_api.json +0 -10387
  336. data/test/unit/data/1.5/foreman_api.json +0 -14130
  337. data/test/unit/data/1.6/foreman_api.json +0 -1
  338. data/test/unit/data/1.6/foreman_api_back.json +0 -1
  339. data/test/unit/data/1.6/whatever.json +0 -1
  340. data/test/unit/data/1.7/foreman_api.json +0 -1
@@ -0,0 +1,65 @@
1
+ module APIExpectations
2
+
3
+ class BlockMatcher < Mocha::ParameterMatchers::Base
4
+ def initialize(resource=nil, action=nil, &block)
5
+ @expected_resource = resource
6
+ @expected_action = action
7
+ @block = block if block_given?
8
+ end
9
+
10
+ def matches?(actual_parameters)
11
+ resource, action, params, headers, options = actual_parameters.shift(5)
12
+
13
+ result = true
14
+ result &&= (resource.to_s == @expected_resource.to_s) unless @expected_resource.nil?
15
+ result &&= (action.to_s == @expected_action.to_s) unless @expected_action.nil?
16
+ result &&= @block.call(params) if @block
17
+ result
18
+ end
19
+
20
+ def mocha_inspect
21
+ res = @expected_resource.nil? ? 'any_resource' : ":#{@expected_resource}"
22
+ act = @expected_action.nil? ? 'any_action' : ":#{@expected_action}"
23
+ blk = @block ? '&block' : '*any_argument'
24
+ "#{res}, #{act}, #{blk}"
25
+ end
26
+ end
27
+
28
+ module ExpectationExtensions
29
+ def method_signature
30
+ "#{@note}\n #{super}"
31
+ end
32
+
33
+ def set_note(note)
34
+ @note = note
35
+ end
36
+ end
37
+
38
+ def api_expects(resource=nil, action=nil, note=nil, &block)
39
+ ex = ApipieBindings::API.any_instance.expects(:call)
40
+ ex.extend(ExpectationExtensions)
41
+ ex.with(BlockMatcher.new(resource, action, &block))
42
+ ex.set_note(note)
43
+ ex
44
+ end
45
+
46
+ def api_expects_no_call
47
+ ApipieBindings::API.any_instance.expects(:call).never
48
+ end
49
+
50
+ def index_response(items)
51
+ cnt = items.length
52
+ {
53
+ "total" => cnt,
54
+ "subtotal" => cnt,
55
+ "page" => 1,
56
+ "per_page" => cnt,
57
+ "search" => "",
58
+ "sort" => {
59
+ "by" => nil,
60
+ "order" => nil
61
+ },
62
+ "results" => items
63
+ }
64
+ end
65
+ end
@@ -0,0 +1,76 @@
1
+ module CommandAssertions
2
+
3
+ class CommandRunResult
4
+ def initialize(out="", err="", exit_code=0)
5
+ @out = out
6
+ @err = err
7
+ @exit_code = exit_code
8
+ end
9
+ attr_accessor :out, :err, :exit_code
10
+ end
11
+
12
+ def run_cmd(options, context={}, cmd_class=HammerCLI::MainCommand)
13
+ result = CommandRunResult.new
14
+ result.out, result.err = capture_io do
15
+ result.exit_code = cmd_class.run('hammer', options, context)
16
+ end
17
+ result
18
+ end
19
+
20
+ def exit_code_map
21
+ return @exit_code_map unless @exit_code_map.nil?
22
+
23
+ hammer_exit_codes = HammerCLI.constants.select{|c| c.to_s.start_with?('EX_')}
24
+ @exit_code_map = hammer_exit_codes.inject({}) do |code_map, code|
25
+ code_map.update(HammerCLI.const_get(code) => code)
26
+ end
27
+ end
28
+
29
+ def assert_exit_code_equal(expected_code, actual_code)
30
+ expected_info = "#{exit_code_map[expected_code]} (#{expected_code})"
31
+ actual_info = "#{exit_code_map[actual_code]} (#{actual_code})"
32
+
33
+ msg = "The exit code was expected to be #{expected_info}, but it was #{actual_info}"
34
+ assert(expected_code == actual_code, msg)
35
+ end
36
+
37
+ def assert_cmd(expected_result, actual_result)
38
+ assert_equal expected_result.err, actual_result.err
39
+ assert_equal expected_result.out, actual_result.out
40
+ assert_exit_code_equal expected_result.exit_code, actual_result.exit_code
41
+ end
42
+
43
+ def usage_error(command, heading, message)
44
+ command = (['hammer'] + command).join(' ')
45
+ ["#{heading}:",
46
+ " Error: #{message}",
47
+ " ",
48
+ " See: '#{command} --help'",
49
+ ""].join("\n")
50
+ end
51
+
52
+ def common_error(command, heading, message)
53
+ command = (['hammer'] + command).join(' ')
54
+ ["#{heading}:",
55
+ " Error: #{message}",
56
+ ""].join("\n")
57
+ end
58
+
59
+ def usage_error_result(command, heading, message)
60
+ expected_result = CommandRunResult.new
61
+ expected_result.err = usage_error(command, heading, message)
62
+ expected_result.exit_code = HammerCLI::EX_USAGE
63
+ expected_result
64
+ end
65
+
66
+ def common_error_result(command, heading, message)
67
+ expected_result = CommandRunResult.new
68
+ expected_result.err = common_error(command, heading, message)
69
+ expected_result.exit_code = HammerCLI::EX_SOFTWARE
70
+ expected_result
71
+ end
72
+
73
+ def success_result(message)
74
+ CommandRunResult.new(message)
75
+ end
76
+ end
@@ -0,0 +1,140 @@
1
+ require File.join(File.dirname(__FILE__), 'test_helper')
2
+
3
+
4
+ describe "parameters" do
5
+
6
+ let(:param) do
7
+ {
8
+ "priority" => nil,
9
+ "created_at" => "2015-12-03T01:57:55Z",
10
+ "updated_at" => "2015-12-03T01:57:55Z",
11
+ "id" => 15,
12
+ "name" => "B",
13
+ "value" => "2"
14
+ }
15
+ end
16
+
17
+ describe "set" do
18
+
19
+ before do
20
+ @cmd = ["location", "set-parameter"]
21
+ end
22
+
23
+ it "should print error on missing --name" do
24
+ params = ['--value=1']
25
+
26
+ expected_result = usage_error_result(
27
+ @cmd,
28
+ "Could not set location parameter",
29
+ "option '--name' is required"
30
+ )
31
+
32
+ api_expects_no_call
33
+ result = run_cmd(@cmd + params)
34
+ assert_cmd(expected_result, result)
35
+ end
36
+
37
+ it "should print error on missing --value" do
38
+ params = ['--name=A']
39
+
40
+ expected_result = usage_error_result(
41
+ @cmd,
42
+ "Could not set location parameter",
43
+ "option '--value' is required"
44
+ )
45
+
46
+ api_expects_no_call
47
+ result = run_cmd(@cmd + params)
48
+ assert_cmd(expected_result, result)
49
+ end
50
+
51
+
52
+ it "should create new parameter" do
53
+ params = ['--name=A', '--value=1', '--location-id=3']
54
+
55
+ api_expects(:parameters, :index, 'Attempt find parameters') do |par|
56
+ par['location_id'].to_i == 3
57
+ end.returns(index_response([]))
58
+ api_expects(:parameters, :create, 'Create parameter') do |par|
59
+ par['parameter']['name'] == 'A' &&
60
+ par['parameter']['value'] == '1'
61
+ end.returns({:name => 'A', :value => '1'})
62
+
63
+ result = run_cmd(@cmd + params)
64
+ assert_cmd(success_result("Parameter [A] created with value [1]\n"), result)
65
+ end
66
+
67
+
68
+ it "should update existing parameter" do
69
+ params = ['--name=A', '--value=1', '--location-id=3']
70
+
71
+ api_expects(:parameters, :index, 'Find parameter') do |par|
72
+ par['location_id'].to_i == 3
73
+ end.returns(index_response([param]))
74
+ api_expects(:parameters, :update, 'Update parameter') do |par|
75
+ par['id'].to_i == 15 &&
76
+ par['location_id'].to_i == 3 &&
77
+ par['parameter']['value'] == '1'
78
+ end.returns({:name => 'A', :value => '1'})
79
+
80
+ result = run_cmd(@cmd + params)
81
+ assert_cmd(success_result("Parameter [A] updated to value [1]\n"), result)
82
+ end
83
+ end
84
+
85
+
86
+ describe "delete" do
87
+ before do
88
+ @cmd = ["location", "delete-parameter"]
89
+ end
90
+
91
+ it "should print error on missing --name" do
92
+ params = []
93
+
94
+ expected_result = usage_error_result(
95
+ @cmd,
96
+ "Could not delete location parameter",
97
+ "option '--name' is required"
98
+ )
99
+
100
+ api_expects_no_call
101
+ result = run_cmd(@cmd + params)
102
+ assert_cmd(expected_result, result)
103
+ end
104
+
105
+ it "should print error when the parameter doesn't exist" do
106
+ params = ['--name=A', '--location-id=3']
107
+
108
+ api_expects(:parameters, :index, 'Find parameter') do |par|
109
+ par['location_id'].to_i == 3
110
+ end.returns(index_response([]))
111
+
112
+ expected_result = common_error_result(
113
+ @cmd,
114
+ "Could not delete location parameter",
115
+ "parameter not found"
116
+ )
117
+
118
+ result = run_cmd(@cmd + params)
119
+ assert_cmd(expected_result, result)
120
+ end
121
+
122
+ it "should delete the parameter" do
123
+ params = ['--name=A', '--location-id=3']
124
+
125
+ api_expects(:parameters, :index, 'Find parameter') do |par|
126
+ par['location_id'].to_i == 3
127
+ end.returns(index_response([param]))
128
+ api_expects(:parameters, :destroy, 'Delete parameter') do |par|
129
+ par['id'] == param['id']
130
+ end.returns({:name => 'A', :value => '1'})
131
+
132
+ expected_result = success_result(
133
+ "Parameter [A] deleted\n"
134
+ )
135
+
136
+ result = run_cmd(@cmd + params)
137
+ assert_cmd(expected_result, result)
138
+ end
139
+ end
140
+ end
@@ -0,0 +1,140 @@
1
+ require File.join(File.dirname(__FILE__), 'test_helper')
2
+
3
+
4
+ describe "parameters" do
5
+
6
+ let(:param) do
7
+ {
8
+ "priority" => nil,
9
+ "created_at" => "2015-12-03T01:57:55Z",
10
+ "updated_at" => "2015-12-03T01:57:55Z",
11
+ "id" => 15,
12
+ "name" => "B",
13
+ "value" => "2"
14
+ }
15
+ end
16
+
17
+ describe "set" do
18
+
19
+ before do
20
+ @cmd = ["organization", "set-parameter"]
21
+ end
22
+
23
+ it "should print error on missing --name" do
24
+ params = ['--value=1']
25
+
26
+ expected_result = usage_error_result(
27
+ @cmd,
28
+ "Could not set organization parameter",
29
+ "option '--name' is required"
30
+ )
31
+
32
+ api_expects_no_call
33
+ result = run_cmd(@cmd + params)
34
+ assert_cmd(expected_result, result)
35
+ end
36
+
37
+ it "should print error on missing --value" do
38
+ params = ['--name=A']
39
+
40
+ expected_result = usage_error_result(
41
+ @cmd,
42
+ "Could not set organization parameter",
43
+ "option '--value' is required"
44
+ )
45
+
46
+ api_expects_no_call
47
+ result = run_cmd(@cmd + params)
48
+ assert_cmd(expected_result, result)
49
+ end
50
+
51
+
52
+ it "should create new parameter" do
53
+ params = ['--name=A', '--value=1', '--organization-id=3']
54
+
55
+ api_expects(:parameters, :index, 'Attempt find parameters') do |par|
56
+ par['organization_id'].to_i == 3
57
+ end.returns(index_response([]))
58
+ api_expects(:parameters, :create, 'Create parameter') do |par|
59
+ par['parameter']['name'] == 'A' &&
60
+ par['parameter']['value'] == '1'
61
+ end.returns({:name => 'A', :value => '1'})
62
+
63
+ result = run_cmd(@cmd + params)
64
+ assert_cmd(success_result("Parameter [A] created with value [1]\n"), result)
65
+ end
66
+
67
+
68
+ it "should update existing parameter" do
69
+ params = ['--name=A', '--value=1', '--organization-id=3']
70
+
71
+ api_expects(:parameters, :index, 'Find parameter') do |par|
72
+ par['organization_id'].to_i == 3
73
+ end.returns(index_response([param]))
74
+ api_expects(:parameters, :update, 'Update parameter') do |par|
75
+ par['id'].to_i == 15 &&
76
+ par['organization_id'].to_i == 3 &&
77
+ par['parameter']['value'] == '1'
78
+ end.returns({:name => 'A', :value => '1'})
79
+
80
+ result = run_cmd(@cmd + params)
81
+ assert_cmd(success_result("Parameter [A] updated to value [1]\n"), result)
82
+ end
83
+ end
84
+
85
+
86
+ describe "delete" do
87
+ before do
88
+ @cmd = ["organization", "delete-parameter"]
89
+ end
90
+
91
+ it "should print error on missing --name" do
92
+ params = []
93
+
94
+ expected_result = usage_error_result(
95
+ @cmd,
96
+ "Could not delete organization parameter",
97
+ "option '--name' is required"
98
+ )
99
+
100
+ api_expects_no_call
101
+ result = run_cmd(@cmd + params)
102
+ assert_cmd(expected_result, result)
103
+ end
104
+
105
+ it "should print error when the parameter doesn't exist" do
106
+ params = ['--name=A', '--organization-id=3']
107
+
108
+ api_expects(:parameters, :index, 'Find parameter') do |par|
109
+ par['organization_id'].to_i == 3
110
+ end.returns(index_response([]))
111
+
112
+ expected_result = common_error_result(
113
+ @cmd,
114
+ "Could not delete organization parameter",
115
+ "parameter not found"
116
+ )
117
+
118
+ result = run_cmd(@cmd + params)
119
+ assert_cmd(expected_result, result)
120
+ end
121
+
122
+ it "should delete the parameter" do
123
+ params = ['--name=A', '--organization-id=3']
124
+
125
+ api_expects(:parameters, :index, 'Find parameter') do |par|
126
+ par['organization_id'].to_i == 3
127
+ end.returns(index_response([param]))
128
+ api_expects(:parameters, :destroy, 'Delete parameter') do |par|
129
+ par['id'] == param['id']
130
+ end.returns({:name => 'A', :value => '1'})
131
+
132
+ expected_result = success_result(
133
+ "Parameter [A] deleted\n"
134
+ )
135
+
136
+ result = run_cmd(@cmd + params)
137
+ assert_cmd(expected_result, result)
138
+ end
139
+ end
140
+ end
@@ -0,0 +1,7 @@
1
+ require File.join(File.dirname(__FILE__), '../test_helper')
2
+
3
+ require File.join(File.dirname(__FILE__), 'command_assertions')
4
+ require File.join(File.dirname(__FILE__), 'api_expectations')
5
+
6
+ include CommandAssertions
7
+ include APIExpectations
@@ -0,0 +1,27 @@
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
+
12
+ require 'minitest/autorun'
13
+ require 'minitest/spec'
14
+ require "minitest-spec-context"
15
+ require "mocha/setup"
16
+
17
+ require 'hammer_cli'
18
+ require 'hammer_cli_foreman/commands'
19
+
20
+ FOREMAN_VERSION = Gem::Version.new(ENV['TEST_API_VERSION'] || '1.10')
21
+
22
+ HammerCLIForeman.stubs(:resource_config).returns({
23
+ :apidoc_cache_dir => 'test/unit/data/' + FOREMAN_VERSION.to_s,
24
+ :apidoc_cache_name => 'foreman_api',
25
+ :dry_run => true})
26
+
27
+ require 'hammer_cli_foreman'