puppet 6.4.0-universal-darwin → 6.4.1-universal-darwin

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of puppet might be problematic. Click here for more details.

Files changed (646) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +0 -1
  3. data/Gemfile.lock +7 -11
  4. data/lib/puppet/application/device.rb +97 -82
  5. data/lib/puppet/application/filebucket.rb +4 -0
  6. data/lib/puppet/application/ssl.rb +2 -2
  7. data/lib/puppet/configurer.rb +5 -4
  8. data/lib/puppet/defaults.rb +33 -11
  9. data/lib/puppet/indirector/request.rb +28 -15
  10. data/lib/puppet/ssl.rb +1 -1
  11. data/lib/puppet/ssl/certificate.rb +1 -1
  12. data/lib/puppet/ssl/error.rb +1 -1
  13. data/lib/puppet/ssl/host.rb +0 -47
  14. data/lib/puppet/ssl/ssl_provider.rb +2 -2
  15. data/lib/puppet/ssl/state_machine.rb +16 -17
  16. data/lib/puppet/ssl/validator/default_validator.rb +4 -4
  17. data/lib/puppet/ssl/verifier.rb +1 -1
  18. data/lib/puppet/transaction/event_manager.rb +1 -5
  19. data/lib/puppet/util/connection.rb +15 -8
  20. data/lib/puppet/util/monkey_patches.rb +20 -1
  21. data/lib/puppet/version.rb +1 -1
  22. data/locales/puppet.pot +135 -68
  23. data/man/man5/puppet.conf.5 +9 -9
  24. data/man/man8/puppet-agent.8 +1 -1
  25. data/man/man8/puppet-apply.8 +1 -1
  26. data/man/man8/puppet-catalog.8 +1 -1
  27. data/man/man8/puppet-config.8 +1 -1
  28. data/man/man8/puppet-describe.8 +1 -1
  29. data/man/man8/puppet-device.8 +1 -1
  30. data/man/man8/puppet-doc.8 +1 -1
  31. data/man/man8/puppet-epp.8 +1 -1
  32. data/man/man8/puppet-facts.8 +1 -1
  33. data/man/man8/puppet-filebucket.8 +1 -1
  34. data/man/man8/puppet-generate.8 +1 -1
  35. data/man/man8/puppet-help.8 +1 -1
  36. data/man/man8/puppet-key.8 +1 -1
  37. data/man/man8/puppet-lookup.8 +1 -1
  38. data/man/man8/puppet-man.8 +1 -1
  39. data/man/man8/puppet-module.8 +1 -1
  40. data/man/man8/puppet-node.8 +1 -1
  41. data/man/man8/puppet-parser.8 +1 -1
  42. data/man/man8/puppet-plugin.8 +1 -1
  43. data/man/man8/puppet-report.8 +1 -1
  44. data/man/man8/puppet-resource.8 +1 -1
  45. data/man/man8/puppet-script.8 +1 -1
  46. data/man/man8/puppet-ssl.8 +1 -1
  47. data/man/man8/puppet-status.8 +1 -1
  48. data/man/man8/puppet.8 +2 -2
  49. data/spec/integration/agent/logging_spec.rb +5 -7
  50. data/spec/integration/application/apply_spec.rb +18 -16
  51. data/spec/integration/application/doc_spec.rb +1 -2
  52. data/spec/integration/application/lookup_spec.rb +5 -5
  53. data/spec/integration/configurer_spec.rb +5 -6
  54. data/spec/integration/defaults_spec.rb +5 -6
  55. data/spec/integration/directory_environments_spec.rb +1 -1
  56. data/spec/integration/faces/config_spec.rb +3 -4
  57. data/spec/integration/faces/documentation_spec.rb +0 -1
  58. data/spec/integration/faces/plugin_spec.rb +1 -1
  59. data/spec/integration/file_bucket/file_spec.rb +2 -4
  60. data/spec/integration/file_serving/content_spec.rb +0 -1
  61. data/spec/integration/file_serving/fileset_spec.rb +0 -1
  62. data/spec/integration/file_serving/metadata_spec.rb +0 -1
  63. data/spec/integration/file_serving/terminus_helper_spec.rb +0 -1
  64. data/spec/integration/indirector/catalog/compiler_spec.rb +10 -11
  65. data/spec/integration/indirector/direct_file_server_spec.rb +1 -1
  66. data/spec/integration/indirector/facts/facter_spec.rb +4 -5
  67. data/spec/integration/indirector/file_content/file_server_spec.rb +7 -8
  68. data/spec/integration/indirector/file_metadata/file_server_spec.rb +7 -8
  69. data/spec/integration/network/authconfig_spec.rb +23 -24
  70. data/spec/integration/network/formats_spec.rb +0 -1
  71. data/spec/integration/network/http_pool_spec.rb +3 -3
  72. data/spec/integration/node/environment_spec.rb +0 -1
  73. data/spec/integration/node/facts_spec.rb +9 -10
  74. data/spec/integration/node_spec.rb +6 -7
  75. data/spec/integration/parser/catalog_spec.rb +1 -5
  76. data/spec/integration/parser/collection_spec.rb +1 -2
  77. data/spec/integration/parser/compiler_spec.rb +6 -6
  78. data/spec/integration/parser/scope_spec.rb +1 -1
  79. data/spec/integration/parser/undef_param_spec.rb +1 -1
  80. data/spec/integration/provider/service/init_spec.rb +4 -5
  81. data/spec/integration/provider/service/systemd_spec.rb +0 -2
  82. data/spec/integration/provider/service/windows_spec.rb +1 -2
  83. data/spec/integration/reference/providers_spec.rb +1 -2
  84. data/spec/integration/reports_spec.rb +1 -2
  85. data/spec/integration/resource/catalog_spec.rb +14 -17
  86. data/spec/integration/resource/type_collection_spec.rb +4 -5
  87. data/spec/integration/rest/client_spec.rb +1 -1
  88. data/spec/integration/ssl/certificate_request_spec.rb +0 -1
  89. data/spec/integration/ssl/host_spec.rb +1 -2
  90. data/spec/integration/ssl/key_spec.rb +0 -1
  91. data/spec/integration/test/test_helper_spec.rb +0 -1
  92. data/spec/integration/transaction/report_spec.rb +6 -11
  93. data/spec/integration/transaction_spec.rb +18 -19
  94. data/spec/integration/type/exec_spec.rb +0 -1
  95. data/spec/integration/type/file_spec.rb +13 -14
  96. data/spec/integration/type/package_spec.rb +19 -23
  97. data/spec/integration/type/tidy_spec.rb +1 -2
  98. data/spec/integration/type_spec.rb +0 -1
  99. data/spec/integration/util/autoload_spec.rb +1 -2
  100. data/spec/integration/util/rdoc/parser_spec.rb +0 -1
  101. data/spec/integration/util/settings_spec.rb +0 -1
  102. data/spec/integration/util/windows/adsi_spec.rb +3 -5
  103. data/spec/integration/util/windows/principal_spec.rb +0 -1
  104. data/spec/integration/util/windows/process_spec.rb +4 -6
  105. data/spec/integration/util/windows/registry_spec.rb +41 -51
  106. data/spec/integration/util/windows/security_spec.rb +2 -4
  107. data/spec/integration/util/windows/user_spec.rb +18 -20
  108. data/spec/integration/util_spec.rb +4 -7
  109. data/spec/lib/puppet_spec/compiler.rb +1 -1
  110. data/spec/lib/puppet_spec/files.rb +0 -1
  111. data/spec/lib/puppet_spec/module_tool/shared_functions.rb +1 -1
  112. data/spec/lib/puppet_spec/scope.rb +1 -2
  113. data/spec/shared_behaviours/all_parsedfile_providers.rb +1 -1
  114. data/spec/shared_behaviours/file_server_terminus.rb +8 -9
  115. data/spec/shared_behaviours/file_serving.rb +6 -8
  116. data/spec/shared_behaviours/file_serving_model.rb +3 -5
  117. data/spec/shared_behaviours/hiera_indirections.rb +3 -4
  118. data/spec/shared_behaviours/iterative_functions.rb +0 -1
  119. data/spec/shared_behaviours/memory_terminus.rb +2 -2
  120. data/spec/shared_examples/rhel_package_provider.rb +112 -70
  121. data/spec/spec_helper.rb +10 -1
  122. data/spec/unit/agent/disabler_spec.rb +4 -5
  123. data/spec/unit/agent/locker_spec.rb +12 -13
  124. data/spec/unit/agent_spec.rb +80 -85
  125. data/spec/unit/application/agent_spec.rb +88 -94
  126. data/spec/unit/application/apply_spec.rb +82 -83
  127. data/spec/unit/application/config_spec.rb +0 -1
  128. data/spec/unit/application/describe_spec.rb +6 -7
  129. data/spec/unit/application/device_spec.rb +379 -384
  130. data/spec/unit/application/doc_spec.rb +44 -46
  131. data/spec/unit/application/face_base_spec.rb +61 -62
  132. data/spec/unit/application/facts_spec.rb +3 -4
  133. data/spec/unit/application/filebucket_spec.rb +66 -74
  134. data/spec/unit/application/indirection_base_spec.rb +8 -6
  135. data/spec/unit/application/lookup_spec.rb +26 -26
  136. data/spec/unit/application/resource_spec.rb +42 -48
  137. data/spec/unit/application/ssl_spec.rb +9 -9
  138. data/spec/unit/application_spec.rb +82 -92
  139. data/spec/unit/capability_spec.rb +6 -6
  140. data/spec/unit/certificate_factory_spec.rb +3 -5
  141. data/spec/unit/configurer/downloader_spec.rb +20 -21
  142. data/spec/unit/configurer/fact_handler_spec.rb +2 -3
  143. data/spec/unit/configurer/plugin_handler_spec.rb +41 -8
  144. data/spec/unit/configurer_spec.rb +189 -192
  145. data/spec/unit/confine/exists_spec.rb +17 -15
  146. data/spec/unit/confine/false_spec.rb +5 -6
  147. data/spec/unit/confine/feature_spec.rb +7 -5
  148. data/spec/unit/confine/true_spec.rb +5 -6
  149. data/spec/unit/confine/variable_spec.rb +14 -15
  150. data/spec/unit/confine_collection_spec.rb +28 -29
  151. data/spec/unit/confine_spec.rb +13 -14
  152. data/spec/unit/confiner_spec.rb +10 -11
  153. data/spec/unit/context/trusted_information_spec.rb +1 -1
  154. data/spec/unit/daemon_spec.rb +35 -36
  155. data/spec/unit/data_providers/function_data_provider_spec.rb +0 -1
  156. data/spec/unit/data_providers/hiera_data_provider_spec.rb +0 -1
  157. data/spec/unit/datatypes_spec.rb +3 -4
  158. data/spec/unit/defaults_spec.rb +18 -13
  159. data/spec/unit/environments_spec.rb +7 -7
  160. data/spec/unit/etc_spec.rb +30 -32
  161. data/spec/unit/external/pson_spec.rb +0 -1
  162. data/spec/unit/face/catalog_spec.rb +0 -1
  163. data/spec/unit/face/config_spec.rb +31 -35
  164. data/spec/unit/face/epp_face_spec.rb +3 -4
  165. data/spec/unit/face/facts_spec.rb +5 -6
  166. data/spec/unit/face/generate_spec.rb +4 -5
  167. data/spec/unit/face/help_spec.rb +7 -8
  168. data/spec/unit/face/key_spec.rb +0 -1
  169. data/spec/unit/face/man_spec.rb +1 -2
  170. data/spec/unit/face/module/install_spec.rb +3 -5
  171. data/spec/unit/face/module/list_spec.rb +2 -12
  172. data/spec/unit/face/module/search_spec.rb +11 -9
  173. data/spec/unit/face/module/uninstall_spec.rb +4 -8
  174. data/spec/unit/face/node_spec.rb +23 -24
  175. data/spec/unit/face/parser_spec.rb +3 -3
  176. data/spec/unit/face/plugin_spec.rb +36 -9
  177. data/spec/unit/face/status_spec.rb +0 -1
  178. data/spec/unit/file_bucket/dipper_spec.rb +24 -20
  179. data/spec/unit/file_bucket/file_spec.rb +0 -2
  180. data/spec/unit/file_serving/base_spec.rb +14 -15
  181. data/spec/unit/file_serving/configuration/parser_spec.rb +27 -28
  182. data/spec/unit/file_serving/configuration_spec.rb +63 -66
  183. data/spec/unit/file_serving/content_spec.rb +10 -11
  184. data/spec/unit/file_serving/fileset_spec.rb +63 -58
  185. data/spec/unit/file_serving/http_metadata_spec.rb +8 -7
  186. data/spec/unit/file_serving/metadata_spec.rb +36 -36
  187. data/spec/unit/file_serving/mount/file_spec.rb +31 -32
  188. data/spec/unit/file_serving/mount/locales_spec.rb +23 -24
  189. data/spec/unit/file_serving/mount/modules_spec.rb +14 -15
  190. data/spec/unit/file_serving/mount/pluginfacts_spec.rb +23 -24
  191. data/spec/unit/file_serving/mount/plugins_spec.rb +23 -24
  192. data/spec/unit/file_serving/mount/tasks_spec.rb +14 -15
  193. data/spec/unit/file_serving/mount_spec.rb +0 -1
  194. data/spec/unit/file_serving/terminus_helper_spec.rb +37 -42
  195. data/spec/unit/file_serving/terminus_selector_spec.rb +12 -13
  196. data/spec/unit/file_system/uniquefile_spec.rb +4 -4
  197. data/spec/unit/file_system_spec.rb +4 -4
  198. data/spec/unit/forge/errors_spec.rb +1 -1
  199. data/spec/unit/forge/forge_spec.rb +13 -14
  200. data/spec/unit/forge/module_release_spec.rb +18 -18
  201. data/spec/unit/forge/repository_spec.rb +29 -30
  202. data/spec/unit/forge_spec.rb +15 -11
  203. data/spec/unit/functions/binary_file_spec.rb +3 -3
  204. data/spec/unit/functions/contain_spec.rb +0 -2
  205. data/spec/unit/functions/defined_spec.rb +0 -1
  206. data/spec/unit/functions/epp_spec.rb +2 -2
  207. data/spec/unit/functions/find_file_spec.rb +7 -7
  208. data/spec/unit/functions/include_spec.rb +0 -4
  209. data/spec/unit/functions/lookup_fixture_spec.rb +0 -1
  210. data/spec/unit/functions/lookup_spec.rb +1 -2
  211. data/spec/unit/functions/module_directory_spec.rb +12 -12
  212. data/spec/unit/functions/require_spec.rb +0 -3
  213. data/spec/unit/functions/shared.rb +5 -8
  214. data/spec/unit/functions/versioncmp_spec.rb +1 -2
  215. data/spec/unit/functions4_spec.rb +9 -10
  216. data/spec/unit/gettext/config_spec.rb +4 -4
  217. data/spec/unit/gettext/module_loading_spec.rb +7 -7
  218. data/spec/unit/graph/rb_tree_map_spec.rb +0 -2
  219. data/spec/unit/graph/relationship_graph_spec.rb +1 -2
  220. data/spec/unit/graph/simple_graph_spec.rb +9 -10
  221. data/spec/unit/hiera_puppet_spec.rb +20 -20
  222. data/spec/unit/indirector/catalog/compiler_spec.rb +147 -149
  223. data/spec/unit/indirector/catalog/json_spec.rb +1 -2
  224. data/spec/unit/indirector/catalog/msgpack_spec.rb +0 -1
  225. data/spec/unit/indirector/catalog/rest_spec.rb +0 -1
  226. data/spec/unit/indirector/catalog/store_configs_spec.rb +0 -1
  227. data/spec/unit/indirector/catalog/yaml_spec.rb +0 -1
  228. data/spec/unit/indirector/certificate/file_spec.rb +0 -1
  229. data/spec/unit/indirector/certificate/rest_spec.rb +8 -10
  230. data/spec/unit/indirector/certificate_request/file_spec.rb +0 -1
  231. data/spec/unit/indirector/certificate_request/rest_spec.rb +0 -1
  232. data/spec/unit/indirector/direct_file_server_spec.rb +17 -18
  233. data/spec/unit/indirector/envelope_spec.rb +1 -2
  234. data/spec/unit/indirector/exec_spec.rb +4 -5
  235. data/spec/unit/indirector/face_spec.rb +9 -9
  236. data/spec/unit/indirector/facts/facter_spec.rb +37 -43
  237. data/spec/unit/indirector/facts/network_device_spec.rb +8 -9
  238. data/spec/unit/indirector/facts/rest_spec.rb +7 -8
  239. data/spec/unit/indirector/facts/store_configs_spec.rb +0 -1
  240. data/spec/unit/indirector/facts/yaml_spec.rb +0 -1
  241. data/spec/unit/indirector/file_bucket_file/file_spec.rb +3 -4
  242. data/spec/unit/indirector/file_bucket_file/rest_spec.rb +0 -1
  243. data/spec/unit/indirector/file_bucket_file/selector_spec.rb +4 -5
  244. data/spec/unit/indirector/file_content/file_server_spec.rb +0 -1
  245. data/spec/unit/indirector/file_content/file_spec.rb +0 -1
  246. data/spec/unit/indirector/file_content/rest_spec.rb +0 -1
  247. data/spec/unit/indirector/file_content/selector_spec.rb +0 -1
  248. data/spec/unit/indirector/file_metadata/file_server_spec.rb +0 -1
  249. data/spec/unit/indirector/file_metadata/file_spec.rb +12 -13
  250. data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -1
  251. data/spec/unit/indirector/file_metadata/selector_spec.rb +0 -1
  252. data/spec/unit/indirector/file_server_spec.rb +87 -87
  253. data/spec/unit/indirector/indirection_spec.rb +242 -226
  254. data/spec/unit/indirector/json_spec.rb +7 -9
  255. data/spec/unit/indirector/key/file_spec.rb +21 -22
  256. data/spec/unit/indirector/memory_spec.rb +6 -7
  257. data/spec/unit/indirector/msgpack_spec.rb +7 -9
  258. data/spec/unit/indirector/node/exec_spec.rb +2 -3
  259. data/spec/unit/indirector/node/memory_spec.rb +2 -4
  260. data/spec/unit/indirector/node/msgpack_spec.rb +0 -1
  261. data/spec/unit/indirector/node/plain_spec.rb +2 -4
  262. data/spec/unit/indirector/node/rest_spec.rb +0 -1
  263. data/spec/unit/indirector/node/store_configs_spec.rb +0 -1
  264. data/spec/unit/indirector/node/yaml_spec.rb +0 -1
  265. data/spec/unit/indirector/none_spec.rb +5 -5
  266. data/spec/unit/indirector/plain_spec.rb +7 -8
  267. data/spec/unit/indirector/report/msgpack_spec.rb +0 -1
  268. data/spec/unit/indirector/report/processor_spec.rb +21 -22
  269. data/spec/unit/indirector/report/rest_spec.rb +11 -12
  270. data/spec/unit/indirector/report/yaml_spec.rb +0 -1
  271. data/spec/unit/indirector/request_spec.rb +11 -12
  272. data/spec/unit/indirector/resource/ral_spec.rb +47 -54
  273. data/spec/unit/indirector/resource/store_configs_spec.rb +0 -1
  274. data/spec/unit/indirector/rest_spec.rb +113 -110
  275. data/spec/unit/indirector/ssl_file_spec.rb +64 -65
  276. data/spec/unit/indirector/status/local_spec.rb +0 -1
  277. data/spec/unit/indirector/status/rest_spec.rb +0 -1
  278. data/spec/unit/indirector/store_configs_spec.rb +0 -1
  279. data/spec/unit/indirector/terminus_spec.rb +27 -27
  280. data/spec/unit/indirector/yaml_spec.rb +5 -6
  281. data/spec/unit/indirector_spec.rb +1 -2
  282. data/spec/unit/info_service_spec.rb +1 -1
  283. data/spec/unit/interface/action_builder_spec.rb +0 -1
  284. data/spec/unit/interface/action_manager_spec.rb +0 -1
  285. data/spec/unit/interface/action_spec.rb +2 -3
  286. data/spec/unit/interface/documentation_spec.rb +0 -1
  287. data/spec/unit/interface/face_collection_spec.rb +19 -12
  288. data/spec/unit/interface_spec.rb +3 -3
  289. data/spec/unit/man_spec.rb +3 -4
  290. data/spec/unit/module_spec.rb +46 -51
  291. data/spec/unit/module_tool/applications/installer_spec.rb +10 -11
  292. data/spec/unit/module_tool/applications/searcher_spec.rb +3 -3
  293. data/spec/unit/module_tool/applications/uninstaller_spec.rb +1 -2
  294. data/spec/unit/module_tool/applications/unpacker_spec.rb +13 -13
  295. data/spec/unit/module_tool/applications/upgrader_spec.rb +5 -5
  296. data/spec/unit/module_tool/install_directory_spec.rb +8 -8
  297. data/spec/unit/module_tool/installed_modules_spec.rb +3 -3
  298. data/spec/unit/module_tool/tar/gnu_spec.rb +6 -6
  299. data/spec/unit/module_tool/tar/mini_spec.rb +12 -12
  300. data/spec/unit/module_tool/tar_spec.rb +12 -13
  301. data/spec/unit/module_tool_spec.rb +7 -12
  302. data/spec/unit/network/auth_config_parser_spec.rb +11 -13
  303. data/spec/unit/network/authconfig_spec.rb +17 -18
  304. data/spec/unit/network/authorization_spec.rb +4 -5
  305. data/spec/unit/network/authstore_spec.rb +0 -1
  306. data/spec/unit/network/format_handler_spec.rb +0 -1
  307. data/spec/unit/network/format_spec.rb +9 -10
  308. data/spec/unit/network/format_support_spec.rb +28 -29
  309. data/spec/unit/network/formats_spec.rb +4 -5
  310. data/spec/unit/network/http/api/indirected_routes_spec.rb +24 -29
  311. data/spec/unit/network/http/api/master/v3/authorization_spec.rb +2 -2
  312. data/spec/unit/network/http/api/master/v3/environment_spec.rb +1 -1
  313. data/spec/unit/network/http/api/master/v3/environments_spec.rb +6 -7
  314. data/spec/unit/network/http/api_spec.rb +0 -2
  315. data/spec/unit/network/http/compression_spec.rb +21 -22
  316. data/spec/unit/network/http/connection_spec.rb +35 -35
  317. data/spec/unit/network/http/factory_spec.rb +5 -6
  318. data/spec/unit/network/http/handler_spec.rb +9 -18
  319. data/spec/unit/network/http/nocache_pool_spec.rb +6 -7
  320. data/spec/unit/network/http/pool_spec.rb +33 -34
  321. data/spec/unit/network/http/request_spec.rb +0 -2
  322. data/spec/unit/network/http/response_spec.rb +11 -13
  323. data/spec/unit/network/http/route_spec.rb +0 -1
  324. data/spec/unit/network/http/session_spec.rb +2 -3
  325. data/spec/unit/network/http/site_spec.rb +0 -1
  326. data/spec/unit/network/http_pool_spec.rb +19 -10
  327. data/spec/unit/network/http_spec.rb +0 -1
  328. data/spec/unit/network/resolver_spec.rb +25 -26
  329. data/spec/unit/network/rights_spec.rb +52 -53
  330. data/spec/unit/node/environment_spec.rb +14 -15
  331. data/spec/unit/node/facts_spec.rb +5 -7
  332. data/spec/unit/node_spec.rb +4 -10
  333. data/spec/unit/other/selinux_spec.rb +0 -1
  334. data/spec/unit/parameter/boolean_spec.rb +1 -2
  335. data/spec/unit/parameter/package_options_spec.rb +1 -2
  336. data/spec/unit/parameter/path_spec.rb +0 -1
  337. data/spec/unit/parameter/value_collection_spec.rb +0 -1
  338. data/spec/unit/parameter/value_spec.rb +0 -1
  339. data/spec/unit/parameter_spec.rb +9 -9
  340. data/spec/unit/parser/ast/block_expression_spec.rb +6 -8
  341. data/spec/unit/parser/ast/leaf_spec.rb +20 -21
  342. data/spec/unit/parser/compiler_spec.rb +84 -96
  343. data/spec/unit/parser/environment_compiler_spec.rb +7 -8
  344. data/spec/unit/parser/files_spec.rb +0 -1
  345. data/spec/unit/parser/functions/create_resources_spec.rb +1 -1
  346. data/spec/unit/parser/functions/digest_spec.rb +0 -1
  347. data/spec/unit/parser/functions/fail_spec.rb +1 -2
  348. data/spec/unit/parser/functions/file_spec.rb +13 -14
  349. data/spec/unit/parser/functions/fqdn_rand_spec.rb +5 -6
  350. data/spec/unit/parser/functions/generate_spec.rb +7 -8
  351. data/spec/unit/parser/functions/inline_template_spec.rb +0 -1
  352. data/spec/unit/parser/functions/regsubst_spec.rb +0 -1
  353. data/spec/unit/parser/functions/scanf_spec.rb +0 -1
  354. data/spec/unit/parser/functions/shellquote_spec.rb +0 -1
  355. data/spec/unit/parser/functions/split_spec.rb +0 -1
  356. data/spec/unit/parser/functions/sprintf_spec.rb +0 -1
  357. data/spec/unit/parser/functions/tag_spec.rb +1 -2
  358. data/spec/unit/parser/functions/tagged_spec.rb +2 -3
  359. data/spec/unit/parser/functions/template_spec.rb +13 -13
  360. data/spec/unit/parser/functions/versioncmp_spec.rb +1 -2
  361. data/spec/unit/parser/functions_spec.rb +6 -7
  362. data/spec/unit/parser/relationship_spec.rb +0 -1
  363. data/spec/unit/parser/resource_spec.rb +42 -42
  364. data/spec/unit/parser/scope_spec.rb +39 -35
  365. data/spec/unit/parser/templatewrapper_spec.rb +11 -12
  366. data/spec/unit/parser/type_loader_spec.rb +17 -19
  367. data/spec/unit/pops/adaptable_spec.rb +0 -1
  368. data/spec/unit/pops/benchmark_spec.rb +0 -1
  369. data/spec/unit/pops/evaluator/access_ops_spec.rb +0 -1
  370. data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +0 -1
  371. data/spec/unit/pops/evaluator/basic_expressions_spec.rb +0 -1
  372. data/spec/unit/pops/evaluator/collections_ops_spec.rb +0 -1
  373. data/spec/unit/pops/evaluator/comparison_ops_spec.rb +0 -1
  374. data/spec/unit/pops/evaluator/conditionals_spec.rb +0 -1
  375. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +10 -11
  376. data/spec/unit/pops/evaluator/logical_ops_spec.rb +0 -1
  377. data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +0 -1
  378. data/spec/unit/pops/evaluator/string_interpolation_spec.rb +0 -1
  379. data/spec/unit/pops/evaluator/variables_spec.rb +0 -1
  380. data/spec/unit/pops/factory_spec.rb +3 -4
  381. data/spec/unit/pops/issues_spec.rb +19 -20
  382. data/spec/unit/pops/loaders/loader_spec.rb +9 -5
  383. data/spec/unit/pops/loaders/loaders_spec.rb +31 -28
  384. data/spec/unit/pops/lookup/context_spec.rb +0 -1
  385. data/spec/unit/pops/lookup/interpolation_spec.rb +2 -3
  386. data/spec/unit/pops/merge_strategy_spec.rb +0 -1
  387. data/spec/unit/pops/migration_spec.rb +3 -5
  388. data/spec/unit/pops/model/model_spec.rb +0 -1
  389. data/spec/unit/pops/model/pn_transformer_spec.rb +0 -1
  390. data/spec/unit/pops/parser/locator_spec.rb +3 -6
  391. data/spec/unit/pops/parser/parse_application_spec.rb +0 -1
  392. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +0 -1
  393. data/spec/unit/pops/parser/parse_calls_spec.rb +0 -1
  394. data/spec/unit/pops/parser/parse_capabilities_spec.rb +0 -1
  395. data/spec/unit/pops/parser/parse_conditionals_spec.rb +0 -1
  396. data/spec/unit/pops/parser/parse_containers_spec.rb +0 -1
  397. data/spec/unit/pops/parser/parse_plan_spec.rb +0 -1
  398. data/spec/unit/pops/parser/parse_resource_spec.rb +0 -1
  399. data/spec/unit/pops/parser/parse_site_spec.rb +0 -1
  400. data/spec/unit/pops/parser/pn_parser_spec.rb +0 -1
  401. data/spec/unit/pops/pn_spec.rb +0 -1
  402. data/spec/unit/pops/resource/resource_type_impl_spec.rb +0 -1
  403. data/spec/unit/pops/serialization/serialization_spec.rb +1 -1
  404. data/spec/unit/pops/serialization/to_from_hr_spec.rb +1 -1
  405. data/spec/unit/pops/types/recursion_guard_spec.rb +10 -10
  406. data/spec/unit/pops/types/ruby_generator_spec.rb +2 -2
  407. data/spec/unit/pops/types/type_asserter_spec.rb +2 -2
  408. data/spec/unit/pops/types/type_calculator_spec.rb +30 -30
  409. data/spec/unit/pops/types/type_parser_spec.rb +13 -13
  410. data/spec/unit/pops/validator/validator_spec.rb +1 -2
  411. data/spec/unit/pops/visitor_spec.rb +0 -1
  412. data/spec/unit/property/boolean_spec.rb +1 -1
  413. data/spec/unit/property/ensure_spec.rb +0 -1
  414. data/spec/unit/property/keyvalue_spec.rb +32 -34
  415. data/spec/unit/property/list_spec.rb +26 -27
  416. data/spec/unit/property/ordered_list_spec.rb +10 -14
  417. data/spec/unit/property_spec.rb +42 -43
  418. data/spec/unit/provider/aix_object_spec.rb +47 -45
  419. data/spec/unit/provider/command_spec.rb +9 -9
  420. data/spec/unit/provider/exec/posix_spec.rb +8 -9
  421. data/spec/unit/provider/exec/shell_spec.rb +0 -1
  422. data/spec/unit/provider/exec/windows_spec.rb +2 -4
  423. data/spec/unit/provider/exec_spec.rb +0 -1
  424. data/spec/unit/provider/file/posix_spec.rb +22 -24
  425. data/spec/unit/provider/file/windows_spec.rb +15 -17
  426. data/spec/unit/provider/group/aix_spec.rb +3 -2
  427. data/spec/unit/provider/group/groupadd_spec.rb +30 -26
  428. data/spec/unit/provider/group/ldap_spec.rb +18 -18
  429. data/spec/unit/provider/group/pw_spec.rb +11 -11
  430. data/spec/unit/provider/group/windows_adsi_spec.rb +54 -54
  431. data/spec/unit/provider/ldap_spec.rb +61 -62
  432. data/spec/unit/provider/nameservice/directoryservice_spec.rb +35 -36
  433. data/spec/unit/provider/nameservice_spec.rb +38 -40
  434. data/spec/unit/provider/package/aix_spec.rb +15 -15
  435. data/spec/unit/provider/package/appdmg_spec.rb +13 -13
  436. data/spec/unit/provider/package/apt_spec.rb +44 -27
  437. data/spec/unit/provider/package/aptitude_spec.rb +6 -7
  438. data/spec/unit/provider/package/aptrpm_spec.rb +7 -12
  439. data/spec/unit/provider/package/base_spec.rb +4 -4
  440. data/spec/unit/provider/package/dnf_spec.rb +18 -20
  441. data/spec/unit/provider/package/dpkg_spec.rb +52 -52
  442. data/spec/unit/provider/package/freebsd_spec.rb +11 -11
  443. data/spec/unit/provider/package/gem_spec.rb +51 -43
  444. data/spec/unit/provider/package/hpux_spec.rb +8 -8
  445. data/spec/unit/provider/package/macports_spec.rb +46 -42
  446. data/spec/unit/provider/package/nim_spec.rb +30 -39
  447. data/spec/unit/provider/package/openbsd_spec.rb +36 -39
  448. data/spec/unit/provider/package/opkg_spec.rb +23 -26
  449. data/spec/unit/provider/package/pacman_spec.rb +97 -118
  450. data/spec/unit/provider/package/pip_spec.rb +71 -72
  451. data/spec/unit/provider/package/pkg_spec.rb +113 -114
  452. data/spec/unit/provider/package/pkgdmg_spec.rb +65 -63
  453. data/spec/unit/provider/package/pkgin_spec.rb +10 -8
  454. data/spec/unit/provider/package/pkgng_spec.rb +21 -22
  455. data/spec/unit/provider/package/pkgutil_spec.rb +45 -49
  456. data/spec/unit/provider/package/portage_spec.rb +71 -75
  457. data/spec/unit/provider/package/puppet_gem_spec.rb +28 -8
  458. data/spec/unit/provider/package/rpm_spec.rb +53 -64
  459. data/spec/unit/provider/package/sun_spec.rb +16 -18
  460. data/spec/unit/provider/package/tdnf_spec.rb +2 -2
  461. data/spec/unit/provider/package/up2date_spec.rb +2 -4
  462. data/spec/unit/provider/package/urpmi_spec.rb +15 -17
  463. data/spec/unit/provider/package/windows/exe_package_spec.rb +12 -15
  464. data/spec/unit/provider/package/windows/msi_package_spec.rb +19 -22
  465. data/spec/unit/provider/package/windows/package_spec.rb +37 -42
  466. data/spec/unit/provider/package/windows_spec.rb +36 -32
  467. data/spec/unit/provider/package/yum_spec.rb +7 -7
  468. data/spec/unit/provider/package/zypper_spec.rb +87 -87
  469. data/spec/unit/provider/parsedfile_spec.rb +44 -45
  470. data/spec/unit/provider/service/base_spec.rb +4 -5
  471. data/spec/unit/provider/service/bsd_spec.rb +27 -29
  472. data/spec/unit/provider/service/daemontools_spec.rb +35 -35
  473. data/spec/unit/provider/service/debian_spec.rb +38 -38
  474. data/spec/unit/provider/service/freebsd_spec.rb +18 -18
  475. data/spec/unit/provider/service/gentoo_spec.rb +50 -55
  476. data/spec/unit/provider/service/init_spec.rb +53 -52
  477. data/spec/unit/provider/service/launchd_spec.rb +138 -116
  478. data/spec/unit/provider/service/openbsd_spec.rb +50 -50
  479. data/spec/unit/provider/service/openrc_spec.rb +43 -45
  480. data/spec/unit/provider/service/openwrt_spec.rb +26 -31
  481. data/spec/unit/provider/service/rcng_spec.rb +14 -14
  482. data/spec/unit/provider/service/redhat_spec.rb +45 -43
  483. data/spec/unit/provider/service/runit_spec.rb +29 -27
  484. data/spec/unit/provider/service/smf_spec.rb +74 -66
  485. data/spec/unit/provider/service/src_spec.rb +46 -47
  486. data/spec/unit/provider/service/systemd_spec.rb +113 -122
  487. data/spec/unit/provider/service/upstart_spec.rb +74 -71
  488. data/spec/unit/provider/service/windows_spec.rb +33 -41
  489. data/spec/unit/provider/user/aix_spec.rb +31 -31
  490. data/spec/unit/provider/user/directoryservice_spec.rb +109 -114
  491. data/spec/unit/provider/user/hpux_spec.rb +16 -16
  492. data/spec/unit/provider/user/ldap_spec.rb +57 -57
  493. data/spec/unit/provider/user/openbsd_spec.rb +10 -12
  494. data/spec/unit/provider/user/pw_spec.rb +37 -35
  495. data/spec/unit/provider/user/user_role_add_spec.rb +93 -93
  496. data/spec/unit/provider/user/useradd_spec.rb +93 -92
  497. data/spec/unit/provider/user/windows_adsi_spec.rb +59 -60
  498. data/spec/unit/provider_spec.rb +35 -35
  499. data/spec/unit/puppet_pal_2pec.rb +4 -5
  500. data/spec/unit/puppet_pal_spec.rb +0 -1
  501. data/spec/unit/puppet_spec.rb +6 -7
  502. data/spec/unit/relationship_spec.rb +0 -1
  503. data/spec/unit/reports/http_spec.rb +22 -24
  504. data/spec/unit/reports/store_spec.rb +3 -4
  505. data/spec/unit/reports_spec.rb +12 -14
  506. data/spec/unit/resource/capability_finder_spec.rb +15 -17
  507. data/spec/unit/resource/catalog_spec.rb +72 -68
  508. data/spec/unit/resource/status_spec.rb +6 -8
  509. data/spec/unit/resource/type_collection_spec.rb +17 -18
  510. data/spec/unit/resource/type_spec.rb +34 -35
  511. data/spec/unit/resource_spec.rb +36 -32
  512. data/spec/unit/rest/client_spec.rb +56 -25
  513. data/spec/unit/rest/route_spec.rb +5 -5
  514. data/spec/unit/scheduler/job_spec.rb +0 -1
  515. data/spec/unit/scheduler/scheduler_spec.rb +0 -1
  516. data/spec/unit/scheduler/splay_job_spec.rb +1 -2
  517. data/spec/unit/settings/array_setting_spec.rb +1 -1
  518. data/spec/unit/settings/autosign_setting_spec.rb +9 -9
  519. data/spec/unit/settings/certificate_revocation_setting_spec.rb +1 -1
  520. data/spec/unit/settings/config_file_spec.rb +0 -1
  521. data/spec/unit/settings/directory_setting_spec.rb +2 -7
  522. data/spec/unit/settings/duration_setting_spec.rb +1 -2
  523. data/spec/unit/settings/enum_setting_spec.rb +1 -1
  524. data/spec/unit/settings/environment_conf_spec.rb +4 -6
  525. data/spec/unit/settings/file_setting_spec.rb +44 -46
  526. data/spec/unit/settings/path_setting_spec.rb +1 -2
  527. data/spec/unit/settings/priority_setting_spec.rb +1 -2
  528. data/spec/unit/settings/string_setting_spec.rb +14 -15
  529. data/spec/unit/settings/terminus_setting_spec.rb +1 -2
  530. data/spec/unit/settings/value_translator_spec.rb +0 -1
  531. data/spec/unit/settings_spec.rb +228 -235
  532. data/spec/unit/ssl/base_spec.rb +14 -15
  533. data/spec/unit/ssl/certificate_request_spec.rb +62 -58
  534. data/spec/unit/ssl/certificate_spec.rb +23 -25
  535. data/spec/unit/ssl/digest_spec.rb +0 -1
  536. data/spec/unit/ssl/host_spec.rb +147 -130
  537. data/spec/unit/ssl/key_spec.rb +30 -31
  538. data/spec/unit/ssl/ssl_provider_spec.rb +24 -24
  539. data/spec/unit/ssl/state_machine_spec.rb +50 -58
  540. data/spec/unit/ssl/validator_spec.rb +43 -54
  541. data/spec/unit/ssl/verifier_spec.rb +10 -10
  542. data/spec/unit/task_spec.rb +44 -45
  543. data/spec/unit/transaction/additional_resource_generator_spec.rb +3 -5
  544. data/spec/unit/transaction/event_manager_spec.rb +87 -88
  545. data/spec/unit/transaction/event_spec.rb +16 -15
  546. data/spec/unit/transaction/persistence_spec.rb +16 -17
  547. data/spec/unit/transaction/report_spec.rb +11 -12
  548. data/spec/unit/transaction/resource_harness_spec.rb +28 -33
  549. data/spec/unit/transaction_spec.rb +100 -101
  550. data/spec/unit/type/component_spec.rb +0 -1
  551. data/spec/unit/type/exec_spec.rb +60 -56
  552. data/spec/unit/type/file/checksum_spec.rb +9 -10
  553. data/spec/unit/type/file/checksum_value_spec.rb +31 -32
  554. data/spec/unit/type/file/content_spec.rb +58 -61
  555. data/spec/unit/type/file/ctime_spec.rb +0 -1
  556. data/spec/unit/type/file/ensure_spec.rb +12 -13
  557. data/spec/unit/type/file/group_spec.rb +5 -7
  558. data/spec/unit/type/file/mode_spec.rb +4 -6
  559. data/spec/unit/type/file/mtime_spec.rb +0 -1
  560. data/spec/unit/type/file/owner_spec.rb +6 -8
  561. data/spec/unit/type/file/selinux_spec.rb +17 -19
  562. data/spec/unit/type/file/source_spec.rb +104 -101
  563. data/spec/unit/type/file/type_spec.rb +0 -1
  564. data/spec/unit/type/file_spec.rb +195 -185
  565. data/spec/unit/type/filebucket_spec.rb +4 -5
  566. data/spec/unit/type/group_spec.rb +6 -8
  567. data/spec/unit/type/noop_metaparam_spec.rb +1 -2
  568. data/spec/unit/type/package/package_settings_spec.rb +44 -23
  569. data/spec/unit/type/package_spec.rb +56 -57
  570. data/spec/unit/type/resources_spec.rb +72 -74
  571. data/spec/unit/type/schedule_spec.rb +24 -26
  572. data/spec/unit/type/service_spec.rb +49 -49
  573. data/spec/unit/type/stage_spec.rb +0 -1
  574. data/spec/unit/type/tidy_spec.rb +61 -62
  575. data/spec/unit/type/user_spec.rb +24 -25
  576. data/spec/unit/type/whit_spec.rb +0 -1
  577. data/spec/unit/type_spec.rb +55 -54
  578. data/spec/unit/util/at_fork_spec.rb +18 -19
  579. data/spec/unit/util/autoload_spec.rb +55 -56
  580. data/spec/unit/util/backups_spec.rb +34 -35
  581. data/spec/unit/util/character_encoding_spec.rb +5 -5
  582. data/spec/unit/util/checksums_spec.rb +38 -39
  583. data/spec/unit/util/colors_spec.rb +1 -2
  584. data/spec/unit/util/command_line_spec.rb +24 -25
  585. data/spec/unit/util/constant_inflector_spec.rb +0 -1
  586. data/spec/unit/util/diff_spec.rb +7 -8
  587. data/spec/unit/util/errors_spec.rb +0 -1
  588. data/spec/unit/util/execution_spec.rb +185 -161
  589. data/spec/unit/util/execution_stub_spec.rb +0 -1
  590. data/spec/unit/util/feature_spec.rb +23 -14
  591. data/spec/unit/util/filetype_spec.rb +49 -49
  592. data/spec/unit/util/http_proxy_spec.rb +12 -12
  593. data/spec/unit/util/inifile_spec.rb +26 -31
  594. data/spec/unit/util/json_lockfile_spec.rb +3 -5
  595. data/spec/unit/util/ldap/connection_spec.rb +26 -25
  596. data/spec/unit/util/ldap/generator_spec.rb +0 -1
  597. data/spec/unit/util/ldap/manager_spec.rb +102 -101
  598. data/spec/unit/util/lockfile_spec.rb +0 -1
  599. data/spec/unit/util/log/destinations_spec.rb +30 -33
  600. data/spec/unit/util/log_spec.rb +35 -36
  601. data/spec/unit/util/logging_spec.rb +58 -72
  602. data/spec/unit/util/metric_spec.rb +0 -1
  603. data/spec/unit/util/monkey_patches_spec.rb +7 -9
  604. data/spec/unit/util/multi_match_spec.rb +0 -1
  605. data/spec/unit/util/network_device/config_spec.rb +0 -1
  606. data/spec/unit/util/network_device/transport/base_spec.rb +5 -6
  607. data/spec/unit/util/network_device_spec.rb +7 -9
  608. data/spec/unit/util/package_spec.rb +0 -1
  609. data/spec/unit/util/pidlock_spec.rb +21 -22
  610. data/spec/unit/util/plist_spec.rb +40 -33
  611. data/spec/unit/util/posix_spec.rb +54 -51
  612. data/spec/unit/util/rdoc_spec.rb +9 -10
  613. data/spec/unit/util/reference_spec.rb +0 -1
  614. data/spec/unit/util/resource_template_spec.rb +20 -20
  615. data/spec/unit/util/retry_action_spec.rb +7 -8
  616. data/spec/unit/util/rubygems_spec.rb +7 -8
  617. data/spec/unit/util/run_mode_spec.rb +3 -4
  618. data/spec/unit/util/selinux_spec.rb +79 -72
  619. data/spec/unit/util/splayer_spec.rb +8 -9
  620. data/spec/unit/util/ssl_spec.rb +0 -1
  621. data/spec/unit/util/storage_spec.rb +3 -4
  622. data/spec/unit/util/suidmanager_spec.rb +45 -54
  623. data/spec/unit/util/symbolic_file_mode_spec.rb +0 -1
  624. data/spec/unit/util/tag_set_spec.rb +0 -1
  625. data/spec/unit/util/tagging_spec.rb +0 -1
  626. data/spec/unit/util/terminal_spec.rb +9 -10
  627. data/spec/unit/util/user_attr_spec.rb +1 -2
  628. data/spec/unit/util/warnings_spec.rb +3 -4
  629. data/spec/unit/util/watcher/periodic_watcher_spec.rb +2 -2
  630. data/spec/unit/util/watcher_spec.rb +51 -21
  631. data/spec/unit/util/windows/access_control_entry_spec.rb +0 -1
  632. data/spec/unit/util/windows/access_control_list_spec.rb +0 -1
  633. data/spec/unit/util/windows/adsi_spec.rb +136 -138
  634. data/spec/unit/util/windows/api_types_spec.rb +0 -1
  635. data/spec/unit/util/windows/eventlog_spec.rb +9 -12
  636. data/spec/unit/util/windows/file_spec.rb +0 -1
  637. data/spec/unit/util/windows/root_certs_spec.rb +1 -2
  638. data/spec/unit/util/windows/security_descriptor_spec.rb +0 -2
  639. data/spec/unit/util/windows/service_spec.rb +66 -68
  640. data/spec/unit/util/windows/sid_spec.rb +11 -13
  641. data/spec/unit/util/windows/string_spec.rb +0 -1
  642. data/spec/unit/util_spec.rb +55 -57
  643. data/spec/unit/version_spec.rb +6 -6
  644. data/spec/unit/x509/cert_provider_spec.rb +14 -14
  645. data/spec/unit/x509/pem_store_spec.rb +5 -5
  646. metadata +2 -2
