puppet 6.4.0-x64-mingw32 → 6.4.1-x64-mingw32

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,4 +1,3 @@
1
- #! /usr/bin/env ruby
2
1
  require 'spec_helper'
3
2
 
4
3
  describe Puppet::Type.type(:package).provider(:opkg) do
@@ -10,24 +9,23 @@ describe Puppet::Type.type(:package).provider(:opkg) do
10
9
  let(:provider) { described_class.new(resource) }
11
10
 
12
11
  before do
13
- Puppet::Util::Execution.stubs(:execute).never
14
- Puppet::Util.stubs(:which).with("opkg").returns("/bin/opkg")
15
- provider.stubs(:package_lists).returns ['.', '..', 'packages']
12
+ allow(Puppet::Util).to receive(:which).with("opkg").and_return("/bin/opkg")
13
+ allow(provider).to receive(:package_lists).and_return(['.', '..', 'packages'])
16
14
  end
17
15
 
18
16
  describe "when installing" do
19
17
  before do
20
- provider.stubs(:query).returns({ :ensure => '1.0' })
18
+ allow(provider).to receive(:query).and_return({ :ensure => '1.0' })
21
19
  end
22
20
 
23
21
  context "when the package list is absent" do
24
22
  before do
25
- provider.stubs(:package_lists).returns ['.', '..'] #empty, no package list
23
+ allow(provider).to receive(:package_lists).and_return(['.', '..']) #empty, no package list
26
24
  end
27
25
 
28
26
  it "fetches the package list when installing" do
29
- provider.expects(:opkg).with('update')
30
- provider.expects(:opkg).with("--force-overwrite", "install", resource[:name])
27
+ expect(provider).to receive(:opkg).with('update')
28
+ expect(provider).to receive(:opkg).with("--force-overwrite", "install", resource[:name])
31
29
 
32
30
  provider.install
33
31
  end
@@ -35,19 +33,19 @@ describe Puppet::Type.type(:package).provider(:opkg) do
35
33
 
36
34
  context "when the package list is present" do
37
35
  before do
38
- provider.stubs(:package_lists).returns ['.', '..', 'lists'] # With a pre-downloaded package list
36
+ allow(provider).to receive(:package_lists).and_return(['.', '..', 'lists']) # With a pre-downloaded package list
39
37
  end
40
38
 
41
39
  it "fetches the package list when installing" do
42
- provider.expects(:opkg).with('update').never
43
- provider.expects(:opkg).with("--force-overwrite", "install", resource[:name])
40
+ expect(provider).not_to receive(:opkg).with('update')
41
+ expect(provider).to receive(:opkg).with("--force-overwrite", "install", resource[:name])
44
42
 
45
43
  provider.install
46
44
  end
47
45
  end
48
46
 
49
47
  it "should call opkg install" do
50
- Puppet::Util::Execution.expects(:execute).with(["/bin/opkg", "--force-overwrite", "install", resource[:name]], {:failonfail => true, :combine => true, :custom_environment => {}})
48
+ expect(Puppet::Util::Execution).to receive(:execute).with(["/bin/opkg", "--force-overwrite", "install", resource[:name]], {:failonfail => true, :combine => true, :custom_environment => {}})
51
49
  provider.install
52
50
  end
53
51
 
@@ -60,7 +58,7 @@ describe Puppet::Type.type(:package).provider(:opkg) do
60
58
  }.each do |source|
61
59
  it "should install #{source} directly" do
62
60
  resource[:source] = source
63
- Puppet::Util::Execution.expects(:execute).with(["/bin/opkg", "--force-overwrite", "install", resource[:source]], {:failonfail => true, :combine => true, :custom_environment => {}})
61
+ expect(Puppet::Util::Execution).to receive(:execute).with(["/bin/opkg", "--force-overwrite", "install", resource[:source]], {:failonfail => true, :combine => true, :custom_environment => {}})
64
62
  provider.install
65
63
  end
66
64
  end
@@ -74,7 +72,7 @@ describe Puppet::Type.type(:package).provider(:opkg) do
74
72
  end
75
73
 
76
74
  it "should install from the path segment of the URL" do
