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
  require 'puppet/provider/ldap'
@@ -9,10 +8,10 @@ describe Puppet::Provider::Ldap do
9
8
  end
10
9
 
11
10
  it "should be able to define its manager" do
12
- manager = mock 'manager'
13
- Puppet::Util::Ldap::Manager.expects(:new).returns manager
14
- @class.stubs :mk_resource_methods
15
- manager.expects(:manages).with(:one)
11
+ manager = double('manager')
12
+ expect(Puppet::Util::Ldap::Manager).to receive(:new).and_return(manager)
13
+ allow(@class).to receive(:mk_resource_methods)
14
+ expect(manager).to receive(:manages).with(:one)
16
15
  expect(@class.manages(:one)).to equal(manager)
17
16
  expect(@class.manager).to equal(manager)
18
17
  end
@@ -22,10 +21,10 @@ describe Puppet::Provider::Ldap do
22
21
  end
23
22
 
24
23
  it "should create its resource getter/setter methods when the manager is defined" do
25
- manager = mock 'manager'
26
- Puppet::Util::Ldap::Manager.expects(:new).returns manager
27
- @class.expects :mk_resource_methods
28
- manager.stubs(:manages)
24
+ manager = double('manager')
25
+ expect(Puppet::Util::Ldap::Manager).to receive(:new).and_return(manager)
26
+ expect(@class).to receive(:mk_resource_methods)
27
+ allow(manager).to receive(:manages)
29
28
  expect(@class.manages(:one)).to equal(manager)
30
29
  end
31
30
 
@@ -35,14 +34,14 @@ describe Puppet::Provider::Ldap do
35
34
 
36
35
  describe "when providing a list of instances" do
37
36
  it "should convert all results returned from the manager's :search method into provider instances" do
38
- manager = mock 'manager'
39
- @class.stubs(:manager).returns manager
37
+ manager = double('manager')
38
+ allow(@class).to receive(:manager).and_return(manager)
40
39
 
41
- manager.expects(:search).returns %w{one two three}
40
+ expect(manager).to receive(:search).and_return(%w{one two three})
42
41
 
43
- @class.expects(:new).with("one").returns(1)
44
- @class.expects(:new).with("two").returns(2)
45
- @class.expects(:new).with("three").returns(3)
42
+ expect(@class).to receive(:new).with("one").and_return(1)
43
+ expect(@class).to receive(:new).with("two").and_return(2)
44
+ expect(@class).to receive(:new).with("three").and_return(3)
46
45
 
47
46
  expect(@class.instances).to eq([1,2,3])
48
47
  end
@@ -54,29 +53,29 @@ describe Puppet::Provider::Ldap do
54
53
 
55
54
  describe "when prefetching" do
56
55
  before do
57
- @manager = mock 'manager'
58
- @class.stubs(:manager).returns @manager
56
+ @manager = double('manager')
57
+ allow(@class).to receive(:manager).and_return(@manager)
59
58
 
60
- @resource = mock 'resource'
59
+ @resource = double('resource')
61
60
 
62
61
  @resources = {"one" => @resource}
63
62
  end
64
63
 
65
64
  it "should find an entry for each passed resource" do
66
- @manager.expects(:find).with("one").returns nil
65
+ expect(@manager).to receive(:find).with("one").and_return(nil)
67
66
 
68
- @class.stubs(:new)
69
- @resource.stubs(:provider=)
67
+ allow(@class).to receive(:new)
68
+ allow(@resource).to receive(:provider=)
70
69
  @class.prefetch(@resources)
71
70
  end
72
71
 
73
72
  describe "resources that do not exist" do
74
73
  it "should create a provider with :ensure => :absent" do
75
- @manager.expects(:find).with("one").returns nil
74
+ expect(@manager).to receive(:find).with("one").and_return(nil)
76
75
 
77
- @class.expects(:new).with(:ensure => :absent).returns "myprovider"
76
+ expect(@class).to receive(:new).with(:ensure => :absent).and_return("myprovider")
78
77
 
79
- @resource.expects(:provider=).with("myprovider")
78
+ expect(@resource).to receive(:provider=).with("myprovider")
80
79
 
81
80
  @class.prefetch(@resources)
82
81
  end
@@ -84,21 +83,21 @@ describe Puppet::Provider::Ldap do
84
83
 
85
84
  describe "resources that exist" do
86
85
  it "should create a provider with the results of the find" do
87
- @manager.expects(:find).with("one").returns("one" => "two")
86
+ expect(@manager).to receive(:find).with("one").and_return("one" => "two")
88
87
 