@@ -1,67 +1,63 @@
1
- #! /usr/bin/env ruby
2
-
3
1
  require 'spec_helper'
4
2
 
5
- provider = Puppet::Type.type(:package).provider(:portage)
6
-
7
- describe provider do
3
+ describe Puppet::Type.type(:package).provider(:portage) do
8
4
  before do
9
- packagename="sl"
10
- @resource = stub('resource', :should => true)
11
- @resource.stubs(:[]).with(:name).returns(packagename)
12
- @resource.stubs(:[]).with(:install_options).returns(['--foo', '--bar'])
13
- @resource.stubs(:[]).with(:uninstall_options).returns(['--foo', { '--bar' => 'baz', '--baz' => 'foo' }])
5
+ packagename = "sl"
6
+ @resource = double('resource', :should => true)
7
+ allow(@resource).to receive(:[]).with(:name).and_return(packagename)
8
+ allow(@resource).to receive(:[]).with(:install_options).and_return(['--foo', '--bar'])
9
+ allow(@resource).to receive(:[]).with(:uninstall_options).and_return(['--foo', { '--bar' => 'baz', '--baz' => 'foo' }])
14
10
 
15
11
  unslotted_packagename = "dev-lang/ruby"
16
- @unslotted_resource = stub('resource', :should => true)
17
- @unslotted_resource.stubs(:should).with(:ensure).returns :latest
18
- @unslotted_resource.stubs(:[]).with(:name).returns(unslotted_packagename)
19
- @unslotted_resource.stubs(:[]).with(:install_options).returns([])
12
+ @unslotted_resource = double('resource', :should => true)
13
+ allow(@unslotted_resource).to receive(:should).with(:ensure).and_return(:latest)
14
+ allow(@unslotted_resource).to receive(:[]).with(:name).and_return(unslotted_packagename)
15
+ allow(@unslotted_resource).to receive(:[]).with(:install_options).and_return([])
20
16
 