77
- Puppet::Util::Execution.expects(:execute).returns(Puppet::Util::Execution::ProcessOutput.new("", 0))
75
+ expect(Puppet::Util::Execution).to receive(:execute).and_return(Puppet::Util::Execution::ProcessOutput.new("", 0))
78
76
  provider.install
79
77
  end
80
78
  end
@@ -82,7 +80,7 @@ describe Puppet::Type.type(:package).provider(:opkg) do
82
80
  context "with invalid URL for opkg" do
83
81
  before do
84
82
  # Emulate the `opkg` command returning a non-zero exit value
85
- Puppet::Util::Execution.stubs(:execute).raises Puppet::ExecutionFailure, 'oops'
83
+ allow(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure, 'oops')
86
84
  end
87
85
 
88
86
  context "puppet://server/whatever" do
@@ -110,20 +108,19 @@ describe Puppet::Type.type(:package).provider(:opkg) do
110
108
 
111
109
  describe "when updating" do
112
110
  it "should call install" do
113
- provider.expects(:install).returns("install return value")
111
+ expect(provider).to receive(:install).and_return("install return value")
114
112
  expect(provider.update).to eq("install return value")
115
113
  end
116
114
  end
117
115
 
118
116
  describe "when uninstalling" do
119
117
  it "should run opkg remove bla" do
120
- Puppet::Util::Execution.expects(:execute).with(["/bin/opkg", "remove", resource[:name]], {:failonfail => true, :combine => true, :custom_environment => {}})
118
+ expect(Puppet::Util::Execution).to receive(:execute).with(["/bin/opkg", "remove", resource[:name]], {:failonfail => true, :combine => true, :custom_environment => {}})
121
119
  provider.uninstall
122
120
  end
123
121
  end
124
122
 
125
123
  describe "when querying" do
126
-
127
124
  describe "self.instances" do
128
125
  let (:packages) do
129
126
  <<-OPKG_OUTPUT
@@ -132,10 +129,11 @@ kernel - 3.3.8-1-ba5cdb2523b4fc7722698b4a7ece6702
132
129
  uhttpd - 2012-10-30-e57bf6d8bfa465a50eea2c30269acdfe751a46fd
133
130
  OPKG_OUTPUT
134
131
  end
132
+
135
133
  it "returns an array of packages" do
136
- Puppet::Util.stubs(:which).with("opkg").returns("/bin/opkg")
137
- described_class.stubs(:which).with("opkg").returns("/bin/opkg")
138
- described_class.expects(:execpipe).with("/bin/opkg list-installed").yields(packages)
134
+ allow(Puppet::Util).to receive(:which).with("opkg").and_return("/bin/opkg")
135
+ allow(described_class).to receive(:which).with("opkg").and_return("/bin/opkg")
136
+ expect(described_class).to receive(:execpipe).with("/bin/opkg list-installed").and_yield(packages)
139
137
 
140
138
  installed_packages = described_class.instances
141
139
  expect(installed_packages.length).to eq(3)
@@ -165,12 +163,12 @@ OPKG_OUTPUT
165
163
  end
166
164
 
167
165
  it "should return a nil if the package isn't found" do
168
- Puppet::Util::Execution.expects(:execute).returns(Puppet::Util::Execution::ProcessOutput.new("", 0))
166
+ expect(Puppet::Util::Execution).to receive(:execute).and_return(Puppet::Util::Execution::ProcessOutput.new("", 0))
169
167
  expect(provider.query).to be_nil
170
168
  end
171
169
 
172
170
  it "should return a hash indicating that the package is missing on error" do
173
- Puppet::Util::Execution.expects(:execute).raises(Puppet::ExecutionFailure.new("ERROR!"))
171
+ expect(Puppet::Util::Execution).to receive(:execute).and_raise(Puppet::ExecutionFailure.new("ERROR!"))
174
172
  expect(provider.query).to eq({
175
173
  :ensure => :purged,
176
174
  :status => 'missing',
@@ -178,6 +176,5 @@ OPKG_OUTPUT
178
176
  :error => 'ok',
179
177
  })
180
178
  end
181
- end #end when querying
182
-
183
- end # end describe provider
179
+ end
180
+ end
@@ -1,4 +1,3 @@
1
- #! /usr/bin/env ruby
2
1
  require 'spec_helper'
3
2
  require 'stringio'