89
- @class.expects(:new).with("one" => "two", :ensure => :present).returns "myprovider"
88
+ expect(@class).to receive(:new).with("one" => "two", :ensure => :present).and_return("myprovider")
90
89
 
91
- @resource.expects(:provider=).with("myprovider")
90
+ expect(@resource).to receive(:provider=).with("myprovider")
92
91
 
93
92
  @class.prefetch(@resources)
94
93
  end
95
94
 
96
95
  it "should set :ensure to :present in the returned values" do
97
- @manager.expects(:find).with("one").returns("one" => "two")
96
+ expect(@manager).to receive(:find).with("one").and_return("one" => "two")
98
97
 
99
- @class.expects(:new).with("one" => "two", :ensure => :present).returns "myprovider"
98
+ expect(@class).to receive(:new).with("one" => "two", :ensure => :present).and_return("myprovider")
100
99
 
101
- @resource.expects(:provider=).with("myprovider")
100
+ expect(@resource).to receive(:provider=).with("myprovider")
102
101
 
103
102
  @class.prefetch(@resources)
104
103
  end
@@ -111,22 +110,22 @@ describe Puppet::Provider::Ldap do
111
110
  end
112
111
 
113
112
  it "should fail if the manager is invalid" do
114
- manager = stub "manager", :valid? => false
115
- @class.stubs(:manager).returns manager
113
+ manager = double("manager", :valid? => false)
114
+ allow(@class).to receive(:manager).and_return(manager)
116
115
  expect { @class.new }.to raise_error(Puppet::DevError)
117
116
  end
118
117
 
119
118
  describe "with a hash" do
120
119
  before do
121
- @manager = stub "manager", :valid? => true
122
- @class.stubs(:manager).returns @manager
120
+ @manager = double("manager", :valid? => true)
121
+ allow(@class).to receive(:manager).and_return(@manager)
123
122
 
124
- @resource_class = mock 'resource_class'
125
- @class.stubs(:resource_type).returns @resource_class
123
+ @resource_class = double('resource_class')
124
+ allow(@class).to receive(:resource_type).and_return(@resource_class)
126
125
 
127
- @property_class = stub 'property_class', :array_matching => :all, :superclass => Puppet::Property
128
- @resource_class.stubs(:attrclass).with(:one).returns(@property_class)
129
- @resource_class.stubs(:valid_parameter?).returns true
126
+ @property_class = double('property_class', :array_matching => :all, :superclass => Puppet::Property)
127
+ allow(@resource_class).to receive(:attrclass).with(:one).and_return(@property_class)
128
+ allow(@resource_class).to receive(:valid_parameter?).and_return(true)
130
129
  end
131
130
 
132
131
  it "should store a copy of the hash as its ldap_properties" do
@@ -135,29 +134,29 @@ describe Puppet::Provider::Ldap do
135
134
  end
136
135
 
137
136
  it "should only store the first value of each value array for those attributes that do not match all values" do
138
- @property_class.expects(:array_matching).returns :first
137
+ expect(@property_class).to receive(:array_matching).and_return(:first)
139
138
  instance = @class.new(:one => %w{two three})
140
139
  expect(instance.properties).to eq({:one => "two"})
141
140
  end
142
141
 
143
142
  it "should store the whole value array for those attributes that match all values" do
144
- @property_class.expects(:array_matching).returns :all
143
+ expect(@property_class).to receive(:array_matching).and_return(:all)
145
144
  instance = @class.new(:one => %w{two three})
146
145
  expect(instance.properties).to eq({:one => %w{two three}})
147
146
  end
148
147
 
149
148
  it "should only use the first value for attributes that are not properties" do
150
149
  # Yay. hackish, but easier than mocking everything.
151
- @resource_class.expects(:attrclass).with(:a).returns Puppet::Type.type(:user).attrclass(:name)
152
- @property_class.stubs(:array_matching).returns :all
150
+ expect(@resource_class).to receive(:attrclass).with(:a).and_return(Puppet::Type.type(:user).attrclass(:name))
151
+ allow(@property_class).to receive(:array_matching).and_return(:all)
153
152
 
154
153
  instance = @class.new(:one => %w{two three}, :a => %w{b c})
155
154
  expect(instance.properties).to eq({:one => %w{two three}, :a => "b"})
156
155
  end
157
156
 
158
157
  it "should discard any properties not valid in the resource class" do