21
17
  slotted_packagename = "dev-lang/ruby:2.1"
22
- @slotted_resource = stub('resource', :should => true)
23
- @slotted_resource.stubs(:[]).with(:name).returns(slotted_packagename)
24
- @slotted_resource.stubs(:[]).with(:install_options).returns(['--foo', { '--bar' => 'baz', '--baz' => 'foo' }])
18
+ @slotted_resource = double('resource', :should => true)
19
+ allow(@slotted_resource).to receive(:[]).with(:name).and_return(slotted_packagename)
20
+ allow(@slotted_resource).to receive(:[]).with(:install_options).and_return(['--foo', { '--bar' => 'baz', '--baz' => 'foo' }])
25
21
 
26
22
  versioned_packagename = "=dev-lang/ruby-1.9.3"
27
- @versioned_resource = stub('resource', :should => true)
28
- @versioned_resource.stubs(:[]).with(:name).returns(versioned_packagename)
29
- @versioned_resource.stubs(:[]).with(:install_options).returns([])
30
- @versioned_resource.stubs(:[]).with(:uninstall_options).returns([])
23
+ @versioned_resource = double('resource', :should => true)
24
+ allow(@versioned_resource).to receive(:[]).with(:name).and_return(versioned_packagename)
25
+ allow(@versioned_resource).to receive(:[]).with(:install_options).and_return([])
26
+ allow(@versioned_resource).to receive(:[]).with(:uninstall_options).and_return([])
31
27
 