4
3
 
@@ -11,37 +10,37 @@ describe Puppet::Type.type(:package).provider(:pacman) do
11
10
  let(:provider) { described_class.new(resource) }
12
11
 
13
12
  before do
14
- resolver.stubs(:which).with('/usr/bin/pacman').returns('/usr/bin/pacman')
15
- described_class.stubs(:which).with('/usr/bin/pacman').returns('/usr/bin/pacman')
16
- resolver.stubs(:which).with('/usr/bin/yaourt').returns('/usr/bin/yaourt')
17
- described_class.stubs(:which).with('/usr/bin/yaourt').returns('/usr/bin/yaourt')
18
- described_class.stubs(:group?).returns(false)
19
- described_class.stubs(:yaourt?).returns(false)
13
+ allow(resolver).to receive(:which).with('/usr/bin/pacman').and_return('/usr/bin/pacman')
14
+ allow(described_class).to receive(:which).with('/usr/bin/pacman').and_return('/usr/bin/pacman')
15
+ allow(resolver).to receive(:which).with('/usr/bin/yaourt').and_return('/usr/bin/yaourt')
16
+ allow(described_class).to receive(:which).with('/usr/bin/yaourt').and_return('/usr/bin/yaourt')
17
+ allow(described_class).to receive(:group?).and_return(false)
18
+ allow(described_class).to receive(:yaourt?).and_return(false)
20
19
  end
21
20
 
22
21
  describe "when installing" do
23
22
  before do