159
- @resource_class.expects(:valid_parameter?).with(:a).returns false
160
- @property_class.stubs(:array_matching).returns :all
158
+ expect(@resource_class).to receive(:valid_parameter?).with(:a).and_return(false)
159
+ allow(@property_class).to receive(:array_matching).and_return(:all)
161
160
 
162
161
  instance = @class.new(:one => %w{two three}, :a => %w{b})
163
162
  expect(instance.properties).to eq({:one => %w{two three}})
@@ -167,13 +166,13 @@ describe Puppet::Provider::Ldap do
167
166
 
168
167
  describe "when an instance" do
169
168
  before do
170
- @manager = stub "manager", :valid? => true
171
- @class.stubs(:manager).returns @manager
169
+ @manager = double("manager", :valid? => true)
170
+ allow(@class).to receive(:manager).and_return(@manager)
172
171
  @instance = @class.new
173
172
 
174
- @property_class = stub 'property_class', :array_matching => :all, :superclass => Puppet::Property
175
- @resource_class = stub 'resource_class', :attrclass => @property_class, :valid_parameter? => true, :validproperties => [:one, :two]
176
- @class.stubs(:resource_type).returns @resource_class
173
+ @property_class = double('property_class', :array_matching => :all, :superclass => Puppet::Property)
174
+ @resource_class = double('resource_class', :attrclass => @property_class, :valid_parameter? => true, :validproperties => [:one, :two])
175
+ allow(@class).to receive(:resource_type).and_return(@resource_class)
177
176
  end
178
177
 
179
178
  it "should have a method for creating the ldap entry" do
@@ -200,22 +199,22 @@ describe Puppet::Provider::Ldap do
200
199
 
201
200
  describe "is being flushed" do
202
201
  it "should call the manager's :update method with its name, current attributes, and desired attributes" do
203
- @instance.stubs(:name).returns "myname"
204
- @instance.stubs(:ldap_properties).returns(:one => :two)
205
- @instance.stubs(:properties).returns(:three => :four)
206
- @manager.expects(:update).with(@instance.name, {:one => :two}, {:three => :four})
202
+ allow(@instance).to receive(:name).and_return("myname")
203
+ allow(@instance).to receive(:ldap_properties).and_return(:one => :two)
204
+ allow(@instance).to receive(:properties).and_return(:three => :four)
205
+ expect(@manager).to receive(:update).with(@instance.name, {:one => :two}, {:three => :four})
207
206
  @instance.flush
208
207
  end
209
208
  end
210
209
 
211
210
  describe "is being created" do
212
211
  before do
213
- @rclass = mock 'resource_class'
214
- @rclass.stubs(:validproperties).returns([:one, :two])
215
- @resource = mock 'resource'
216
- @resource.stubs(:class).returns @rclass
217
- @resource.stubs(:should).returns nil
218
- @instance.stubs(:resource).returns @resource
212
+ @rclass = double('resource_class')
213
+ allow(@rclass).to receive(:validproperties).and_return([:one, :two])
214
+ @resource = double('resource')
215
+ allow(@resource).to receive(:class).and_return(@rclass)
216
+ allow(@resource).to receive(:should).and_return(nil)
217
+ allow(@instance).to receive(:resource).and_return(@resource)
219
218
  end
220
219
 
221
220
  it "should set its :ensure value to :present" do
@@ -224,8 +223,8 @@ describe Puppet::Provider::Ldap do
224
223
  end
225
224
 
226
225
  it "should set all of the other attributes from the resource" do
227
- @resource.expects(:should).with(:one).returns "oneval"
228
- @resource.expects(:should).with(:two).returns "twoval"
226
+ expect(@resource).to receive(:should).with(:one).and_return("oneval")
227
+ expect(@resource).to receive(:should).with(:two).and_return("twoval")
229
228
 
230
229
  @instance.create
231
230
  expect(@instance.properties[:one]).to eq("oneval")
@@ -7,8 +7,8 @@ end
7
7
  [:group].each do |type_for_this_round|
8
8
  describe Puppet::Type.type(type_for_this_round).provider(:directoryservice) do
9
9
  before do
10
- @resource = stub("resource")
11
- @resource.stubs(:[]).with(:name)
10
+ @resource = double("resource")
11
+ allow(@resource).to receive(:[]).with(:name)
12
12
  @provider = described_class.new(@resource)
13
13
  end
14
14
 
@@ -17,18 +17,18 @@ end
17
17
  desired = ["foo", ["quux"], "qorp"]
18
18
  group = 'example'
19
19
 