32
28
  versioned_slotted_packagename = "=dev-lang/ruby-1.9.3:1.9"
33
- @versioned_slotted_resource = stub('resource', :should => true)
34
- @versioned_slotted_resource.stubs(:[]).with(:name).returns(versioned_slotted_packagename)
35
- @versioned_slotted_resource.stubs(:[]).with(:install_options).returns([])
36
- @versioned_slotted_resource.stubs(:[]).with(:uninstall_options).returns([])
29
+ @versioned_slotted_resource = double('resource', :should => true)
30
+ allow(@versioned_slotted_resource).to receive(:[]).with(:name).and_return(versioned_slotted_packagename)
31
+ allow(@versioned_slotted_resource).to receive(:[]).with(:install_options).and_return([])
32
+ allow(@versioned_slotted_resource).to receive(:[]).with(:uninstall_options).and_return([])
37
33
 
38
34
  set_packagename = "@system"
39
- @set_resource = stub('resource', :should => true)
40
- @set_resource.stubs(:[]).with(:name).returns(set_packagename)
41
- @set_resource.stubs(:[]).with(:install_options).returns([])
35
+ @set_resource = double('resource', :should => true)
36
+ allow(@set_resource).to receive(:[]).with(:name).and_return(set_packagename)
37
+ allow(@set_resource).to receive(:[]).with(:install_options).and_return([])
42
38
 