24
- provider.stubs(:query).returns({
23
+ allow(provider).to receive(:query).and_return({
25
24
  :ensure => '1.0'
26
25
  })
27
26
  end
28
27
 
29
28
  it "should call pacman to install the right package quietly when yaourt is not installed" do
30
29
  args = ['--noconfirm', '--needed', '--noprogressbar', '-Sy', resource[:name]]
31
- provider.expects(:pacman).at_least_once.with(*args).returns ''
30
+ expect(provider).to receive(:pacman).at_least(:once).with(*args).and_return('')
32
31
  provider.install
33
32
  end
34
33
 
35
34
  it "should call yaourt to install the right package quietly when yaourt is installed" do
36
- described_class.stubs(:yaourt?).returns(true)
35
+ allow(described_class).to receive(:yaourt?).and_return(true)
37
36
  args = ['--noconfirm', '--needed', '--noprogressbar', '-Sy', resource[:name]]
38
- provider.expects(:yaourt).at_least_once.with(*args).returns ''
37
+ expect(provider).to receive(:yaourt).at_least(:once).with(*args).and_return('')
39
38
  provider.install
40
39
  end
41
40
 
42
41
  it "should raise an Puppet::Error if the installation failed" do
43
- executor.stubs(:execute).returns("")
44
- provider.expects(:query).returns(nil)
42
+ allow(executor).to receive(:execute).and_return("")
43
+ expect(provider).to receive(:query).and_return(nil)
45
44
 
46
45
  expect {
47
46
  provider.install
@@ -49,7 +48,7 @@ describe Puppet::Type.type(:package).provider(:pacman) do
49
48
  end
50
49
 
51
50
  it "should raise an Puppet::Error when trying to install a group and allow_virtual is false" do
52
- described_class.stubs(:group?).returns(true)
51
+ allow(described_class).to receive(:group?).and_return(true)
53
52
  resource[:allow_virtual] = false
54
53
  expect {
55
54
  provider.install
@@ -57,9 +56,9 @@ describe Puppet::Type.type(:package).provider(:pacman) do
57
56
  end
58
57
 
59
58
  it "should not raise an Puppet::Error when trying to install a group and allow_virtual is true" do
60
- described_class.stubs(:group?).returns(true)
59
+ allow(described_class).to receive(:group?).and_return(true)
61
60
  resource[:allow_virtual] = true
62
- executor.stubs(:execute).returns("")
61
+ allow(executor).to receive(:execute).and_return("")
63
62
  provider.install
64
63
  end
65
64
 
@@ -70,14 +69,14 @@ describe Puppet::Type.type(:package).provider(:pacman) do
70
69
 
71
70
  it "should call pacman to install the right package quietly when yaourt is not installed" do
72
71
  args = ['--noconfirm', '--needed', '--noprogressbar', '-x', '--arg=value', '-Sy', resource[:name]]
73
- provider.expects(:pacman).at_least_once.with(*args).returns ''
72
+ expect(provider).to receive(:pacman).at_least(:once).with(*args).and_return('')
74
73
  provider.install
75
74
  end
76
75
 
77
76
  it "should call yaourt to install the right package quietly when yaourt is installed" do
78
- described_class.stubs(:yaourt?).returns(true)
77
+ expect(described_class).to receive(:yaourt?).and_return(true)
79
78
  args = ['--noconfirm', '--needed', '--noprogressbar', '-x', '--arg=value', '-Sy', resource[:name]]
80
- provider.expects(:yaourt).at_least_once.with(*args).returns ''
79
+ expect(provider).to receive(:yaourt).at_least(:once).with(*args).and_return('')
81
80
  provider.install
82
81
  end
83
82
  end
@@ -94,15 +93,15 @@ describe Puppet::Type.type(:package).provider(:pacman) do
94
93
  it "should install #{source} directly" do
95
94
  resource[:source] = source
96
95
 
97
- executor.expects(:execute).
98
- with(all_of(includes("-Sy"), includes("--noprogressbar")), no_extra_options).
99
- in_sequence(install_seq).
100
- returns("")
96
+ expect(executor).to receive(:execute).
97
+ with(include("-Sy") & include("--noprogressbar"), no_extra_options).
98
+ ordered.
99
+ and_return("")
101
100
 
102
- executor.expects(:execute).
103
- with(all_of(includes("-U"), includes(source)), no_extra_options).
104
- in_sequence(install_seq).
105
- returns("")
101
+ expect(executor).to receive(:execute).
102
+ with(include("-U") & include(source), no_extra_options).
103
+ ordered.
104
+ and_return("")
106
105
 
107
106
  provider.install
108
107
  end
@@ -117,18 +116,16 @@ describe Puppet::Type.type(:package).provider(:pacman) do
117
116
  end
118
117
 
119
118
  it "should install from the path segment of the URL" do
120
- executor.expects(:execute).
121
- with(all_of(includes("-Sy"),
122
- includes("--noprogressbar"),
123
- includes("--noconfirm")),
119
+ expect(executor).to receive(:execute).
120
+ with(include("-Sy") & include("--noprogressbar") & include("--noconfirm"),
124
121
  no_extra_options).
125
- in_sequence(install_seq).
126
- returns("")
122
+ ordered.
123
+ and_return("")
127
124
 
128
- executor.expects(:execute).
129
- with(all_of(includes("-U"), includes(actual_file_path)), no_extra_options).
130
- in_sequence(install_seq).
131
- returns("")
125
+ expect(executor).to receive(:execute).
126
+ with(include("-U") & include(actual_file_path), no_extra_options).
127
+ ordered.
128
+ and_return("")
132
129
 
133
130
  provider.install
134
131
  end
@@ -162,7 +159,7 @@ describe Puppet::Type.type(:package).provider(:pacman) do
162
159
 
163
160
  describe "when updating" do
164
161
  it "should call install" do
165
- provider.expects(:install).returns("install return value")
162
+ expect(provider).to receive(:install).and_return("install return value")
166
163
  expect(provider.update).to eq("install return value")
167
164
  end
168
165
  end
@@ -170,78 +167,77 @@ describe Puppet::Type.type(:package).provider(:pacman) do
170
167
  describe "when uninstalling" do
171
168
  it "should call pacman to remove the right package quietly" do
172
169
  args = ["/usr/bin/pacman", "--noconfirm", "--noprogressbar", "-R", resource[:name]]
173
- executor.expects(:execute).with(args, no_extra_options).returns ""
170
+ expect(executor).to receive(:execute).with(args, no_extra_options).and_return("")
174
171
  provider.uninstall
175
172
  end
176
173
 
177
174
  it "should call yaourt to remove the right package quietly" do
178
- described_class.stubs(:yaourt?).returns(true)
175
+ allow(described_class).to receive(:yaourt?).and_return(true)
179
176
  args = ["--noconfirm", "--noprogressbar", "-R", resource[:name]]
180
- provider.expects(:yaourt).with(*args)
177
+ expect(provider).to receive(:yaourt).with(*args)
181
178
  provider.uninstall
182
179
  end
183
180
 
184
181
  it "adds any uninstall_options" do
185
182
  resource[:uninstall_options] = ['-x', {'--arg' => 'value'}]
186
183
  args = ["/usr/bin/pacman", "--noconfirm", "--noprogressbar", "-x", "--arg=value", "-R", resource[:name]]
187
- executor.expects(:execute).with(args, no_extra_options).returns ""
184
+ expect(executor).to receive(:execute).with(args, no_extra_options).and_return("")
188
185
  provider.uninstall
189
186
  end
190
187
 
191
188
  it "should recursively remove packages when given a package group" do
192
- described_class.stubs(:group?).returns(true)
189
+ allow(described_class).to receive(:group?).and_return(true)
193
190
  args = ["/usr/bin/pacman", "--noconfirm", "--noprogressbar", "-R", "-s", resource[:name]]
194
- executor.expects(:execute).with(args, no_extra_options).returns ""
191
+ expect(executor).to receive(:execute).with(args, no_extra_options).and_return("")
195
192
  provider.uninstall
196
193
  end
197
194
  end
198
195
 
199
196
  describe "when querying" do
200
197
  it "should query pacman" do
201
- executor.expects(:execpipe).with(["/usr/bin/pacman", '-Q'])
202
- executor.expects(:execpipe).with(["/usr/bin/pacman", '-Sgg', 'package'])
198
+ expect(executor).to receive(:execpipe).with(["/usr/bin/pacman", '-Q'])
199
+ expect(executor).to receive(:execpipe).with(["/usr/bin/pacman", '-Sgg', 'package'])
203
200
  provider.query
204
201
  end
205
202
 
206
203
  it "should return the version" do
207
- executor.
208
- expects(:execpipe).
209
- with(["/usr/bin/pacman", "-Q"]).yields(<<EOF)
204
+ expect(executor).to receive(:execpipe).
205
+ with(["/usr/bin/pacman", "-Q"]).and_yield(<<EOF)
210
206
  otherpackage 1.2.3.4
211
207
  package 1.01.3-2
212
208
  yetanotherpackage 1.2.3.4
213
209
  EOF
214
- executor.expects(:execpipe).with(['/usr/bin/pacman', '-Sgg', 'package']).yields('')
210
+ expect(executor).to receive(:execpipe).with(['/usr/bin/pacman', '-Sgg', 'package']).and_yield('')
215
211
 
216
212
  expect(provider.query).to eq({ :name => 'package', :ensure => '1.01.3-2', :provider => :pacman, })
217
213
  end
218
214
 
219
215
  it "should return a hash indicating that the package is missing" do
220
- executor.expects(:execpipe).twice.yields("")
216
+ expect(executor).to receive(:execpipe).twice.and_yield("")
221
217
  expect(provider.query).to be_nil
222
218
  end
223
219
 
224
220
  it "should raise an error if execpipe fails" do
225
- executor.expects(:execpipe).raises(Puppet::ExecutionFailure.new("ERROR!"))
221
+ expect(executor).to receive(:execpipe).and_raise(Puppet::ExecutionFailure.new("ERROR!"))
226
222
 
227
223
  expect { provider.query }.to raise_error(RuntimeError)
228
224
  end
229
225
 
230
226
  describe 'when querying a group' do
231
227
  before :each do
232
- executor.expects(:execpipe).with(['/usr/bin/pacman', '-Q']).yields('foo 1.2.3')
233
- executor.expects(:execpipe).with(['/usr/bin/pacman', '-Sgg', 'package']).yields('package foo')
228
+ expect(executor).to receive(:execpipe).with(['/usr/bin/pacman', '-Q']).and_yield('foo 1.2.3')
229
+ expect(executor).to receive(:execpipe).with(['/usr/bin/pacman', '-Sgg', 'package']).and_yield('package foo')
234
230
  end
235
231
 
236
232
  it 'should warn when allow_virtual is false' do
237
233
  resource[:allow_virtual] = false
238
- provider.expects(:warning)
234
+ expect(provider).to receive(:warning)
239
235
  provider.query
240
236
  end
241
237
 
242
238
  it 'should not warn allow_virtual is true' do
243
239
  resource[:allow_virtual] = true
244
- described_class.expects(:warning).never
240
+ expect(described_class).not_to receive(:warning)
245
241
  provider.query
246
242
  end
247
243
  end
@@ -249,14 +245,14 @@ EOF
249
245
 
250
246
  describe "when determining instances" do
251
247
  it "should retrieve installed packages and groups" do
252
- described_class.expects(:execpipe).with(["/usr/bin/pacman", '-Q'])
253
- described_class.expects(:execpipe).with(["/usr/bin/pacman", '-Sgg'])
248
+ expect(described_class).to receive(:execpipe).with(["/usr/bin/pacman", '-Q'])
249
+ expect(described_class).to receive(:execpipe).with(["/usr/bin/pacman", '-Sgg'])
254
250
  described_class.instances
255
251
  end
256
252
 
257
253
  it "should return installed packages" do
258
- described_class.expects(:execpipe).with(["/usr/bin/pacman", '-Q']).yields(StringIO.new("package1 1.23-4\npackage2 2.00\n"))
259
- described_class.expects(:execpipe).with(["/usr/bin/pacman", '-Sgg']).yields("")
254
+ expect(described_class).to receive(:execpipe).with(["/usr/bin/pacman", '-Q']).and_yield(StringIO.new("package1 1.23-4\npackage2 2.00\n"))
255
+ expect(described_class).to receive(:execpipe).with(["/usr/bin/pacman", '-Sgg']).and_yield("")
260
256
  instances = described_class.instances
261
257
 
262
258
  expect(instances.length).to eq(2)
@@ -275,11 +271,11 @@ EOF
275
271
  end
276
272
 
277
273
  it "should return completely installed groups with a virtual version together with packages" do
278
- described_class.expects(:execpipe).with(["/usr/bin/pacman", '-Q']).yields(<<EOF)
274
+ expect(described_class).to receive(:execpipe).with(["/usr/bin/pacman", '-Q']).and_yield(<<EOF)
279
275
  package1 1.00
280
276
  package2 1.00
281
277
  EOF
282
- described_class.expects(:execpipe).with(["/usr/bin/pacman", '-Sgg']).yields(<<EOF)
278
+ expect(described_class).to receive(:execpipe).with(["/usr/bin/pacman", '-Sgg']).and_yield(<<EOF)
283
279
  group1 package1
284
280
  group1 package2
285
281
  EOF
@@ -305,10 +301,10 @@ EOF
305
301
  end
306
302
 
307
303
  it "should not return partially installed packages" do
308
- described_class.expects(:execpipe).with(["/usr/bin/pacman", '-Q']).yields(<<EOF)
304
+ expect(described_class).to receive(:execpipe).with(["/usr/bin/pacman", '-Q']).and_yield(<<EOF)
309
305
  package1 1.00
310
306
  EOF
311
- described_class.expects(:execpipe).with(["/usr/bin/pacman", '-Sgg']).yields(<<EOF)
307
+ expect(described_class).to receive(:execpipe).with(["/usr/bin/pacman", '-Sgg']).and_yield(<<EOF)
312
308
  group1 package1
313
309
  group1 package2
314
310
  EOF
@@ -324,7 +320,7 @@ EOF
324
320
  end
325
321
 
326
322
  it 'should sort package names for installed groups' do
327
- described_class.expects(:execpipe).with(['/usr/bin/pacman', '-Sgg', 'group1']).yields(<<EOF)
323
+ expect(described_class).to receive(:execpipe).with(['/usr/bin/pacman', '-Sgg', 'group1']).and_yield(<<EOF)
328
324
  group1 aa
329
325
  group1 b
330
326
  group1 a
@@ -340,70 +336,52 @@ EOF
340
336
  end
341
337
 
342
338
  it "should return nil on error" do
343
- described_class.expects(:execpipe).raises(Puppet::ExecutionFailure.new("ERROR!"))
339
+ expect(described_class).to receive(:execpipe).and_raise(Puppet::ExecutionFailure.new("ERROR!"))
344
340
  expect { described_class.instances }.to raise_error(RuntimeError)
345
341
  end
346
342
 
347
343
  it "should warn on invalid input" do
348
- described_class.expects(:execpipe).twice.yields(StringIO.new("blah"))
349
- described_class.expects(:warning).with("Failed to match line 'blah'")
344
+ expect(described_class).to receive(:execpipe).twice.and_yield(StringIO.new("blah"))
345
+ expect(described_class).to receive(:warning).with("Failed to match line 'blah'")
350
346
  expect(described_class.instances).to eq([])
351
347
  end
352
348
  end
353
349
 
354
350
  describe "when determining the latest version" do
355
351
  it "should refresh package list" do
356
- get_latest_version = sequence("get_latest_version")
357
- executor.
358
- expects(:execute).
359
- in_sequence(get_latest_version).
352
+ expect(executor).to receive(:execute).
353
+ ordered.
360
354
  with(['/usr/bin/pacman', '-Sy'], no_extra_options)
361
355
 
362
- executor.
363
- stubs(:execute).
364
- in_sequence(get_latest_version).
365
- returns("")
356
+ expect(executor).to receive(:execute).
357
+ ordered.
358
+ and_return("")
366
359
 
367
360
  provider.latest
368
361
  end
369
362
 
370
363
  it "should get query pacman for the latest version" do
371
- get_latest_version = sequence("get_latest_version")
372
- executor.
373
- stubs(:execute).
374
- in_sequence(get_latest_version)
375
-
376
- executor.
377
- expects(:execute).
378
- in_sequence(get_latest_version).
364
+ expect(executor).to receive(:execute).ordered
365
+
366
+ expect(executor).to receive(:execute).
367
+ ordered.
379
368
  with(['/usr/bin/pacman', '-Sp', '--print-format', '%v', resource[:name]], no_extra_options).
380
- returns("")
369
+ and_return("")
381
370
 
382
371
  provider.latest
383
372
  end
384
373
 
385
374
  it "should return the version number from pacman" do
386
- executor.
387
- expects(:execute).
388
- at_least_once().
389
- returns("1.00.2-3\n")
375
+ expect(executor).to receive(:execute).at_least(:once).and_return("1.00.2-3\n")
390
376
 
391
377
  expect(provider.latest).to eq("1.00.2-3")
392
378
  end
393
379
 
394
380
  it "should return a virtual group version when resource is a package group" do
395
- described_class.stubs(:group?).returns(true)
396
- get_latest_version = sequence("get_latest_version")
397
- executor.
398
- stubs(:execute).
399
- with(['/usr/bin/pacman', '-Sy'], no_extra_options).
400
- in_sequence(get_latest_version)
401
-
402
- executor.
403
- expects(:execute).
404
- in_sequence(get_latest_version).
405
- with(['/usr/bin/pacman', '-Sp', '--print-format', '%n %v', resource[:name]], no_extra_options).
406
- returns(<<EOF)
381
+ allow(described_class).to receive(:group?).and_return(true)
382
+ expect(executor).to receive(:execute).with(['/usr/bin/pacman', '-Sy'], no_extra_options).ordered
383
+ expect(executor).to receive(:execute).with(['/usr/bin/pacman', '-Sp', '--print-format', '%n %v', resource[:name]], no_extra_options).ordered.
384
+ and_return(<<EOF)
407
385
  package2 1.0.1
408
386
  package1 1.0.0
409
387
  EOF
@@ -413,21 +391,21 @@ EOF
413
391
 
414
392
  describe 'when determining if a resource is a group' do
415
393
  before do
416
- described_class.unstub(:group?)
394
+ allow(described_class).to receive(:group?).and_call_original
417
395
  end
418
396
 
419
397
  it 'should return false on non-zero pacman exit' do
420
- executor.stubs(:execute).with(['/usr/bin/pacman', '-Sg', 'git'], {:failonfail => true, :combine => true, :custom_environment => {}}).raises(Puppet::ExecutionFailure, 'error')
398
+ allow(executor).to receive(:execute).with(['/usr/bin/pacman', '-Sg', 'git'], {:failonfail => true, :combine => true, :custom_environment => {}}).and_raise(Puppet::ExecutionFailure, 'error')
421
399
  expect(described_class.group?('git')).to eq(false)
422
400
  end
423
401
 
424
402
  it 'should return false on empty pacman output' do
425
- executor.stubs(:execute).with(['/usr/bin/pacman', '-Sg', 'git'], {:failonfail => true, :combine => true, :custom_environment => {}}).returns ''
403
+ allow(executor).to receive(:execute).with(['/usr/bin/pacman', '-Sg', 'git'], {:failonfail => true, :combine => true, :custom_environment => {}}).and_return('')
426
404
  expect(described_class.group?('git')).to eq(false)
427
405
  end
428
406
 
429
407
  it 'should return true on non-empty pacman output' do
430
- executor.stubs(:execute).with(['/usr/bin/pacman', '-Sg', 'vim-plugins'], {:failonfail => true, :combine => true, :custom_environment => {}}).returns 'vim-plugins vim-a'
408
+ allow(executor).to receive(:execute).with(['/usr/bin/pacman', '-Sg', 'vim-plugins'], {:failonfail => true, :combine => true, :custom_environment => {}}).and_return('vim-plugins vim-a')
431
409
  expect(described_class.group?('vim-plugins')).to eq(true)
432
410
  end
433
411
  end
@@ -437,32 +415,33 @@ EOF
437
415
  let(:groups) { [['foo package1'], ['foo package2'], ['bar package3'], ['bar package4'], ['baz package5']] }
438
416
 
439
417
  it 'should raise an error on non-zero pacman exit without a filter' do
440
- executor.expects(:open).with('| /usr/bin/pacman -Sgg 2>&1').returns 'error!'
441
- Puppet::Util::Execution.expects(:exitstatus).returns 1
418
+ expect(executor).to receive(:open).with('| /usr/bin/pacman -Sgg 2>&1').and_return('error!')
419
+ expect(Puppet::Util::Execution).to receive(:exitstatus).and_return(1)
442
420
  expect { described_class.get_installed_groups(installed_packages) }.to raise_error(Puppet::ExecutionFailure, 'error!')
443
421
  end
444
422
 
445
423
  it 'should return empty groups on non-zero pacman exit with a filter' do
446
- executor.expects(:open).with('| /usr/bin/pacman -Sgg git 2>&1').returns ''
447
- Puppet::Util::Execution.expects(:exitstatus).returns 1
424
+ expect(executor).to receive(:open).with('| /usr/bin/pacman -Sgg git 2>&1').and_return('')
425
+ expect(Puppet::Util::Execution).to receive(:exitstatus).and_return(1)
448
426
  expect(described_class.get_installed_groups(installed_packages, 'git')).to eq({})
449
427
  end
450
428
 
451
429
  it 'should return empty groups on empty pacman output' do
452
- pipe = stub()
453
- pipe.expects(:each_line)
454
- executor.expects(:open).with('| /usr/bin/pacman -Sgg 2>&1').yields(pipe).returns ''
455
- Puppet::Util::Execution.expects(:exitstatus).returns 0
430
+ pipe = double()
431
+ expect(pipe).to receive(:each_line)
432
+ expect(executor).to receive(:open).with('| /usr/bin/pacman -Sgg 2>&1').and_yield(pipe).and_return('')
433
+ expect(Puppet::Util::Execution).to receive(:exitstatus).and_return(0)
456
434
  expect(described_class.get_installed_groups(installed_packages)).to eq({})
457
435
  end
458
436
 
459
437
  it 'should return groups on non-empty pacman output' do
460
- pipe = stub()
461
- pipe.expects(:each_line).multiple_yields(*groups)
462
- executor.expects(:open).with('| /usr/bin/pacman -Sgg 2>&1').yields(pipe).returns ''
463
- Puppet::Util::Execution.expects(:exitstatus).returns 0
438
+ pipe = double()
439
+ pipe_expectation = receive(:each_line)
440
+ groups.each { |group| pipe_expectation = pipe_expectation.and_yield(*group) }
441
+ expect(pipe).to pipe_expectation
442
+ expect(executor).to receive(:open).with('| /usr/bin/pacman -Sgg 2>&1').and_yield(pipe).and_return('')
443
+ expect(Puppet::Util::Execution).to receive(:exitstatus).and_return(0)
464
444
  expect(described_class.get_installed_groups(installed_packages)).to eq({'foo' => 'package1 1.0, package2 2.0'})
465
445
  end
466
446
  end
467
-
468
447
  end