20
- @resource.stubs(:[]).with(:name).returns(group)
21
- @resource.stubs(:[]).with(:auth_membership).returns(true)
20
+ allow(@resource).to receive(:[]).with(:name).and_return(group)
21
+ allow(@resource).to receive(:[]).with(:auth_membership).and_return(true)
22
22
  @provider.instance_variable_set(:@property_value_cache_hash,
23
23
  { :members => current })
24
24
 
25
25
  %w{bar baz}.each do |del|
26
- @provider.expects(:execute).once.
26
+ expect(@provider).to receive(:execute).once.
27
27
  with([:dseditgroup, '-o', 'edit', '-n', '.', '-d', del, group])
28
28
  end
29
29
 
30
30
  %w{quux qorp}.each do |add|
31
- @provider.expects(:execute).once.
31
+ expect(@provider).to receive(:execute).once.
32
32
  with([:dseditgroup, '-o', 'edit', '-n', '.', '-a', add, group])
33
33
  end
34
34
 
@@ -40,13 +40,13 @@ end
40
40
  describe Puppet::Provider::NameService::DirectoryService do
41
41
  context '.single_report' do
42
42
  it 'should use plist data' do
43
- Puppet::Provider::NameService::DirectoryService.stubs(:get_ds_path).returns('Users')
44
- Puppet::Provider::NameService::DirectoryService.stubs(:list_all_present).returns(
43
+ allow(Puppet::Provider::NameService::DirectoryService).to receive(:get_ds_path).and_return('Users')
44
+ allow(Puppet::Provider::NameService::DirectoryService).to receive(:list_all_present).and_return(
45
45
  ['root', 'user1', 'user2', 'resource_name']
46
46
  )
47
- Puppet::Provider::NameService::DirectoryService.stubs(:generate_attribute_hash)
48
- Puppet::Provider::NameService::DirectoryService.stubs(:execute)
49
- Puppet::Provider::NameService::DirectoryService.expects(:parse_dscl_plist_data)
47
+ allow(Puppet::Provider::NameService::DirectoryService).to receive(:generate_attribute_hash)
48
+ allow(Puppet::Provider::NameService::DirectoryService).to receive(:execute)
49
+ expect(Puppet::Provider::NameService::DirectoryService).to receive(:parse_dscl_plist_data)
50
50
 
51
51
  Puppet::Provider::NameService::DirectoryService.single_report('resource_name')
52
52
  end
@@ -54,7 +54,7 @@ describe Puppet::Provider::NameService::DirectoryService do
54
54
 
55
55
  context '.get_exec_preamble' do
56
56
  it 'should use plist data' do
57
- Puppet::Provider::NameService::DirectoryService.stubs(:get_ds_path).returns('Users')
57
+ allow(Puppet::Provider::NameService::DirectoryService).to receive(:get_ds_path).and_return('Users')
58
58
 
59
59
  expect(Puppet::Provider::NameService::DirectoryService.get_exec_preamble('-list')).to include("-plist")
60
60
  end
@@ -85,9 +85,9 @@ describe Puppet::Provider::NameService::DirectoryService do
85
85
  end
86
86
 
87
87
  it 'should execute convert_binary_to_hash once when getting the password' do
88
- described_class.expects(:convert_binary_to_hash).returns({'SALTED-SHA512' => pw_string})
89
- Puppet::FileSystem.expects(:exist?).with(plist_path).once.returns(true)
90
- Puppet::Util::Plist.expects(:read_plist_file).returns(shadow_hash_data)
88
+ expect(described_class).to receive(:convert_binary_to_hash).and_return({'SALTED-SHA512' => pw_string})
89
+ expect(Puppet::FileSystem).to receive(:exist?).with(plist_path).once.and_return(true)
90
+ expect(Puppet::Util::Plist).to receive(:read_plist_file).and_return(shadow_hash_data)
91
91
  described_class.get_password('uid', 'jeff')
92
92
  end
93
93
 
@@ -98,19 +98,19 @@ describe Puppet::Provider::NameService::DirectoryService do
98
98
  end
99
99
 
100
100
  it 'should convert xml-to-binary and binary-to-xml when setting the pw on >= 10.7' do
101
- described_class.expects(:convert_binary_to_hash).returns({'SALTED-SHA512' => pw_string})
102
- described_class.expects(:convert_hash_to_binary).returns(binary_plist)
103
- Puppet::FileSystem.expects(:exist?).with(plist_path).once.returns(true)
104
- Puppet::Util::Plist.expects(:read_plist_file).returns(shadow_hash_data)
105
- Puppet::Util::Plist.expects(:write_plist_file).with(shadow_hash_data, plist_path, :binary)
101
+ expect(described_class).to receive(:convert_binary_to_hash).and_return({'SALTED-SHA512' => pw_string})
102
+ expect(described_class).to receive(:convert_hash_to_binary).and_return(binary_plist)
103
+ expect(Puppet::FileSystem).to receive(:exist?).with(plist_path).once.and_return(true)
104
+ expect(Puppet::Util::Plist).to receive(:read_plist_file).and_return(shadow_hash_data)
105
+ expect(Puppet::Util::Plist).to receive(:write_plist_file).with(shadow_hash_data, plist_path, :binary)
106
106
  described_class.set_password('jeff', 'uid', sha512_hash)
107
107
  end
108
108
 
109
109
  it '[#13686] should handle an empty ShadowHashData field in the users plist' do
110
- described_class.expects(:convert_hash_to_binary).returns(binary_plist)
111
- Puppet::FileSystem.expects(:exist?).with(plist_path).once.returns(true)
112
- Puppet::Util::Plist.expects(:read_plist_file).returns({'ShadowHashData' => nil})
113
- Puppet::Util::Plist.expects(:write_plist_file)
110
+ expect(described_class).to receive(:convert_hash_to_binary).and_return(binary_plist)
111
+ expect(Puppet::FileSystem).to receive(:exist?).with(plist_path).once.and_return(true)
112
+ expect(Puppet::Util::Plist).to receive(:read_plist_file).and_return({'ShadowHashData' => nil})
113
+ expect(Puppet::Util::Plist).to receive(:write_plist_file)
114
114
  described_class.set_password('jeff', 'uid', sha512_hash)
115
115
  end
116
116
  end
@@ -129,7 +129,7 @@ describe Puppet::Provider::NameService::DirectoryService do
129
129
  end
130
130
 
131
131
  let :stub_resource do
132
- stub('resource')
132
+ double('resource')
133
133
  end
134
134
 
135
135
  subject do
@@ -137,21 +137,20 @@ describe Puppet::Provider::NameService::DirectoryService do
137
137
  end
138
138
 
139
139
  before :each do
140
- @resource = stub("resource")
141
- @resource.stubs(:[]).with(:name)
140
+ @resource = double("resource")
141
+ allow(@resource).to receive(:[]).with(:name)
142
142
  @provider = provider_class.new(@resource)
143
143
  end
144
144
 
145
145
  it 'should delete a group member if the user does not exist' do
146
- stub_resource.stubs(:[]).with(:name).returns('fake_group')
147
- stub_resource.stubs(:name).returns('fake_group')
148
- subject.expects(:execute).with([:dseditgroup, '-o', 'edit', '-n', '.',
149
- '-d', 'jeff',
150
- 'fake_group']).raises(Puppet::ExecutionFailure,
151
- 'it broke')
152
- subject.expects(:execute).with([:dscl, '.', '-delete',
153
- '/Groups/fake_group', 'GroupMembership',
154
- 'jeff'])
146
+ allow(stub_resource).to receive(:[]).with(:name).and_return('fake_group')
147
+ allow(stub_resource).to receive(:name).and_return('fake_group')
148
+ expect(subject).to receive(:execute).with([:dseditgroup, '-o', 'edit', '-n', '.',
149
+ '-d', 'jeff',
150
+ 'fake_group']).and_raise(Puppet::ExecutionFailure, 'it broke')
151
+ expect(subject).to receive(:execute).with([:dscl, '.', '-delete',
152
+ '/Groups/fake_group', 'GroupMembership',
153
+ 'jeff'])
155
154
  subject.remove_unwanted_members(group_members, user_account)
156
155
  end
157
156
  end
@@ -1,5 +1,3 @@
1
- #! /usr/bin/env ruby
2
-
3
1
  require 'spec_helper'
4
2
  require 'puppet/provider/nameservice'
5
3
  require 'puppet/etc'
@@ -134,7 +132,7 @@ describe Puppet::Provider::NameService do
134
132
 
135
133
  describe "#section" do
136
134
  it "should raise an error if resource_type has not been set" do
137
- described_class.expects(:resource_type).returns nil
135
+ expect(described_class).to receive(:resource_type).and_return(nil)
138
136
  expect { described_class.section }.to raise_error Puppet::Error, 'Cannot determine Etc section without a resource type'
139
137
  end
140
138
 
@@ -153,15 +151,15 @@ describe Puppet::Provider::NameService do
153
151
 
154
152
  describe "#listbyname" do
155
153
  it "should be deprecated" do
156
- Puppet.expects(:deprecation_warning).with(regexp_matches(/listbyname is deprecated/))
154
+ expect(Puppet).to receive(:deprecation_warning).with(/listbyname is deprecated/)
157
155
  described_class.listbyname
158
156
  end
159
157
 
160
158
  it "should return a list of users if resource_type is user" do
161
159
  described_class.resource_type = Puppet::Type.type(:user)
162
- Puppet::Etc.expects(:setpwent)
163
- Puppet::Etc.stubs(:getpwent).returns(*users)
164
- Puppet::Etc.expects(:endpwent)
160
+ expect(Puppet::Etc).to receive(:setpwent)
161
+ allow(Puppet::Etc).to receive(:getpwent).and_return(*users)
162
+ expect(Puppet::Etc).to receive(:endpwent)
165
163
  expect(described_class.listbyname).to eq(%w{root foo})
166
164
  end
167
165
 
@@ -172,7 +170,7 @@ describe Puppet::Provider::NameService do
172
170
  # the same name on disk, but each name is stored on disk in a different
173
171
  # encoding
174
172
  it "should return names with invalid byte sequences replaced with '?'" do
175
- Etc.stubs(:getpwent).returns(*utf_8_mixed_users)
173
+ allow(Etc).to receive(:getpwent).and_return(*utf_8_mixed_users)
176
174
  expect(invalid_utf_8_jose).to_not be_valid_encoding
177
175
  result = PuppetSpec::CharacterEncoding.with_external_encoding(Encoding::UTF_8) do
178
176
  described_class.listbyname
@@ -181,7 +179,7 @@ describe Puppet::Provider::NameService do
181
179
  end
182
180
 
183
181
  it "should return names in their original encoding/bytes if they would not be valid UTF-8" do
184
- Etc.stubs(:getpwent).returns(*latin_1_mixed_users)
182
+ allow(Etc).to receive(:getpwent).and_return(*latin_1_mixed_users)
185
183
  result = PuppetSpec::CharacterEncoding.with_external_encoding(Encoding::ISO_8859_1) do
186
184
  described_class.listbyname
187
185
  end
@@ -191,18 +189,18 @@ describe Puppet::Provider::NameService do
191
189
 
192
190
  it "should return a list of groups if resource_type is group", :unless => Puppet::Util::Platform.windows? do
193
191
  described_class.resource_type = Puppet::Type.type(:group)
194
- Puppet::Etc.expects(:setgrent)
195
- Puppet::Etc.stubs(:getgrent).returns(*groups)
196
- Puppet::Etc.expects(:endgrent)
192
+ expect(Puppet::Etc).to receive(:setgrent)
193
+ allow(Puppet::Etc).to receive(:getgrent).and_return(*groups)
194
+ expect(Puppet::Etc).to receive(:endgrent)
197
195
  expect(described_class.listbyname).to eq(%w{root bin})
198
196
  end
199
197
 
200
198
  it "should yield if a block given" do
201
199
  yield_results = []
202
200
  described_class.resource_type = Puppet::Type.type(:user)
203
- Puppet::Etc.expects(:setpwent)
204
- Puppet::Etc.stubs(:getpwent).returns(*users)
205
- Puppet::Etc.expects(:endpwent)
201
+ expect(Puppet::Etc).to receive(:setpwent)
202
+ allow(Puppet::Etc).to receive(:getpwent).and_return(*users)
203
+ expect(Puppet::Etc).to receive(:endpwent)
206
204
  described_class.listbyname {|x| yield_results << x }
207
205
  expect(yield_results).to eq(%w{root foo})
208
206
  end
@@ -213,7 +211,7 @@ describe Puppet::Provider::NameService do
213
211
  # These two tests simulate an environment where there are two users with
214
212
  # the same name on disk, but each name is stored on disk in a different
215
213
  # encoding
216
- Etc.stubs(:getpwent).returns(*utf_8_mixed_users)
214
+ allow(Etc).to receive(:getpwent).and_return(*utf_8_mixed_users)
217
215
  result = PuppetSpec::CharacterEncoding.with_external_encoding(Encoding::UTF_8) do
218
216
  described_class.instances
219
217
  end
@@ -228,7 +226,7 @@ describe Puppet::Provider::NameService do
228
226
  end
229
227
 
230
228
  it "should have object names in their original encoding/bytes if they would not be valid UTF-8" do
231
- Etc.stubs(:getpwent).returns(*latin_1_mixed_users)
229
+ allow(Etc).to receive(:getpwent).and_return(*latin_1_mixed_users)
232
230
  result = PuppetSpec::CharacterEncoding.with_external_encoding(Encoding::ISO_8859_1) do
233
231
  described_class.instances
234
232
  end
@@ -244,8 +242,8 @@ describe Puppet::Provider::NameService do
244
242
 
245
243
  it "should pass the Puppet::Etc :canonical_name Struct member to the constructor" do
246
244
  users = [ Struct::Passwd.new(invalid_utf_8_jose, invalid_utf_8_jose, 1002, 2000), nil ]
247
- Etc.stubs(:getpwent).returns(*users)
248
- described_class.expects(:new).with(:name => escaped_utf_8_jose, :canonical_name => invalid_utf_8_jose, :ensure => :present)
245
+ allow(Etc).to receive(:getpwent).and_return(*users)
246
+ expect(described_class).to receive(:new).with(:name => escaped_utf_8_jose, :canonical_name => invalid_utf_8_jose, :ensure => :present)
249
247
  described_class.instances
250
248
  end
251
249
  end
@@ -278,19 +276,19 @@ describe Puppet::Provider::NameService do
278
276
  describe "getinfo" do
279
277
  before :each do
280
278
  # with section=foo we'll call Etc.getfoonam instead of getpwnam or getgrnam
281
- described_class.stubs(:section).returns 'foo'
279
+ allow(described_class).to receive(:section).and_return('foo')
282
280
  resource # initialize the resource so our provider has a @resource instance variable
283
281
  end
284
282
 
285
283
  it "should return a hash if we can retrieve something" do
286
- Puppet::Etc.expects(:send).with(:getfoonam, 'bob').returns fakeetcobject
287
- provider.expects(:info2hash).with(fakeetcobject).returns(:foo => 'fooval', :bar => 'barval')
284
+ expect(Puppet::Etc).to receive(:send).with(:getfoonam, 'bob').and_return(fakeetcobject)
285
+ expect(provider).to receive(:info2hash).with(fakeetcobject).and_return(:foo => 'fooval', :bar => 'barval')
288
286
  expect(provider.getinfo(true)).to eq({:foo => 'fooval', :bar => 'barval'})
289
287
  end
290
288
 
291
289
  it "should return nil if we cannot retrieve anything" do
292
- Puppet::Etc.expects(:send).with(:getfoonam, 'bob').raises(ArgumentError, "can't find bob")
293
- provider.expects(:info2hash).never
290
+ expect(Puppet::Etc).to receive(:send).with(:getfoonam, 'bob').and_raise(ArgumentError, "can't find bob")
291
+ expect(provider).not_to receive(:info2hash)
294
292
  expect(provider.getinfo(true)).to be_nil
295
293
  end
296
294
 
@@ -299,13 +297,13 @@ describe Puppet::Provider::NameService do
299
297
  # again if needed
300
298
  it "should use the instance's @canonical_name to query the system" do
301
299
  provider_instance = described_class.new(:name => 'foo', :canonical_name => 'original_foo', :ensure => :present)
302
- Puppet::Etc.expects(:send).with(:getfoonam, 'original_foo')
300
+ expect(Puppet::Etc).to receive(:send).with(:getfoonam, 'original_foo')
303
301
  provider_instance.getinfo(true)
304
302
  end
305
303
 
306
304
  it "should use the instance's name instead of canonical_name if not supplied during instantiation" do
307
305
  provider_instance = described_class.new(:name => 'foo', :ensure => :present)
308
- Puppet::Etc.expects(:send).with(:getfoonam, 'foo')
306
+ expect(Puppet::Etc).to receive(:send).with(:getfoonam, 'foo')
309
307
  provider_instance.getinfo(true)
310
308
  end
311
309
  end
@@ -319,9 +317,9 @@ describe Puppet::Provider::NameService do
319
317
  # expect two method invocations because info2hash calls the method
320
318
  # twice if the Struct responds to the propertyname (our fake Struct
321
319
  # provides values for :foo and :bar) TODO: Fix that
322
- provider.expects(:posixmethod).with(:foo).returns(:foo).twice
323
- provider.expects(:posixmethod).with(:bar).returns(:bar).twice
324
- provider.expects(:posixmethod).with(:ensure).returns :ensure
320
+ expect(provider).to receive(:posixmethod).with(:foo).and_return(:foo).twice
321
+ expect(provider).to receive(:posixmethod).with(:bar).and_return(:bar).twice
322
+ expect(provider).to receive(:posixmethod).with(:ensure).and_return(:ensure)
325
323
  expect(provider.info2hash(fakeetcobject)).to eq({ :foo => 'fooval', :bar => 'barval' })
326
324
  end
327
325
  end
@@ -351,11 +349,11 @@ describe Puppet::Provider::NameService do
351
349
 
352
350
  describe "exists?" do
353
351
  it "should return true if we can retrieve anything" do
354
- provider.expects(:getinfo).with(true).returns(:foo => 'fooval', :bar => 'barval')
352
+ expect(provider).to receive(:getinfo).with(true).and_return(:foo => 'fooval', :bar => 'barval')
355
353
  expect(provider).to be_exists
356
354
  end
357
355
  it "should return false if we cannot retrieve anything" do
358
- provider.expects(:getinfo).with(true).returns nil
356
+ expect(provider).to receive(:getinfo).with(true).and_return(nil)
359
357
  expect(provider).not_to be_exists
360
358
  end
361
359
  end
@@ -364,18 +362,18 @@ describe Puppet::Provider::NameService do
364
362
  before(:each) {described_class.resource_type = faketype }
365
363
 
366
364
  it "should return the correct getinfo value" do
367
- provider.expects(:getinfo).with(false).returns(:foo => 'fooval', :bar => 'barval')
365
+ expect(provider).to receive(:getinfo).with(false).and_return(:foo => 'fooval', :bar => 'barval')
368
366
  expect(provider.get(:bar)).to eq('barval')
369
367
  end
370
368
 
371
369
  it "should unmunge the value first" do
372
370
  described_class.options(:bar, :munge => proc { |x| x*2}, :unmunge => proc {|x| x/2})
373
- provider.expects(:getinfo).with(false).returns(:foo => 200, :bar => 500)
371
+ expect(provider).to receive(:getinfo).with(false).and_return(:foo => 200, :bar => 500)
374
372
  expect(provider.get(:bar)).to eq(250)
375
373
  end
376
374
 
377
375
  it "should return nil if getinfo cannot retrieve the value" do
378
- provider.expects(:getinfo).with(false).returns(:foo => 'fooval', :bar => 'barval')
376
+ expect(provider).to receive(:getinfo).with(false).and_return(:foo => 'fooval', :bar => 'barval')
379
377
  expect(provider.get(:no_such_key)).to be_nil
380
378
  end
381
379
 
@@ -392,21 +390,21 @@ describe Puppet::Provider::NameService do
392
390
  end
393
391
 
394
392
  it "should execute the modify command on valid values" do
395
- provider.expects(:modifycmd).with(:foo, 100).returns ['/bin/modify', '-f', '100' ]
396
- provider.expects(:execute).with(['/bin/modify', '-f', '100'], has_entry(:custom_environment, {}))
393
+ expect(provider).to receive(:modifycmd).with(:foo, 100).and_return(['/bin/modify', '-f', '100' ])
394
+ expect(provider).to receive(:execute).with(['/bin/modify', '-f', '100'], hash_including(custom_environment: {}))
397
395
  provider.set(:foo, 100)
398
396
  end
399
397
 
400
398
  it "should munge the value first" do
401
399
  described_class.options(:foo, :munge => proc { |x| x*2}, :unmunge => proc {|x| x/2})
402
- provider.expects(:modifycmd).with(:foo, 200).returns(['/bin/modify', '-f', '200' ])
403
- provider.expects(:execute).with(['/bin/modify', '-f', '200'], has_entry(:custom_environment, {}))
400
+ expect(provider).to receive(:modifycmd).with(:foo, 200).and_return(['/bin/modify', '-f', '200' ])
401
+ expect(provider).to receive(:execute).with(['/bin/modify', '-f', '200'], hash_including(custom_environment: {}))
404
402
  provider.set(:foo, 100)
405
403
  end
406
404
 
407
405
  it "should fail if the modify command fails" do
408
- provider.expects(:modifycmd).with(:foo, 100).returns(['/bin/modify', '-f', '100' ])
409
- provider.expects(:execute).with(['/bin/modify', '-f', '100'], kind_of(Hash)).raises(Puppet::ExecutionFailure, "Execution of '/bin/modify' returned 1: some_failure")
406
+ expect(provider).to receive(:modifycmd).with(:foo, 100).and_return(['/bin/modify', '-f', '100' ])
407
+ expect(provider).to receive(:execute).with(['/bin/modify', '-f', '100'], kind_of(Hash)).and_raise(Puppet::ExecutionFailure, "Execution of '/bin/modify' returned 1: some_failure")
410
408
  expect { provider.set(:foo, 100) }.to raise_error Puppet::Error, /Could not set foo/
411
409
  end
412
410
  end