43
39
  package_sets = "system\nworld\n"
44
- @provider = provider.new(@resource)
45
- @provider.stubs(:qatom).returns({:category=>nil, :pn=>"sl", :pv=>nil, :pr=>nil, :slot=>nil, :pfx=>nil, :sfx=>nil})
46
- @provider.class.stubs(:emerge).with('--list-sets').returns(package_sets)
47
- @unslotted_provider = provider.new(@unslotted_resource)
48
- @unslotted_provider.stubs(:qatom).returns({:category=>"dev-lang", :pn=>"ruby", :pv=>nil, :pr=>nil, :slot=>nil, :pfx=>nil, :sfx=>nil})
49
- @unslotted_provider.class.stubs(:emerge).with('--list-sets').returns(package_sets)
50
- @slotted_provider = provider.new(@slotted_resource)
51
- @slotted_provider.stubs(:qatom).returns({:category=>"dev-lang", :pn=>"ruby", :pv=>nil, :pr=>nil, :slot=>":2.1", :pfx=>nil, :sfx=>nil})
52
- @slotted_provider.class.stubs(:emerge).with('--list-sets').returns(package_sets)
53
- @versioned_provider = provider.new(@versioned_resource)
54
- @versioned_provider.stubs(:qatom).returns({:category=>"dev-lang", :pn=>"ruby", :pv=>"1.9.3", :pr=>nil, :slot=>nil, :pfx=>"=", :sfx=>nil})
55
- @versioned_provider.class.stubs(:emerge).with('--list-sets').returns(package_sets)
56
- @versioned_slotted_provider = provider.new(@versioned_slotted_resource)
57
- @versioned_slotted_provider.stubs(:qatom).returns({:category=>"dev-lang", :pn=>"ruby", :pv=>"1.9.3", :pr=>nil, :slot=>":1.9", :pfx=>"=", :sfx=>nil})
58
- @versioned_slotted_provider.class.stubs(:emerge).with('--list-sets').returns(package_sets)
59
- @set_provider = provider.new(@set_resource)
60
- @set_provider.stubs(:qatom).returns({:category=>nil, :pn=>"@system", :pv=>nil, :pr=>nil, :slot=>nil, :pfx=>nil, :sfx=>nil})
61
- @set_provider.class.stubs(:emerge).with('--list-sets').returns(package_sets)
62
-
63
- portage = stub(:executable => "foo",:execute => true)
64
- Puppet::Provider::CommandDefiner.stubs(:define).returns(portage)
40
+ @provider = described_class.new(@resource)
41
+ allow(@provider).to receive(:qatom).and_return({:category=>nil, :pn=>"sl", :pv=>nil, :pr=>nil, :slot=>nil, :pfx=>nil, :sfx=>nil})
42
+ allow(@provider.class).to receive(:emerge).with('--list-sets').and_return(package_sets)
43
+ @unslotted_provider = described_class.new(@unslotted_resource)
44
+ allow(@unslotted_provider).to receive(:qatom).and_return({:category=>"dev-lang", :pn=>"ruby", :pv=>nil, :pr=>nil, :slot=>nil, :pfx=>nil, :sfx=>nil})
45
+ allow(@unslotted_provider.class).to receive(:emerge).with('--list-sets').and_return(package_sets)
46
+ @slotted_provider = described_class.new(@slotted_resource)
47
+ allow(@slotted_provider).to receive(:qatom).and_return({:category=>"dev-lang", :pn=>"ruby", :pv=>nil, :pr=>nil, :slot=>":2.1", :pfx=>nil, :sfx=>nil})
48
+ allow(@slotted_provider.class).to receive(:emerge).with('--list-sets').and_return(package_sets)
49
+ @versioned_provider = described_class.new(@versioned_resource)
50
+ allow(@versioned_provider).to receive(:qatom).and_return({:category=>"dev-lang", :pn=>"ruby", :pv=>"1.9.3", :pr=>nil, :slot=>nil, :pfx=>"=", :sfx=>nil})
51
+ allow(@versioned_provider.class).to receive(:emerge).with('--list-sets').and_return(package_sets)
52
+ @versioned_slotted_provider = described_class.new(@versioned_slotted_resource)
53
+ allow(@versioned_slotted_provider).to receive(:qatom).and_return({:category=>"dev-lang", :pn=>"ruby", :pv=>"1.9.3", :pr=>nil, :slot=>":1.9", :pfx=>"=", :sfx=>nil})
54
+ allow(@versioned_slotted_provider.class).to receive(:emerge).with('--list-sets').and_return(package_sets)
55
+ @set_provider = described_class.new(@set_resource)
56
+ allow(@set_provider).to receive(:qatom).and_return({:category=>nil, :pn=>"@system", :pv=>nil, :pr=>nil, :slot=>nil, :pfx=>nil, :sfx=>nil})
57
+ allow(@set_provider.class).to receive(:emerge).with('--list-sets').and_return(package_sets)
58
+
59
+ portage = double(:executable => "foo",:execute => true)
60
+ allow(Puppet::Provider::CommandDefiner).to receive(:define).and_return(portage)
65
61
 
66
62
  @nomatch_result = ""
67
63
  @match_result = "app-misc sl [] [5.02] [] [] [5.02] [5.02:0] http://www.tkl.iis.u-tokyo.ac.jp/~toyoda/index_e.html https://github.com/mtoyoda/sl/ sophisticated graphical program which corrects your miss typing\n"
@@ -69,89 +65,89 @@ describe provider do
69
65
  end
70
66
 
71
67
  it "is versionable" do
72
- expect(provider).to be_versionable
68
+ expect(described_class).to be_versionable
73
69
  end
74
70
 
75
71
  it "is reinstallable" do
76
- expect(provider).to be_reinstallable
72
+ expect(described_class).to be_reinstallable
77
73
  end
78
74
 
79
75
  it 'should support string install options' do
80
- @provider.expects(:emerge).with('--foo', '--bar', @resource[:name])
76
+ expect(@provider).to receive(:emerge).with('--foo', '--bar', @resource[:name])
81
77
 
82
78
  @provider.install
83
79
  end
84
80
 
85
81
  it 'should support updating' do
86
- @unslotted_provider.expects(:emerge).with('--update', @unslotted_resource[:name])
82
+ expect(@unslotted_provider).to receive(:emerge).with('--update', @unslotted_resource[:name])
87
83
 
88
84
  @unslotted_provider.install
89
85
  end
90
86
 
91
87
  it 'should support hash install options' do
92
- @slotted_provider.expects(:emerge).with('--foo', '--bar=baz', '--baz=foo', @slotted_resource[:name])
88
+ expect(@slotted_provider).to receive(:emerge).with('--foo', '--bar=baz', '--baz=foo', @slotted_resource[:name])
93
89
 
94
90
  @slotted_provider.install
95
91
  end
96
92
 
97
93
  it 'should support hash uninstall options' do
98
- @provider.expects(:emerge).with('--rage-clean', '--foo', '--bar=baz', '--baz=foo', @resource[:name])
94
+ expect(@provider).to receive(:emerge).with('--rage-clean', '--foo', '--bar=baz', '--baz=foo', @resource[:name])
99
95
 
100
96
  @provider.uninstall
101
97
  end
102
98
 
103
99
  it 'should support install of specific version' do
104
- @versioned_provider.expects(:emerge).with(@versioned_resource[:name])
100
+ expect(@versioned_provider).to receive(:emerge).with(@versioned_resource[:name])
105
101
 
106
102
  @versioned_provider.install
107
103
  end
108
104
 
109
105
  it 'should support install of specific version and slot' do
110
- @versioned_slotted_provider.expects(:emerge).with(@versioned_slotted_resource[:name])
106
+ expect(@versioned_slotted_provider).to receive(:emerge).with(@versioned_slotted_resource[:name])
111
107
 
112
108
  @versioned_slotted_provider.install
113
109
  end
114
110
 
115
111
  it 'should support uninstall of specific version' do
116
- @versioned_provider.expects(:emerge).with('--rage-clean', @versioned_resource[:name])
112
+ expect(@versioned_provider).to receive(:emerge).with('--rage-clean', @versioned_resource[:name])
117
113
 
118
114
  @versioned_provider.uninstall
119
115
  end
120
116
 
121
117
  it 'should support uninstall of specific version and slot' do
122
- @versioned_slotted_provider.expects(:emerge).with('--rage-clean', @versioned_slotted_resource[:name])
118
+ expect(@versioned_slotted_provider).to receive(:emerge).with('--rage-clean', @versioned_slotted_resource[:name])
123
119
 
124
120
  @versioned_slotted_provider.uninstall
125
121
  end
126
122
 
127
123
  it "uses :emerge to install packages" do
128
- @provider.expects(:emerge)
124
+ expect(@provider).to receive(:emerge)
129
125
 
130
126
  @provider.install
131
127
  end
132
128
 
133
129
  it "uses query to find the latest package" do
134
- @provider.expects(:query).returns({:versions_available => "myversion"})
130
+ expect(@provider).to receive(:query).and_return({:versions_available => "myversion"})
135
131
 
136
132
  @provider.latest
137
133
  end
138
134
 
139
135
  it "uses eix to search the lastest version of a package" do
140
- @provider.stubs(:update_eix)
141
- @provider.expects(:eix).returns(StringIO.new(@match_result))
136
+ allow(@provider).to receive(:update_eix)
137
+ expect(@provider).to receive(:eix).and_return(StringIO.new(@match_result))
142
138
 
143
139
  @provider.query
144
140
  end
145
141
 
146
142
  it "allows to emerge package sets" do
147
- @set_provider.expects(:emerge).with(@set_resource[:name])
143
+ expect(@set_provider).to receive(:emerge).with(@set_resource[:name])
148
144
 
149
145
  @set_provider.install
150
146
  end
151
147
 
152
148
  it "allows to emerge and update package sets" do
153
- @set_resource.stubs(:should).with(:ensure).returns :latest
154
- @set_provider.expects(:emerge).with('--update', @set_resource[:name])
149
+ allow(@set_resource).to receive(:should).with(:ensure).and_return(:latest)
150
+ expect(@set_provider).to receive(:emerge).with('--update', @set_resource[:name])
155
151
 
156
152
  @set_provider.install
157
153
  end
@@ -165,16 +161,16 @@ describe provider do
165
161
  end
166
162
 
167
163
  it "query uses default arguments" do
168
- @provider.stubs(:update_eix)
169
- @provider.expects(:eix).returns(StringIO.new(@match_result))
170
- @provider.class.expects(:eix_search_arguments).returns([])
164
+ allow(@provider).to receive(:update_eix)
165
+ expect(@provider).to receive(:eix).and_return(StringIO.new(@match_result))
166
+ expect(@provider.class).to receive(:eix_search_arguments).and_return([])
171
167
 
172
168
  @provider.query
173
169
  end
174
170
 
175
171
  it "can handle search output with empty square brackets" do
176
- @provider.stubs(:update_eix)
177
- @provider.expects(:eix).returns(StringIO.new(@match_result))
172
+ allow(@provider).to receive(:update_eix)
173
+ expect(@provider).to receive(:eix).and_return(StringIO.new(@match_result))
178
174
 
179
175
  expect(@provider.query[:name]).to eq("sl")
180
176
  end
@@ -204,8 +200,8 @@ describe provider do
204
200
  end
205
201
 
206
202
  it "can handle search output with slots for unslotted packages" do
207
- @unslotted_provider.stubs(:update_eix)
208
- @unslotted_provider.expects(:eix).returns(StringIO.new(@slot_match_result))
203
+ allow(@unslotted_provider).to receive(:update_eix)
204
+ expect(@unslotted_provider).to receive(:eix).and_return(StringIO.new(@slot_match_result))
209
205
 
210
206
  result = @unslotted_provider.query
211
207
  expect(result[:name]).to eq('ruby')
@@ -214,8 +210,8 @@ describe provider do
214
210
  end
215
211
 
216
212
  it "can handle search output with slots" do
217
- @slotted_provider.stubs(:update_eix)
218
- @slotted_provider.expects(:eix).returns(StringIO.new(@slot_match_result))
213
+ allow(@slotted_provider).to receive(:update_eix)
214
+ expect(@slotted_provider).to receive(:eix).and_return(StringIO.new(@slot_match_result))
219
215
 
220
216
  result = @slotted_provider.query
221
217
  expect(result[:name]).to eq('ruby')
@@ -26,38 +26,58 @@ describe Puppet::Type.type(:package).provider(:puppet_gem) do
26
26
 
27
27
  context "when installing" do
28
28
  it "should use the path to the gem" do
29
- described_class.expects(:which).with(puppet_gem).returns(puppet_gem)
30
- provider.expects(:execute).with { |args| args[0] == puppet_gem }.returns ''
29
+ expect(described_class).to receive(:which).with(puppet_gem).and_return(puppet_gem)
30
+ expect(provider).to receive(:execute) do |args|
31
+ expect(args[0]).to eq(puppet_gem)
32
+ ''
33
+ end
31
34
  provider.install
32
35
  end
33
36
 
34
37
  it "should not append install_options by default" do
35
- provider.expects(:execute).with { |args| args.length == 5 }.returns ''
38
+ expect(provider).to receive(:execute) do |args|
39
+ expect(args.length).to eq(5)
40
+ ''
41
+ end
36
42
  provider.install
37
43
  end
38
44
 
39
45
  it "should allow setting an install_options parameter" do
40
46
  resource[:install_options] = [ '--force', {'--bindir' => '/usr/bin' } ]
41
- provider.expects(:execute).with { |args| args[2] == '--force' && args[3] == '--bindir=/usr/bin' }.returns ''
47
+ expect(provider).to receive(:execute) do |args|
48
+ expect(args[2]).to eq('--force')
49
+ expect(args[3]).to eq('--bindir=/usr/bin')
50
+ ''
51
+ end
42
52
  provider.install
43
53
  end
44
54
  end
45
55
 
46
56
  context "when uninstalling" do
47
57
  it "should use the path to the gem" do
48
- described_class.expects(:which).with(puppet_gem).returns(puppet_gem)
49
- provider.expects(:execute).with { |args| args[0] == puppet_gem }.returns ''
58
+ expect(described_class).to receive(:which).with(puppet_gem).and_return(puppet_gem)
59
+ expect(provider).to receive(:execute) do |args|
60
+ expect(args[0]).to eq(puppet_gem)
61
+ ''
62
+ end
50
63
  provider.install
51
64
  end
52
65
 
53
66
  it "should not append uninstall_options by default" do
54
- provider.expects(:execute).with { |args| args.length == 5 }.returns ''
67
+ expect(provider).to receive(:execute) do |args|
68
+ expect(args.length).to eq(5)
69
+ ''
70
+ end
55
71
  provider.uninstall
56
72
  end
57
73
 
58
74
  it "should allow setting an uninstall_options parameter" do
59
75
  resource[:uninstall_options] = [ '--force', {'--bindir' => '/usr/bin' } ]
60
- provider.expects(:execute).with { |args| args[5] == '--force' && args[6] == '--bindir=/usr/bin' }.returns ''
76
+ expect(provider).to receive(:execute) do |args|
77
+ expect(args[5]).to eq('--force')
78
+ expect(args[6]).to eq('--bindir=/usr/bin')
79
+ ''
80
+ end
61
81
  provider.uninstall
62
82
  end
63
83
  end
@@ -1,9 +1,6 @@
1
- #! /usr/bin/env ruby
2
1
  require 'spec_helper'
3
2
 
4
- provider_class = Puppet::Type.type(:package).provider(:rpm)
5
-
6
- describe provider_class do
3
+ describe Puppet::Type.type(:package).provider(:rpm) do
7
4
  let (:packages) do
8
5
  <<-RPM_OUTPUT
9
6
  'cracklib-dicts 0 2.8.9 3.3 x86_64
@@ -26,7 +23,7 @@ describe provider_class do
26
23
  end
27
24
 
28
25
  let(:provider) do
29
- provider = provider_class.new
26
+ provider = subject()
30
27
  provider.resource = resource
31
28
  provider
32
29
  end
@@ -38,15 +35,15 @@ describe provider_class do
38
35
  let(:rpm_version) { "RPM version 5.0.0\n" }
39
36
 
40
37
  before(:each) do
41
- Puppet::Util.stubs(:which).with("rpm").returns("/bin/rpm")
42
- provider_class.stubs(:which).with("rpm").returns("/bin/rpm")
43
- provider_class.instance_variable_set("@current_version", nil)
44
- Puppet::Type::Package::ProviderRpm.expects(:execute)
38
+ allow(Puppet::Util).to receive(:which).with("rpm").and_return("/bin/rpm")
39
+ allow(described_class).to receive(:which).with("rpm").and_return("/bin/rpm")
40
+ described_class.instance_variable_set("@current_version", nil)
41
+ expect(Puppet::Type::Package::ProviderRpm).to receive(:execute)
45
42
  .with(["/bin/rpm", "--version"])
46
- .returns(rpm_version).at_most_once
47
- Puppet::Util::Execution.expects(:execute)
43
+ .and_return(rpm_version).at_most(:once)
44
+ expect(Puppet::Util::Execution).to receive(:execute)
48
45
  .with(["/bin/rpm", "--version"], execute_options)
49
- .returns(Puppet::Util::Execution::ProcessOutput.new(rpm_version, 0)).at_most_once
46
+ .and_return(Puppet::Util::Execution::ProcessOutput.new(rpm_version, 0)).at_most(:once)
50
47
  end
51
48
 
52
49
  describe 'provider features' do
@@ -59,34 +56,36 @@ describe provider_class do
59
56
  describe "self.instances" do
60
57
  describe "with a modern version of RPM" do
61
58
  it "includes all the modern flags" do
62
- Puppet::Util::Execution.expects(:execpipe).with("/bin/rpm -qa --nosignature --nodigest --qf '#{nevra_format}'").yields(packages)
59
+ expect(Puppet::Util::Execution).to receive(:execpipe).with("/bin/rpm -qa --nosignature --nodigest --qf '#{nevra_format}'").and_yield(packages)
63
60
 
64
- provider_class.instances
61
+ described_class.instances
65
62
  end
66
63
  end
67
64
 
68
65
  describe "with a version of RPM < 4.1" do
69
66
  let(:rpm_version) { "RPM version 4.0.2\n" }
67
+
70
68
  it "excludes the --nosignature flag" do
71
- Puppet::Util::Execution.expects(:execpipe).with("/bin/rpm -qa --nodigest --qf '#{nevra_format}'").yields(packages)
69
+ expect(Puppet::Util::Execution).to receive(:execpipe).with("/bin/rpm -qa --nodigest --qf '#{nevra_format}'").and_yield(packages)
72
70
 
73
- provider_class.instances
71
+ described_class.instances
74
72
  end
75
73
  end
76
74
 
77
75
  describe "with a version of RPM < 4.0.2" do
78
76
  let(:rpm_version) { "RPM version 3.0.5\n" }
77
+
79
78
  it "excludes the --nodigest flag" do
80
- Puppet::Util::Execution.expects(:execpipe).with("/bin/rpm -qa --qf '#{nevra_format}'").yields(packages)
79
+ expect(Puppet::Util::Execution).to receive(:execpipe).with("/bin/rpm -qa --qf '#{nevra_format}'").and_yield(packages)
81
80
 
82
- provider_class.instances
81
+ described_class.instances
83
82
  end
84
83
  end
85
84
 
86
85
  it "returns an array of packages" do
87
- Puppet::Util::Execution.expects(:execpipe).with("/bin/rpm -qa --nosignature --nodigest --qf '#{nevra_format}'").yields(packages)
86
+ expect(Puppet::Util::Execution).to receive(:execpipe).with("/bin/rpm -qa --nosignature --nodigest --qf '#{nevra_format}'").and_yield(packages)
88
87
 
89
- installed_packages = provider_class.instances
88
+ installed_packages = described_class.instances
90
89
 
91
90
  expect(installed_packages[0].properties).to eq(
92
91
  {
@@ -168,7 +167,7 @@ describe provider_class do
168
167
 
169
168
  describe "when not already installed" do
170
169
  it "only includes the '-i' flag" do
171
- Puppet::Util::Execution.expects(:execute).with(["/bin/rpm", ["-i"], '/path/to/package'], execute_options)
170
+ expect(Puppet::Util::Execution).to receive(:execute).with(["/bin/rpm", ["-i"], '/path/to/package'], execute_options)
172
171
  provider.install
173
172
  end
174
173
  end
@@ -185,7 +184,7 @@ describe provider_class do
185
184
  end
186
185
 
187
186
  it "includes the options" do
188
- Puppet::Util::Execution.expects(:execute).with(["/bin/rpm", ["-i", "-D", "--test=value", "-Q"], '/path/to/package'], execute_options)
187
+ expect(Puppet::Util::Execution).to receive(:execute).with(["/bin/rpm", ["-i", "-D", "--test=value", "-Q"], '/path/to/package'], execute_options)
189
188
  provider.install
190
189
  end
191
190
  end
@@ -198,7 +197,7 @@ describe provider_class do
198
197
  end
199
198
 
200
199
  it "includes the '-U --oldpackage' flags" do
201
- Puppet::Util::Execution.expects(:execute).with(["/bin/rpm", ["-U", "--oldpackage"], '/path/to/package'], execute_options)
200
+ expect(Puppet::Util::Execution).to receive(:execute).with(["/bin/rpm", ["-U", "--oldpackage"], '/path/to/package'], execute_options)
202
201
  provider.install
203
202
  end
204
203
  end
@@ -206,16 +205,16 @@ describe provider_class do
206
205
 
207
206
  describe "#latest" do
208
207
  it "retrieves version string after querying rpm for version from source file" do
209
- resource.expects(:[]).with(:source).returns('source-string')
210
- Puppet::Util::Execution.expects(:execute)
208
+ expect(resource).to receive(:[]).with(:source).and_return('source-string')
209
+ expect(Puppet::Util::Execution).to receive(:execute)
211
210
  .with(["/bin/rpm", "-q", "--qf", "'#{nevra_format}'", "-p", "source-string"])
212
- .returns(Puppet::Util::Execution::ProcessOutput.new("myresource 0 1.2.3.4 5.el4 noarch\n", 0))
211
+ .and_return(Puppet::Util::Execution::ProcessOutput.new("myresource 0 1.2.3.4 5.el4 noarch\n", 0))
213
212
  expect(provider.latest).to eq("1.2.3.4-5.el4")
214
213
  end
215
214
 
216
215
  it "raises an error if the rpm command fails" do
217
- resource.expects(:[]).with(:source).returns('source-string')
218
- Puppet::Util::Execution.expects(:execute).with(["/bin/rpm", "-q", "--qf", "'#{nevra_format}'", "-p", "source-string"]).raises(Puppet::ExecutionFailure, 'rpm command failed')
216
+ expect(resource).to receive(:[]).with(:source).and_return('source-string')
217
+ expect(Puppet::Util::Execution).to receive(:execute).with(["/bin/rpm", "-q", "--qf", "'#{nevra_format}'", "-p", "source-string"]).and_raise(Puppet::ExecutionFailure, 'rpm command failed')
219
218
 
220
219
  expect {
221
220
  provider.latest
@@ -233,43 +232,43 @@ describe provider_class do
233
232
 
234
233
  describe "on a modern RPM" do
235
234
  before(:each) do
236
- Puppet::Util::Execution.expects(:execute)
235
+ expect(Puppet::Util::Execution).to receive(:execute)
237
236
  .with(["/bin/rpm", "-q", "myresource", '--nosignature', '--nodigest', "--qf", "'#{nevra_format}'"], execute_options)
238
- .returns(Puppet::Util::Execution::ProcessOutput.new("myresource 0 1.2.3.4 5.el4 noarch\n", 0))
237
+ .and_return(Puppet::Util::Execution::ProcessOutput.new("myresource 0 1.2.3.4 5.el4 noarch\n", 0))
239
238
  end
240
239
 
241
240
  let(:rpm_version) { "RPM version 4.10.0\n" }
242
241
 
243
242
  it "includes the architecture in the package name" do
244
- Puppet::Util::Execution.expects(:execute)
243
+ expect(Puppet::Util::Execution).to receive(:execute)
245
244
  .with(["/bin/rpm", ["-e"], 'myresource-1.2.3.4-5.el4.noarch'], execute_options)
246
- .returns(Puppet::Util::Execution::ProcessOutput.new('', 0)).at_most_once
245
+ .and_return(Puppet::Util::Execution::ProcessOutput.new('', 0)).at_most(:once)
247
246
  provider.uninstall
248
247
  end
249
248
  end
250
249
 
251
250
  describe "on an ancient RPM" do
252
251
  before(:each) do
253
- Puppet::Util::Execution.expects(:execute)
252
+ expect(Puppet::Util::Execution).to receive(:execute)
254
253
  .with(["/bin/rpm", "-q", "myresource", '', '', '--qf', "'#{nevra_format}'"], execute_options)
255
- .returns(Puppet::Util::Execution::ProcessOutput.new("myresource 0 1.2.3.4 5.el4 noarch\n", 0))
254
+ .and_return(Puppet::Util::Execution::ProcessOutput.new("myresource 0 1.2.3.4 5.el4 noarch\n", 0))
256
255
  end
257
256
 
258
257
  let(:rpm_version) { "RPM version 3.0.6\n" }
259
258
 
260
259
  it "excludes the architecture from the package name" do
261
- Puppet::Util::Execution.expects(:execute)
260
+ expect(Puppet::Util::Execution).to receive(:execute)
262
261
  .with(["/bin/rpm", ["-e"], 'myresource-1.2.3.4-5.el4'], execute_options)
263
- .returns(Puppet::Util::Execution::ProcessOutput.new('', 0)).at_most_once
262
+ .and_return(Puppet::Util::Execution::ProcessOutput.new('', 0)).at_most(:once)
264
263
  provider.uninstall
265
264
  end
266
265
  end
267
266
 
268
267
  describe "when uninstalled with options" do
269
268
  before(:each) do
270
- Puppet::Util::Execution.expects(:execute)
269
+ expect(Puppet::Util::Execution).to receive(:execute)
271
270
  .with(["/bin/rpm", "-q", "myresource", '--nosignature', '--nodigest', "--qf", "'#{nevra_format}'"], execute_options)
272
- .returns(Puppet::Util::Execution::ProcessOutput.new("myresource 0 1.2.3.4 5.el4 noarch\n", 0))
271
+ .and_return(Puppet::Util::Execution::ProcessOutput.new("myresource 0 1.2.3.4 5.el4 noarch\n", 0))
273
272
  end
274
273
 
275
274
  let(:resource) do
@@ -282,7 +281,7 @@ describe provider_class do
282
281
  end
283
282
 
284
283
  it "includes the options" do
285
- Puppet::Util::Execution.expects(:execute).with(["/bin/rpm", ["-e", "--nodeps"], 'myresource-1.2.3.4-5.el4.noarch'], execute_options)
284
+ expect(Puppet::Util::Execution).to receive(:execute).with(["/bin/rpm", ["-e", "--nodeps"], 'myresource-1.2.3.4-5.el4.noarch'], execute_options)
286
285
  provider.uninstall
287
286
  end
288
287
  end
@@ -290,10 +289,10 @@ describe provider_class do
290
289
 
291
290
  describe "parsing" do
292
291
  def parser_test(rpm_output_string, gold_hash, number_of_debug_logs = 0)
293
- Puppet.expects(:debug).times(number_of_debug_logs)
294
- Puppet::Util::Execution.expects(:execute)
292
+ expect(Puppet).to receive(:debug).exactly(number_of_debug_logs).times()
293
+ expect(Puppet::Util::Execution).to receive(:execute)
295
294
  .with(["/bin/rpm", "-q", resource_name, "--nosignature", "--nodigest", "--qf", "'#{nevra_format}'"], execute_options)
296
- .returns(Puppet::Util::Execution::ProcessOutput.new(rpm_output_string, 0))
295
+ .and_return(Puppet::Util::Execution::ProcessOutput.new(rpm_output_string, 0))
297
296
  expect(provider.query).to eq(gold_hash)
298
297
  end
299
298
 
@@ -313,7 +312,6 @@ describe provider_class do
313
312
  let(:line) { 'name epoch version release arch' }
314
313
 
315
314
  ['name', 'epoch', 'version', 'release', 'arch'].each do |field|
316
-
317
315
  it "still parses if #{field} is replaced by delimiter" do
318
316
  parser_test(
319
317
  line.gsub(field, delimiter),
@@ -323,7 +321,6 @@ describe provider_class do
323
321
  )
324
322
  )
325
323
  end
326
-
327
324
  end
328
325
 
329
326
  it "does not fail if line is unparseable, but issues a debug log" do
@@ -332,9 +329,9 @@ describe provider_class do
332
329
 
333
330
  describe "when the package is not found" do
334
331
  before do
335
- Puppet.expects(:debug).never
332
+ expect(Puppet).not_to receive(:debug)
336
333
  expected_args = ["/bin/rpm", "-q", resource_name, "--nosignature", "--nodigest", "--qf", "'#{nevra_format}'"]
337
- Puppet::Util::Execution.expects(:execute).with(expected_args, execute_options).raises Puppet::ExecutionFailure.new("package #{resource_name} is not installed")
334
+ expect(Puppet::Util::Execution).to receive(:execute).with(expected_args, execute_options).and_raise(Puppet::ExecutionFailure.new("package #{resource_name} is not installed"))
338
335
  end
339
336
 
340
337
  it "does not log or fail if allow_virtual is false" do
@@ -345,7 +342,7 @@ describe provider_class do
345
342
  it "does not log or fail if allow_virtual is true" do
346
343
  resource[:allow_virtual] = true
347
344
  expected_args = ['/bin/rpm', '-q', resource_name, '--nosignature', '--nodigest', '--qf', "'#{nevra_format}'", '--whatprovides']
348
- Puppet::Util::Execution.expects(:execute).with(expected_args, execute_options).raises Puppet::ExecutionFailure.new("package #{resource_name} is not provided")
345
+ expect(Puppet::Util::Execution).to receive(:execute).with(expected_args, execute_options).and_raise(Puppet::ExecutionFailure.new("package #{resource_name} is not provided"))
349
346
  expect(provider.query).to be_nil
350
347
  end
351
348
  end
@@ -353,10 +350,10 @@ describe provider_class do
353
350
  it "parses virtual package" do
354
351
  provider.resource[:allow_virtual] = true
355
352
  expected_args = ["/bin/rpm", "-q", resource_name, "--nosignature", "--nodigest", "--qf", "'#{nevra_format}'"]
356
- Puppet::Util::Execution.expects(:execute).with(expected_args, execute_options).raises Puppet::ExecutionFailure.new("package #{resource_name} is not installed")
357
- Puppet::Util::Execution.expects(:execute)
353
+ expect(Puppet::Util::Execution).to receive(:execute).with(expected_args, execute_options).and_raise(Puppet::ExecutionFailure.new("package #{resource_name} is not installed"))
354
+ expect(Puppet::Util::Execution).to receive(:execute)
358
355
  .with(expected_args + ["--whatprovides"], execute_options)
359
- .returns(Puppet::Util::Execution::ProcessOutput.new("myresource 0 1.2.3.4 5.el4 noarch\n", 0))
356
+ .and_return(Puppet::Util::Execution::ProcessOutput.new("myresource 0 1.2.3.4 5.el4 noarch\n", 0))
360
357
  expect(provider.query).to eq({
361
358
  :name => "myresource",
362
359
  :epoch => "0",
@@ -430,8 +427,8 @@ describe provider_class do
430
427
  }.each do |version, expected|
431
428
  describe "when current version is #{version}" do
432
429
  it "returns #{expected.inspect}" do
433
- provider_class.stubs(:current_version).returns(version)
434
- expect(provider_class.nodigest).to eq(expected)
430
+ allow(described_class).to receive(:current_version).and_return(version)
431
+ expect(described_class.nodigest).to eq(expected)
435
432
  end
436
433
  end
437
434
  end
@@ -446,15 +443,14 @@ describe provider_class do
446
443
  }.each do |version, expected|
447
444
  describe "when current version is #{version}" do
448
445
  it "returns #{expected.inspect}" do
449
- provider_class.stubs(:current_version).returns(version)
450
- expect(provider_class.nosignature).to eq(expected)
446
+ allow(described_class).to receive(:current_version).and_return(version)
447
+ expect(described_class.nosignature).to eq(expected)
451
448
  end
452
449
  end
453
450
  end
454
451
  end
455
452
 
456
453
  describe 'version comparison' do
457
-
458
454
  # test cases munged directly from rpm's own
459
455
  # tests/rpmvercmp.at
460
456
  it { expect(provider.rpmvercmp("1.0", "1.0")).to eq(0) }
@@ -538,7 +534,6 @@ describe provider_class do
538
534
  end
539
535
 
540
536
  describe 'package evr parsing' do
541
-
542
537
  it 'should parse full simple evr' do
543
538
  v = provider.rpm_parse_evr('0:1.2.3-4.el5')
544
539
  expect(v[:epoch]).to eq('0')
@@ -595,11 +590,9 @@ describe provider_class do
595
590
  expect(v[:version]).to eq('2.2')
596
591
  expect(v[:release]).to eq('SNAPSHOT20121119105647')
597
592
  end
598
-
599
593
  end
600
594
 
601
595
  describe 'rpm evr comparison' do
602
-
603
596
  # currently passing tests
604
597
  it 'should evaluate identical version-release as equal' do
605
598
  v = provider.rpm_compareEVR({:epoch => '0', :version => '1.2.3', :release => '1.el5'},
@@ -643,11 +636,9 @@ describe provider_class do
643
636
  expect(provider.rpm_compareEVR({:epoch => '0', :version => '2.2', :release => '405'},
644
637
  {:epoch => '0', :version => '2.2', :release => '406'})).to eq(-1)
645
638
  end
646
-
647
639
  end
648
640
 
649
641
  describe 'version segment comparison' do
650
-
651
642
  it 'should treat two nil values as equal' do
652
643
  v = provider.compare_values(nil, nil)
653
644
  expect(v).to eq(0)
@@ -664,11 +655,9 @@ describe provider_class do
664
655
  end
665
656
 
666
657
  it 'should pass two non-nil values on to rpmvercmp' do
667
- provider.stubs(:rpmvercmp) { 0 }
668
- provider.expects(:rpmvercmp).with('s1', 's2')
658
+ allow(provider).to receive(:rpmvercmp).and_return(0)
659
+ expect(provider).to receive(:rpmvercmp).with('s1', 's2')
669
660
  provider.compare_values('s1', 's2')
670
661
  end
671
-
672
662
  end
673
-
674
663
  end