puppet 6.0.7-x86-mingw32 → 6.0.8-x86-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 (632) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +0 -1
  3. data/Gemfile.lock +4 -8
  4. data/lib/puppet/application/device.rb +99 -83
  5. data/lib/puppet/application/filebucket.rb +4 -0
  6. data/lib/puppet/configurer.rb +5 -4
  7. data/lib/puppet/defaults.rb +31 -11
  8. data/lib/puppet/indirector/request.rb +26 -15
  9. data/lib/puppet/network/http/connection.rb +15 -7
  10. data/lib/puppet/transaction/event_manager.rb +1 -5
  11. data/lib/puppet/type/file/source.rb +0 -1
  12. data/lib/puppet/util/connection.rb +15 -6
  13. data/lib/puppet/util/http_proxy.rb +3 -2
  14. data/lib/puppet/version.rb +1 -1
  15. data/locales/puppet.pot +99 -40
  16. data/man/man5/puppet.conf.5 +8 -8
  17. data/man/man8/puppet-agent.8 +1 -1
  18. data/man/man8/puppet-apply.8 +1 -1
  19. data/man/man8/puppet-catalog.8 +1 -1
  20. data/man/man8/puppet-config.8 +1 -1
  21. data/man/man8/puppet-describe.8 +1 -1
  22. data/man/man8/puppet-device.8 +1 -1
  23. data/man/man8/puppet-doc.8 +1 -1
  24. data/man/man8/puppet-epp.8 +1 -1
  25. data/man/man8/puppet-facts.8 +1 -1
  26. data/man/man8/puppet-filebucket.8 +1 -1
  27. data/man/man8/puppet-generate.8 +1 -1
  28. data/man/man8/puppet-help.8 +1 -1
  29. data/man/man8/puppet-key.8 +1 -1
  30. data/man/man8/puppet-lookup.8 +1 -1
  31. data/man/man8/puppet-man.8 +1 -1
  32. data/man/man8/puppet-module.8 +1 -1
  33. data/man/man8/puppet-node.8 +1 -1
  34. data/man/man8/puppet-parser.8 +1 -1
  35. data/man/man8/puppet-plugin.8 +1 -1
  36. data/man/man8/puppet-report.8 +1 -1
  37. data/man/man8/puppet-resource.8 +1 -1
  38. data/man/man8/puppet-script.8 +1 -1
  39. data/man/man8/puppet-ssl.8 +1 -1
  40. data/man/man8/puppet-status.8 +1 -1
  41. data/man/man8/puppet.8 +2 -2
  42. data/spec/integration/agent/logging_spec.rb +5 -7
  43. data/spec/integration/application/apply_spec.rb +18 -16
  44. data/spec/integration/application/doc_spec.rb +1 -2
  45. data/spec/integration/application/lookup_spec.rb +5 -5
  46. data/spec/integration/configurer_spec.rb +5 -6
  47. data/spec/integration/defaults_spec.rb +5 -6
  48. data/spec/integration/directory_environments_spec.rb +1 -1
  49. data/spec/integration/faces/config_spec.rb +3 -4
  50. data/spec/integration/faces/documentation_spec.rb +0 -1
  51. data/spec/integration/faces/plugin_spec.rb +1 -1
  52. data/spec/integration/file_bucket/file_spec.rb +2 -4
  53. data/spec/integration/file_serving/content_spec.rb +0 -1
  54. data/spec/integration/file_serving/fileset_spec.rb +0 -1
  55. data/spec/integration/file_serving/metadata_spec.rb +0 -1
  56. data/spec/integration/file_serving/terminus_helper_spec.rb +0 -1
  57. data/spec/integration/indirector/catalog/compiler_spec.rb +10 -11
  58. data/spec/integration/indirector/direct_file_server_spec.rb +1 -1
  59. data/spec/integration/indirector/facts/facter_spec.rb +4 -5
  60. data/spec/integration/indirector/file_content/file_server_spec.rb +7 -8
  61. data/spec/integration/indirector/file_metadata/file_server_spec.rb +7 -8
  62. data/spec/integration/network/authconfig_spec.rb +23 -24
  63. data/spec/integration/network/formats_spec.rb +0 -1
  64. data/spec/integration/node/environment_spec.rb +0 -1
  65. data/spec/integration/node/facts_spec.rb +9 -10
  66. data/spec/integration/node_spec.rb +6 -7
  67. data/spec/integration/parser/catalog_spec.rb +1 -5
  68. data/spec/integration/parser/collection_spec.rb +1 -2
  69. data/spec/integration/parser/compiler_spec.rb +6 -6
  70. data/spec/integration/parser/scope_spec.rb +1 -1
  71. data/spec/integration/parser/undef_param_spec.rb +1 -1
  72. data/spec/integration/provider/service/init_spec.rb +4 -5
  73. data/spec/integration/provider/service/systemd_spec.rb +0 -2
  74. data/spec/integration/provider/service/windows_spec.rb +1 -2
  75. data/spec/integration/reference/providers_spec.rb +1 -2
  76. data/spec/integration/reports_spec.rb +1 -2
  77. data/spec/integration/resource/catalog_spec.rb +14 -17
  78. data/spec/integration/resource/type_collection_spec.rb +4 -5
  79. data/spec/integration/ssl/certificate_request_spec.rb +0 -1
  80. data/spec/integration/ssl/host_spec.rb +1 -2
  81. data/spec/integration/ssl/key_spec.rb +0 -1
  82. data/spec/integration/test/test_helper_spec.rb +0 -1
  83. data/spec/integration/transaction/report_spec.rb +6 -11
  84. data/spec/integration/transaction_spec.rb +18 -19
  85. data/spec/integration/type/exec_spec.rb +0 -1
  86. data/spec/integration/type/file_spec.rb +13 -14
  87. data/spec/integration/type/package_spec.rb +19 -23
  88. data/spec/integration/type/tidy_spec.rb +1 -2
  89. data/spec/integration/type_spec.rb +0 -1
  90. data/spec/integration/util/autoload_spec.rb +1 -2
  91. data/spec/integration/util/rdoc/parser_spec.rb +0 -1
  92. data/spec/integration/util/settings_spec.rb +0 -1
  93. data/spec/integration/util/windows/adsi_spec.rb +3 -5
  94. data/spec/integration/util/windows/principal_spec.rb +0 -1
  95. data/spec/integration/util/windows/process_spec.rb +4 -6
  96. data/spec/integration/util/windows/registry_spec.rb +41 -51
  97. data/spec/integration/util/windows/security_spec.rb +2 -4
  98. data/spec/integration/util/windows/user_spec.rb +18 -20
  99. data/spec/integration/util_spec.rb +4 -7
  100. data/spec/lib/puppet_spec/compiler.rb +1 -1
  101. data/spec/lib/puppet_spec/files.rb +0 -1
  102. data/spec/lib/puppet_spec/module_tool/shared_functions.rb +1 -1
  103. data/spec/lib/puppet_spec/scope.rb +1 -2
  104. data/spec/shared_behaviours/all_parsedfile_providers.rb +1 -1
  105. data/spec/shared_behaviours/file_server_terminus.rb +8 -9
  106. data/spec/shared_behaviours/file_serving.rb +6 -8
  107. data/spec/shared_behaviours/file_serving_model.rb +3 -5
  108. data/spec/shared_behaviours/hiera_indirections.rb +3 -4
  109. data/spec/shared_behaviours/iterative_functions.rb +0 -1
  110. data/spec/shared_behaviours/memory_terminus.rb +2 -2
  111. data/spec/shared_examples/rhel_package_provider.rb +112 -70
  112. data/spec/spec_helper.rb +10 -1
  113. data/spec/unit/agent/disabler_spec.rb +4 -5
  114. data/spec/unit/agent/locker_spec.rb +12 -13
  115. data/spec/unit/agent_spec.rb +80 -85
  116. data/spec/unit/application/agent_spec.rb +88 -93
  117. data/spec/unit/application/apply_spec.rb +82 -83
  118. data/spec/unit/application/config_spec.rb +0 -1
  119. data/spec/unit/application/describe_spec.rb +6 -7
  120. data/spec/unit/application/device_spec.rb +395 -419
  121. data/spec/unit/application/doc_spec.rb +44 -46
  122. data/spec/unit/application/face_base_spec.rb +61 -62
  123. data/spec/unit/application/facts_spec.rb +3 -4
  124. data/spec/unit/application/filebucket_spec.rb +66 -74
  125. data/spec/unit/application/indirection_base_spec.rb +8 -6
  126. data/spec/unit/application/lookup_spec.rb +26 -26
  127. data/spec/unit/application/resource_spec.rb +42 -48
  128. data/spec/unit/application/ssl_spec.rb +3 -3
  129. data/spec/unit/application_spec.rb +82 -92
  130. data/spec/unit/capability_spec.rb +6 -6
  131. data/spec/unit/certificate_factory_spec.rb +3 -5
  132. data/spec/unit/configurer/downloader_spec.rb +20 -21
  133. data/spec/unit/configurer/fact_handler_spec.rb +2 -3
  134. data/spec/unit/configurer/plugin_handler_spec.rb +41 -8
  135. data/spec/unit/configurer_spec.rb +189 -192
  136. data/spec/unit/confine/exists_spec.rb +17 -15
  137. data/spec/unit/confine/false_spec.rb +5 -6
  138. data/spec/unit/confine/feature_spec.rb +7 -5
  139. data/spec/unit/confine/true_spec.rb +5 -6
  140. data/spec/unit/confine/variable_spec.rb +14 -15
  141. data/spec/unit/confine_collection_spec.rb +28 -29
  142. data/spec/unit/confine_spec.rb +13 -14
  143. data/spec/unit/confiner_spec.rb +10 -11
  144. data/spec/unit/context/trusted_information_spec.rb +1 -1
  145. data/spec/unit/daemon_spec.rb +35 -36
  146. data/spec/unit/data_providers/function_data_provider_spec.rb +0 -1
  147. data/spec/unit/data_providers/hiera_data_provider_spec.rb +0 -1
  148. data/spec/unit/datatypes_spec.rb +3 -4
  149. data/spec/unit/defaults_spec.rb +18 -13
  150. data/spec/unit/environments_spec.rb +7 -7
  151. data/spec/unit/etc_spec.rb +30 -32
  152. data/spec/unit/external/pson_spec.rb +0 -1
  153. data/spec/unit/face/catalog_spec.rb +0 -1
  154. data/spec/unit/face/config_spec.rb +31 -35
  155. data/spec/unit/face/epp_face_spec.rb +3 -4
  156. data/spec/unit/face/facts_spec.rb +5 -6
  157. data/spec/unit/face/generate_spec.rb +4 -5
  158. data/spec/unit/face/help_spec.rb +7 -8
  159. data/spec/unit/face/key_spec.rb +0 -1
  160. data/spec/unit/face/man_spec.rb +1 -2
  161. data/spec/unit/face/module/install_spec.rb +3 -5
  162. data/spec/unit/face/module/list_spec.rb +2 -12
  163. data/spec/unit/face/module/search_spec.rb +11 -9
  164. data/spec/unit/face/module/uninstall_spec.rb +4 -8
  165. data/spec/unit/face/node_spec.rb +23 -24
  166. data/spec/unit/face/parser_spec.rb +3 -3
  167. data/spec/unit/face/plugin_spec.rb +36 -9
  168. data/spec/unit/face/status_spec.rb +0 -1
  169. data/spec/unit/file_bucket/dipper_spec.rb +24 -20
  170. data/spec/unit/file_bucket/file_spec.rb +0 -2
  171. data/spec/unit/file_serving/base_spec.rb +14 -15
  172. data/spec/unit/file_serving/configuration/parser_spec.rb +27 -28
  173. data/spec/unit/file_serving/configuration_spec.rb +63 -66
  174. data/spec/unit/file_serving/content_spec.rb +10 -11
  175. data/spec/unit/file_serving/fileset_spec.rb +63 -58
  176. data/spec/unit/file_serving/http_metadata_spec.rb +8 -7
  177. data/spec/unit/file_serving/metadata_spec.rb +36 -36
  178. data/spec/unit/file_serving/mount/file_spec.rb +31 -32
  179. data/spec/unit/file_serving/mount/locales_spec.rb +23 -24
  180. data/spec/unit/file_serving/mount/modules_spec.rb +14 -15
  181. data/spec/unit/file_serving/mount/pluginfacts_spec.rb +23 -24
  182. data/spec/unit/file_serving/mount/plugins_spec.rb +23 -24
  183. data/spec/unit/file_serving/mount/tasks_spec.rb +14 -15
  184. data/spec/unit/file_serving/mount_spec.rb +0 -1
  185. data/spec/unit/file_serving/terminus_helper_spec.rb +37 -42
  186. data/spec/unit/file_serving/terminus_selector_spec.rb +12 -13
  187. data/spec/unit/file_system/uniquefile_spec.rb +4 -4
  188. data/spec/unit/file_system_spec.rb +2 -2
  189. data/spec/unit/forge/errors_spec.rb +1 -1
  190. data/spec/unit/forge/forge_spec.rb +13 -14
  191. data/spec/unit/forge/module_release_spec.rb +18 -18
  192. data/spec/unit/forge/repository_spec.rb +29 -30
  193. data/spec/unit/forge_spec.rb +15 -11
  194. data/spec/unit/functions/binary_file_spec.rb +3 -3
  195. data/spec/unit/functions/contain_spec.rb +0 -2
  196. data/spec/unit/functions/defined_spec.rb +0 -1
  197. data/spec/unit/functions/epp_spec.rb +2 -2
  198. data/spec/unit/functions/find_file_spec.rb +7 -7
  199. data/spec/unit/functions/include_spec.rb +0 -4
  200. data/spec/unit/functions/lookup_fixture_spec.rb +0 -1
  201. data/spec/unit/functions/lookup_spec.rb +1 -2
  202. data/spec/unit/functions/module_directory_spec.rb +12 -12
  203. data/spec/unit/functions/require_spec.rb +0 -3
  204. data/spec/unit/functions/shared.rb +5 -8
  205. data/spec/unit/functions/versioncmp_spec.rb +1 -2
  206. data/spec/unit/functions4_spec.rb +9 -10
  207. data/spec/unit/gettext/config_spec.rb +4 -4
  208. data/spec/unit/gettext/module_loading_spec.rb +7 -7
  209. data/spec/unit/graph/rb_tree_map_spec.rb +0 -2
  210. data/spec/unit/graph/relationship_graph_spec.rb +1 -2
  211. data/spec/unit/graph/simple_graph_spec.rb +9 -10
  212. data/spec/unit/hiera_puppet_spec.rb +20 -20
  213. data/spec/unit/indirector/catalog/compiler_spec.rb +147 -149
  214. data/spec/unit/indirector/catalog/json_spec.rb +1 -2
  215. data/spec/unit/indirector/catalog/msgpack_spec.rb +0 -1
  216. data/spec/unit/indirector/catalog/rest_spec.rb +0 -1
  217. data/spec/unit/indirector/catalog/store_configs_spec.rb +0 -1
  218. data/spec/unit/indirector/catalog/yaml_spec.rb +0 -1
  219. data/spec/unit/indirector/certificate/file_spec.rb +0 -1
  220. data/spec/unit/indirector/certificate/rest_spec.rb +8 -10
  221. data/spec/unit/indirector/certificate_request/file_spec.rb +0 -1
  222. data/spec/unit/indirector/certificate_request/rest_spec.rb +0 -1
  223. data/spec/unit/indirector/direct_file_server_spec.rb +17 -18
  224. data/spec/unit/indirector/envelope_spec.rb +1 -2
  225. data/spec/unit/indirector/exec_spec.rb +4 -5
  226. data/spec/unit/indirector/face_spec.rb +9 -9
  227. data/spec/unit/indirector/facts/facter_spec.rb +37 -43
  228. data/spec/unit/indirector/facts/network_device_spec.rb +8 -9
  229. data/spec/unit/indirector/facts/rest_spec.rb +7 -8
  230. data/spec/unit/indirector/facts/store_configs_spec.rb +0 -1
  231. data/spec/unit/indirector/facts/yaml_spec.rb +0 -1
  232. data/spec/unit/indirector/file_bucket_file/file_spec.rb +3 -4
  233. data/spec/unit/indirector/file_bucket_file/rest_spec.rb +0 -1
  234. data/spec/unit/indirector/file_bucket_file/selector_spec.rb +4 -5
  235. data/spec/unit/indirector/file_content/file_server_spec.rb +0 -1
  236. data/spec/unit/indirector/file_content/file_spec.rb +0 -1
  237. data/spec/unit/indirector/file_content/rest_spec.rb +0 -1
  238. data/spec/unit/indirector/file_content/selector_spec.rb +0 -1
  239. data/spec/unit/indirector/file_metadata/file_server_spec.rb +0 -1
  240. data/spec/unit/indirector/file_metadata/file_spec.rb +12 -13
  241. data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -1
  242. data/spec/unit/indirector/file_metadata/selector_spec.rb +0 -1
  243. data/spec/unit/indirector/file_server_spec.rb +87 -87
  244. data/spec/unit/indirector/indirection_spec.rb +242 -226
  245. data/spec/unit/indirector/json_spec.rb +7 -9
  246. data/spec/unit/indirector/key/file_spec.rb +21 -22
  247. data/spec/unit/indirector/memory_spec.rb +6 -7
  248. data/spec/unit/indirector/msgpack_spec.rb +7 -9
  249. data/spec/unit/indirector/node/exec_spec.rb +2 -3
  250. data/spec/unit/indirector/node/memory_spec.rb +2 -4
  251. data/spec/unit/indirector/node/msgpack_spec.rb +0 -1
  252. data/spec/unit/indirector/node/plain_spec.rb +2 -4
  253. data/spec/unit/indirector/node/rest_spec.rb +0 -1
  254. data/spec/unit/indirector/node/store_configs_spec.rb +0 -1
  255. data/spec/unit/indirector/node/yaml_spec.rb +0 -1
  256. data/spec/unit/indirector/none_spec.rb +5 -5
  257. data/spec/unit/indirector/plain_spec.rb +7 -8
  258. data/spec/unit/indirector/report/msgpack_spec.rb +0 -1
  259. data/spec/unit/indirector/report/processor_spec.rb +21 -22
  260. data/spec/unit/indirector/report/rest_spec.rb +11 -12
  261. data/spec/unit/indirector/report/yaml_spec.rb +0 -1
  262. data/spec/unit/indirector/request_spec.rb +11 -12
  263. data/spec/unit/indirector/resource/ral_spec.rb +46 -54
  264. data/spec/unit/indirector/resource/store_configs_spec.rb +0 -1
  265. data/spec/unit/indirector/rest_spec.rb +113 -110
  266. data/spec/unit/indirector/ssl_file_spec.rb +64 -65
  267. data/spec/unit/indirector/status/local_spec.rb +0 -1
  268. data/spec/unit/indirector/status/rest_spec.rb +0 -1
  269. data/spec/unit/indirector/store_configs_spec.rb +0 -1
  270. data/spec/unit/indirector/terminus_spec.rb +27 -27
  271. data/spec/unit/indirector/yaml_spec.rb +5 -6
  272. data/spec/unit/indirector_spec.rb +1 -2
  273. data/spec/unit/info_service_spec.rb +1 -1
  274. data/spec/unit/interface/action_builder_spec.rb +0 -1
  275. data/spec/unit/interface/action_manager_spec.rb +0 -1
  276. data/spec/unit/interface/action_spec.rb +2 -3
  277. data/spec/unit/interface/documentation_spec.rb +0 -1
  278. data/spec/unit/interface/face_collection_spec.rb +19 -12
  279. data/spec/unit/interface_spec.rb +3 -3
  280. data/spec/unit/man_spec.rb +3 -4
  281. data/spec/unit/module_spec.rb +46 -51
  282. data/spec/unit/module_tool/applications/installer_spec.rb +10 -11
  283. data/spec/unit/module_tool/applications/searcher_spec.rb +3 -3
  284. data/spec/unit/module_tool/applications/uninstaller_spec.rb +1 -2
  285. data/spec/unit/module_tool/applications/unpacker_spec.rb +13 -13
  286. data/spec/unit/module_tool/applications/upgrader_spec.rb +5 -5
  287. data/spec/unit/module_tool/install_directory_spec.rb +8 -8
  288. data/spec/unit/module_tool/installed_modules_spec.rb +3 -3
  289. data/spec/unit/module_tool/tar/gnu_spec.rb +6 -6
  290. data/spec/unit/module_tool/tar/mini_spec.rb +12 -12
  291. data/spec/unit/module_tool/tar_spec.rb +12 -13
  292. data/spec/unit/module_tool_spec.rb +7 -12
  293. data/spec/unit/network/auth_config_parser_spec.rb +11 -13
  294. data/spec/unit/network/authconfig_spec.rb +17 -18
  295. data/spec/unit/network/authorization_spec.rb +4 -5
  296. data/spec/unit/network/authstore_spec.rb +0 -1
  297. data/spec/unit/network/format_handler_spec.rb +0 -1
  298. data/spec/unit/network/format_spec.rb +9 -10
  299. data/spec/unit/network/format_support_spec.rb +28 -29
  300. data/spec/unit/network/formats_spec.rb +4 -5
  301. data/spec/unit/network/http/api/indirected_routes_spec.rb +24 -29
  302. data/spec/unit/network/http/api/master/v3/authorization_spec.rb +2 -2
  303. data/spec/unit/network/http/api/master/v3/environment_spec.rb +1 -1
  304. data/spec/unit/network/http/api/master/v3/environments_spec.rb +6 -7
  305. data/spec/unit/network/http/api_spec.rb +0 -2
  306. data/spec/unit/network/http/compression_spec.rb +21 -22
  307. data/spec/unit/network/http/connection_spec.rb +41 -36
  308. data/spec/unit/network/http/factory_spec.rb +5 -6
  309. data/spec/unit/network/http/handler_spec.rb +9 -18
  310. data/spec/unit/network/http/nocache_pool_spec.rb +6 -7
  311. data/spec/unit/network/http/pool_spec.rb +28 -29
  312. data/spec/unit/network/http/request_spec.rb +0 -2
  313. data/spec/unit/network/http/response_spec.rb +11 -13
  314. data/spec/unit/network/http/route_spec.rb +0 -1
  315. data/spec/unit/network/http/session_spec.rb +1 -2
  316. data/spec/unit/network/http/site_spec.rb +0 -1
  317. data/spec/unit/network/http_pool_spec.rb +18 -9
  318. data/spec/unit/network/http_spec.rb +0 -1
  319. data/spec/unit/network/resolver_spec.rb +25 -26
  320. data/spec/unit/network/rights_spec.rb +52 -53
  321. data/spec/unit/node/environment_spec.rb +14 -15
  322. data/spec/unit/node/facts_spec.rb +5 -7
  323. data/spec/unit/node_spec.rb +4 -10
  324. data/spec/unit/other/selinux_spec.rb +0 -1
  325. data/spec/unit/parameter/boolean_spec.rb +1 -2
  326. data/spec/unit/parameter/package_options_spec.rb +1 -2
  327. data/spec/unit/parameter/path_spec.rb +0 -1
  328. data/spec/unit/parameter/value_collection_spec.rb +0 -1
  329. data/spec/unit/parameter/value_spec.rb +0 -1
  330. data/spec/unit/parameter_spec.rb +9 -9
  331. data/spec/unit/parser/ast/block_expression_spec.rb +6 -8
  332. data/spec/unit/parser/ast/leaf_spec.rb +20 -21
  333. data/spec/unit/parser/compiler_spec.rb +84 -96
  334. data/spec/unit/parser/environment_compiler_spec.rb +7 -8
  335. data/spec/unit/parser/files_spec.rb +0 -1
  336. data/spec/unit/parser/functions/create_resources_spec.rb +1 -1
  337. data/spec/unit/parser/functions/digest_spec.rb +0 -1
  338. data/spec/unit/parser/functions/fail_spec.rb +1 -2
  339. data/spec/unit/parser/functions/file_spec.rb +13 -14
  340. data/spec/unit/parser/functions/fqdn_rand_spec.rb +5 -6
  341. data/spec/unit/parser/functions/generate_spec.rb +7 -8
  342. data/spec/unit/parser/functions/inline_template_spec.rb +0 -1
  343. data/spec/unit/parser/functions/regsubst_spec.rb +0 -1
  344. data/spec/unit/parser/functions/scanf_spec.rb +0 -1
  345. data/spec/unit/parser/functions/shellquote_spec.rb +0 -1
  346. data/spec/unit/parser/functions/split_spec.rb +0 -1
  347. data/spec/unit/parser/functions/sprintf_spec.rb +0 -1
  348. data/spec/unit/parser/functions/tag_spec.rb +1 -2
  349. data/spec/unit/parser/functions/tagged_spec.rb +2 -3
  350. data/spec/unit/parser/functions/template_spec.rb +13 -13
  351. data/spec/unit/parser/functions/versioncmp_spec.rb +1 -2
  352. data/spec/unit/parser/functions_spec.rb +6 -7
  353. data/spec/unit/parser/relationship_spec.rb +0 -1
  354. data/spec/unit/parser/resource_spec.rb +42 -42
  355. data/spec/unit/parser/scope_spec.rb +39 -35
  356. data/spec/unit/parser/templatewrapper_spec.rb +11 -12
  357. data/spec/unit/parser/type_loader_spec.rb +17 -19
  358. data/spec/unit/pops/adaptable_spec.rb +0 -1
  359. data/spec/unit/pops/benchmark_spec.rb +0 -1
  360. data/spec/unit/pops/evaluator/access_ops_spec.rb +0 -1
  361. data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +0 -1
  362. data/spec/unit/pops/evaluator/basic_expressions_spec.rb +0 -1
  363. data/spec/unit/pops/evaluator/collections_ops_spec.rb +0 -1
  364. data/spec/unit/pops/evaluator/comparison_ops_spec.rb +0 -1
  365. data/spec/unit/pops/evaluator/conditionals_spec.rb +0 -1
  366. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +10 -11
  367. data/spec/unit/pops/evaluator/logical_ops_spec.rb +0 -1
  368. data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +0 -1
  369. data/spec/unit/pops/evaluator/string_interpolation_spec.rb +0 -1
  370. data/spec/unit/pops/evaluator/variables_spec.rb +0 -1
  371. data/spec/unit/pops/factory_spec.rb +3 -4
  372. data/spec/unit/pops/issues_spec.rb +19 -20
  373. data/spec/unit/pops/loaders/loader_spec.rb +8 -4
  374. data/spec/unit/pops/loaders/loaders_spec.rb +31 -28
  375. data/spec/unit/pops/lookup/context_spec.rb +0 -1
  376. data/spec/unit/pops/lookup/interpolation_spec.rb +2 -3
  377. data/spec/unit/pops/merge_strategy_spec.rb +0 -1
  378. data/spec/unit/pops/migration_spec.rb +3 -5
  379. data/spec/unit/pops/model/model_spec.rb +0 -1
  380. data/spec/unit/pops/model/pn_transformer_spec.rb +0 -1
  381. data/spec/unit/pops/parser/locator_spec.rb +3 -6
  382. data/spec/unit/pops/parser/parse_application_spec.rb +0 -1
  383. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +0 -1
  384. data/spec/unit/pops/parser/parse_calls_spec.rb +0 -1
  385. data/spec/unit/pops/parser/parse_capabilities_spec.rb +0 -1
  386. data/spec/unit/pops/parser/parse_conditionals_spec.rb +0 -1
  387. data/spec/unit/pops/parser/parse_containers_spec.rb +0 -1
  388. data/spec/unit/pops/parser/parse_plan_spec.rb +0 -1
  389. data/spec/unit/pops/parser/parse_resource_spec.rb +0 -1
  390. data/spec/unit/pops/parser/parse_site_spec.rb +0 -1
  391. data/spec/unit/pops/parser/pn_parser_spec.rb +0 -1
  392. data/spec/unit/pops/pn_spec.rb +0 -1
  393. data/spec/unit/pops/resource/resource_type_impl_spec.rb +0 -1
  394. data/spec/unit/pops/serialization/serialization_spec.rb +1 -1
  395. data/spec/unit/pops/serialization/to_from_hr_spec.rb +1 -1
  396. data/spec/unit/pops/types/recursion_guard_spec.rb +10 -10
  397. data/spec/unit/pops/types/ruby_generator_spec.rb +2 -2
  398. data/spec/unit/pops/types/type_asserter_spec.rb +2 -2
  399. data/spec/unit/pops/types/type_calculator_spec.rb +30 -30
  400. data/spec/unit/pops/types/type_parser_spec.rb +13 -13
  401. data/spec/unit/pops/validator/validator_spec.rb +1 -2
  402. data/spec/unit/pops/visitor_spec.rb +0 -1
  403. data/spec/unit/property/boolean_spec.rb +1 -1
  404. data/spec/unit/property/ensure_spec.rb +0 -1
  405. data/spec/unit/property/keyvalue_spec.rb +32 -34
  406. data/spec/unit/property/list_spec.rb +26 -27
  407. data/spec/unit/property/ordered_list_spec.rb +10 -14
  408. data/spec/unit/property_spec.rb +42 -43
  409. data/spec/unit/provider/aix_object_spec.rb +47 -45
  410. data/spec/unit/provider/command_spec.rb +9 -9
  411. data/spec/unit/provider/exec/posix_spec.rb +6 -7
  412. data/spec/unit/provider/exec/shell_spec.rb +0 -1
  413. data/spec/unit/provider/exec/windows_spec.rb +2 -4
  414. data/spec/unit/provider/exec_spec.rb +0 -1
  415. data/spec/unit/provider/file/posix_spec.rb +22 -24
  416. data/spec/unit/provider/file/windows_spec.rb +15 -17
  417. data/spec/unit/provider/group/aix_spec.rb +3 -2
  418. data/spec/unit/provider/group/groupadd_spec.rb +30 -26
  419. data/spec/unit/provider/group/ldap_spec.rb +18 -18
  420. data/spec/unit/provider/group/pw_spec.rb +11 -11
  421. data/spec/unit/provider/group/windows_adsi_spec.rb +54 -54
  422. data/spec/unit/provider/ldap_spec.rb +61 -62
  423. data/spec/unit/provider/nameservice/directoryservice_spec.rb +35 -36
  424. data/spec/unit/provider/nameservice_spec.rb +38 -40
  425. data/spec/unit/provider/package/aix_spec.rb +15 -15
  426. data/spec/unit/provider/package/appdmg_spec.rb +13 -13
  427. data/spec/unit/provider/package/apt_spec.rb +44 -27
  428. data/spec/unit/provider/package/aptitude_spec.rb +6 -7
  429. data/spec/unit/provider/package/aptrpm_spec.rb +7 -12
  430. data/spec/unit/provider/package/base_spec.rb +4 -4
  431. data/spec/unit/provider/package/dnf_spec.rb +18 -20
  432. data/spec/unit/provider/package/dpkg_spec.rb +52 -52
  433. data/spec/unit/provider/package/freebsd_spec.rb +11 -11
  434. data/spec/unit/provider/package/gem_spec.rb +51 -43
  435. data/spec/unit/provider/package/hpux_spec.rb +8 -8
  436. data/spec/unit/provider/package/macports_spec.rb +46 -42
  437. data/spec/unit/provider/package/nim_spec.rb +30 -39
  438. data/spec/unit/provider/package/openbsd_spec.rb +36 -39
  439. data/spec/unit/provider/package/opkg_spec.rb +23 -26
  440. data/spec/unit/provider/package/pacman_spec.rb +97 -118
  441. data/spec/unit/provider/package/pip_spec.rb +71 -72
  442. data/spec/unit/provider/package/pkg_spec.rb +109 -109
  443. data/spec/unit/provider/package/pkgdmg_spec.rb +65 -63
  444. data/spec/unit/provider/package/pkgin_spec.rb +10 -8
  445. data/spec/unit/provider/package/pkgng_spec.rb +17 -18
  446. data/spec/unit/provider/package/pkgutil_spec.rb +45 -49
  447. data/spec/unit/provider/package/portage_spec.rb +70 -74
  448. data/spec/unit/provider/package/puppet_gem_spec.rb +28 -8
  449. data/spec/unit/provider/package/rpm_spec.rb +53 -64
  450. data/spec/unit/provider/package/sun_spec.rb +16 -18
  451. data/spec/unit/provider/package/tdnf_spec.rb +2 -2
  452. data/spec/unit/provider/package/up2date_spec.rb +2 -4
  453. data/spec/unit/provider/package/urpmi_spec.rb +15 -17
  454. data/spec/unit/provider/package/windows/exe_package_spec.rb +12 -15
  455. data/spec/unit/provider/package/windows/msi_package_spec.rb +19 -22
  456. data/spec/unit/provider/package/windows/package_spec.rb +37 -42
  457. data/spec/unit/provider/package/windows_spec.rb +36 -32
  458. data/spec/unit/provider/package/yum_spec.rb +7 -7
  459. data/spec/unit/provider/package/zypper_spec.rb +87 -87
  460. data/spec/unit/provider/parsedfile_spec.rb +44 -45
  461. data/spec/unit/provider/service/base_spec.rb +4 -5
  462. data/spec/unit/provider/service/bsd_spec.rb +27 -29
  463. data/spec/unit/provider/service/daemontools_spec.rb +35 -35
  464. data/spec/unit/provider/service/debian_spec.rb +38 -38
  465. data/spec/unit/provider/service/freebsd_spec.rb +18 -18
  466. data/spec/unit/provider/service/gentoo_spec.rb +50 -55
  467. data/spec/unit/provider/service/init_spec.rb +53 -52
  468. data/spec/unit/provider/service/launchd_spec.rb +138 -116
  469. data/spec/unit/provider/service/openbsd_spec.rb +50 -50
  470. data/spec/unit/provider/service/openrc_spec.rb +43 -45
  471. data/spec/unit/provider/service/openwrt_spec.rb +26 -31
  472. data/spec/unit/provider/service/rcng_spec.rb +14 -14
  473. data/spec/unit/provider/service/redhat_spec.rb +45 -43
  474. data/spec/unit/provider/service/runit_spec.rb +29 -27
  475. data/spec/unit/provider/service/smf_spec.rb +74 -66
  476. data/spec/unit/provider/service/src_spec.rb +46 -47
  477. data/spec/unit/provider/service/systemd_spec.rb +104 -113
  478. data/spec/unit/provider/service/upstart_spec.rb +74 -71
  479. data/spec/unit/provider/service/windows_spec.rb +33 -41
  480. data/spec/unit/provider/user/aix_spec.rb +31 -31
  481. data/spec/unit/provider/user/directoryservice_spec.rb +109 -114
  482. data/spec/unit/provider/user/hpux_spec.rb +16 -16
  483. data/spec/unit/provider/user/ldap_spec.rb +57 -57
  484. data/spec/unit/provider/user/openbsd_spec.rb +10 -12
  485. data/spec/unit/provider/user/pw_spec.rb +37 -35
  486. data/spec/unit/provider/user/user_role_add_spec.rb +93 -93
  487. data/spec/unit/provider/user/useradd_spec.rb +93 -92
  488. data/spec/unit/provider/user/windows_adsi_spec.rb +59 -60
  489. data/spec/unit/provider_spec.rb +35 -35
  490. data/spec/unit/puppet_pal_2pec.rb +4 -5
  491. data/spec/unit/puppet_pal_spec.rb +0 -1
  492. data/spec/unit/puppet_spec.rb +6 -7
  493. data/spec/unit/relationship_spec.rb +0 -1
  494. data/spec/unit/reports/http_spec.rb +21 -23
  495. data/spec/unit/reports/store_spec.rb +3 -4
  496. data/spec/unit/reports_spec.rb +12 -14
  497. data/spec/unit/resource/capability_finder_spec.rb +15 -17
  498. data/spec/unit/resource/catalog_spec.rb +72 -68
  499. data/spec/unit/resource/status_spec.rb +6 -8
  500. data/spec/unit/resource/type_collection_spec.rb +17 -18
  501. data/spec/unit/resource/type_spec.rb +34 -35
  502. data/spec/unit/resource_spec.rb +36 -32
  503. data/spec/unit/rest/client_spec.rb +58 -27
  504. data/spec/unit/rest/route_spec.rb +5 -5
  505. data/spec/unit/scheduler/job_spec.rb +0 -1
  506. data/spec/unit/scheduler/scheduler_spec.rb +0 -1
  507. data/spec/unit/scheduler/splay_job_spec.rb +1 -2
  508. data/spec/unit/settings/array_setting_spec.rb +1 -1
  509. data/spec/unit/settings/autosign_setting_spec.rb +9 -9
  510. data/spec/unit/settings/certificate_revocation_setting_spec.rb +1 -1
  511. data/spec/unit/settings/config_file_spec.rb +0 -1
  512. data/spec/unit/settings/directory_setting_spec.rb +2 -7
  513. data/spec/unit/settings/duration_setting_spec.rb +1 -2
  514. data/spec/unit/settings/enum_setting_spec.rb +1 -1
  515. data/spec/unit/settings/environment_conf_spec.rb +4 -6
  516. data/spec/unit/settings/file_setting_spec.rb +44 -46
  517. data/spec/unit/settings/path_setting_spec.rb +1 -2
  518. data/spec/unit/settings/priority_setting_spec.rb +1 -2
  519. data/spec/unit/settings/string_setting_spec.rb +14 -15
  520. data/spec/unit/settings/terminus_setting_spec.rb +1 -2
  521. data/spec/unit/settings/value_translator_spec.rb +0 -1
  522. data/spec/unit/settings_spec.rb +228 -235
  523. data/spec/unit/ssl/base_spec.rb +14 -15
  524. data/spec/unit/ssl/certificate_request_spec.rb +62 -58
  525. data/spec/unit/ssl/certificate_spec.rb +23 -25
  526. data/spec/unit/ssl/digest_spec.rb +0 -1
  527. data/spec/unit/ssl/host_spec.rb +166 -149
  528. data/spec/unit/ssl/key_spec.rb +30 -31
  529. data/spec/unit/ssl/validator_spec.rb +38 -39
  530. data/spec/unit/task_spec.rb +44 -45
  531. data/spec/unit/transaction/additional_resource_generator_spec.rb +3 -5
  532. data/spec/unit/transaction/event_manager_spec.rb +87 -88
  533. data/spec/unit/transaction/event_spec.rb +16 -15
  534. data/spec/unit/transaction/persistence_spec.rb +16 -17
  535. data/spec/unit/transaction/report_spec.rb +11 -12
  536. data/spec/unit/transaction/resource_harness_spec.rb +28 -33
  537. data/spec/unit/transaction_spec.rb +100 -101
  538. data/spec/unit/type/component_spec.rb +0 -1
  539. data/spec/unit/type/exec_spec.rb +60 -56
  540. data/spec/unit/type/file/checksum_spec.rb +9 -10
  541. data/spec/unit/type/file/checksum_value_spec.rb +31 -32
  542. data/spec/unit/type/file/content_spec.rb +58 -61
  543. data/spec/unit/type/file/ctime_spec.rb +0 -1
  544. data/spec/unit/type/file/ensure_spec.rb +12 -13
  545. data/spec/unit/type/file/group_spec.rb +5 -7
  546. data/spec/unit/type/file/mode_spec.rb +4 -6
  547. data/spec/unit/type/file/mtime_spec.rb +0 -1
  548. data/spec/unit/type/file/owner_spec.rb +6 -8
  549. data/spec/unit/type/file/selinux_spec.rb +17 -19
  550. data/spec/unit/type/file/source_spec.rb +104 -101
  551. data/spec/unit/type/file/type_spec.rb +0 -1
  552. data/spec/unit/type/file_spec.rb +195 -185
  553. data/spec/unit/type/filebucket_spec.rb +4 -5
  554. data/spec/unit/type/group_spec.rb +6 -8
  555. data/spec/unit/type/noop_metaparam_spec.rb +1 -2
  556. data/spec/unit/type/package/package_settings_spec.rb +44 -23
  557. data/spec/unit/type/package_spec.rb +56 -57
  558. data/spec/unit/type/resources_spec.rb +72 -74
  559. data/spec/unit/type/schedule_spec.rb +24 -26
  560. data/spec/unit/type/service_spec.rb +48 -48
  561. data/spec/unit/type/stage_spec.rb +0 -1
  562. data/spec/unit/type/tidy_spec.rb +61 -62
  563. data/spec/unit/type/user_spec.rb +24 -25
  564. data/spec/unit/type/whit_spec.rb +0 -1
  565. data/spec/unit/type_spec.rb +55 -54
  566. data/spec/unit/util/at_fork_spec.rb +18 -19
  567. data/spec/unit/util/autoload_spec.rb +55 -56
  568. data/spec/unit/util/backups_spec.rb +34 -35
  569. data/spec/unit/util/character_encoding_spec.rb +5 -5
  570. data/spec/unit/util/checksums_spec.rb +38 -39
  571. data/spec/unit/util/colors_spec.rb +1 -2
  572. data/spec/unit/util/command_line_spec.rb +24 -25
  573. data/spec/unit/util/constant_inflector_spec.rb +0 -1
  574. data/spec/unit/util/diff_spec.rb +7 -8
  575. data/spec/unit/util/errors_spec.rb +0 -1
  576. data/spec/unit/util/execution_spec.rb +185 -161
  577. data/spec/unit/util/execution_stub_spec.rb +0 -1
  578. data/spec/unit/util/feature_spec.rb +21 -14
  579. data/spec/unit/util/filetype_spec.rb +49 -49
  580. data/spec/unit/util/http_proxy_spec.rb +12 -12
  581. data/spec/unit/util/inifile_spec.rb +26 -31
  582. data/spec/unit/util/json_lockfile_spec.rb +3 -5
  583. data/spec/unit/util/ldap/connection_spec.rb +26 -25
  584. data/spec/unit/util/ldap/generator_spec.rb +0 -1
  585. data/spec/unit/util/ldap/manager_spec.rb +102 -101
  586. data/spec/unit/util/lockfile_spec.rb +0 -1
  587. data/spec/unit/util/log/destinations_spec.rb +30 -33
  588. data/spec/unit/util/log_spec.rb +35 -36
  589. data/spec/unit/util/logging_spec.rb +58 -72
  590. data/spec/unit/util/metric_spec.rb +0 -1
  591. data/spec/unit/util/monkey_patches_spec.rb +7 -9
  592. data/spec/unit/util/multi_match_spec.rb +0 -1
  593. data/spec/unit/util/network_device/config_spec.rb +0 -1
  594. data/spec/unit/util/network_device/transport/base_spec.rb +5 -6
  595. data/spec/unit/util/network_device_spec.rb +7 -9
  596. data/spec/unit/util/package_spec.rb +0 -1
  597. data/spec/unit/util/pidlock_spec.rb +21 -22
  598. data/spec/unit/util/plist_spec.rb +40 -33
  599. data/spec/unit/util/posix_spec.rb +54 -51
  600. data/spec/unit/util/rdoc_spec.rb +9 -10
  601. data/spec/unit/util/reference_spec.rb +0 -1
  602. data/spec/unit/util/resource_template_spec.rb +20 -20
  603. data/spec/unit/util/retry_action_spec.rb +7 -8
  604. data/spec/unit/util/rubygems_spec.rb +7 -8
  605. data/spec/unit/util/run_mode_spec.rb +3 -4
  606. data/spec/unit/util/selinux_spec.rb +79 -72
  607. data/spec/unit/util/splayer_spec.rb +8 -9
  608. data/spec/unit/util/ssl_spec.rb +0 -1
  609. data/spec/unit/util/storage_spec.rb +3 -4
  610. data/spec/unit/util/suidmanager_spec.rb +45 -54
  611. data/spec/unit/util/symbolic_file_mode_spec.rb +0 -1
  612. data/spec/unit/util/tag_set_spec.rb +0 -1
  613. data/spec/unit/util/tagging_spec.rb +0 -1
  614. data/spec/unit/util/terminal_spec.rb +9 -10
  615. data/spec/unit/util/user_attr_spec.rb +1 -2
  616. data/spec/unit/util/warnings_spec.rb +3 -4
  617. data/spec/unit/util/watcher/periodic_watcher_spec.rb +2 -2
  618. data/spec/unit/util/watcher_spec.rb +51 -21
  619. data/spec/unit/util/windows/access_control_entry_spec.rb +0 -1
  620. data/spec/unit/util/windows/access_control_list_spec.rb +0 -1
  621. data/spec/unit/util/windows/adsi_spec.rb +136 -138
  622. data/spec/unit/util/windows/api_types_spec.rb +0 -1
  623. data/spec/unit/util/windows/eventlog_spec.rb +9 -12
  624. data/spec/unit/util/windows/file_spec.rb +0 -1
  625. data/spec/unit/util/windows/root_certs_spec.rb +0 -1
  626. data/spec/unit/util/windows/security_descriptor_spec.rb +0 -2
  627. data/spec/unit/util/windows/service_spec.rb +66 -68
  628. data/spec/unit/util/windows/sid_spec.rb +11 -13
  629. data/spec/unit/util/windows/string_spec.rb +0 -1
  630. data/spec/unit/util_spec.rb +55 -57
  631. data/spec/unit/version_spec.rb +6 -6
  632. metadata +2 -2
@@ -32,38 +32,38 @@ describe Puppet::Type.type(:group).provider(:ldap) do
32
32
  describe "when being created" do
33
33
  before do
34
34
  # So we don't try to actually talk to ldap
35
- @connection = mock 'connection'
36
- described_class.manager.stubs(:connect).yields @connection
35
+ @connection = double('connection')
36
+ allow(described_class.manager).to receive(:connect).and_yield(@connection)
37
37
  end
38
38
 
39
39
  describe "with no gid specified" do
40
40
  it "should pick the first available GID after the largest existing GID" do
41
41
  low = {:name=>["luke"], :gid=>["600"]}
42
42
  high = {:name=>["testing"], :gid=>["640"]}
43
- described_class.manager.expects(:search).returns([low, high])
43
+ expect(described_class.manager).to receive(:search).and_return([low, high])
44
44
 
45
- resource = stub 'resource', :should => %w{whatever}
46
- resource.stubs(:should).with(:gid).returns nil
47
- resource.stubs(:should).with(:ensure).returns :present
45
+ resource = double('resource', :should => %w{whatever})
46
+ allow(resource).to receive(:should).with(:gid).and_return(nil)
47
+ allow(resource).to receive(:should).with(:ensure).and_return(:present)
48
48
  instance = described_class.new(:name => "luke", :ensure => :absent)
49
- instance.stubs(:resource).returns resource
49
+ allow(instance).to receive(:resource).and_return(resource)
50
50
 
51
- @connection.expects(:add).with { |dn, attrs| attrs["gidNumber"] == ["641"] }
51
+ expect(@connection).to receive(:add).with(anything, hash_including("gidNumber" => ["641"]))
52
52
 
53
53
  instance.create
54
54
  instance.flush
55
55
  end
56
56
 
57
57
  it "should pick '501' as its GID if no groups are found" do
58
- described_class.manager.expects(:search).returns nil
58
+ expect(described_class.manager).to receive(:search).and_return(nil)
59
59
 
60
- resource = stub 'resource', :should => %w{whatever}
61
- resource.stubs(:should).with(:gid).returns nil
62
- resource.stubs(:should).with(:ensure).returns :present
60
+ resource = double('resource', :should => %w{whatever})
61
+ allow(resource).to receive(:should).with(:gid).and_return(nil)
62
+ allow(resource).to receive(:should).with(:ensure).and_return(:present)
63
63
  instance = described_class.new(:name => "luke", :ensure => :absent)
64
- instance.stubs(:resource).returns resource
64
+ allow(instance).to receive(:resource).and_return(resource)
65
65
 
66
- @connection.expects(:add).with { |dn, attrs| attrs["gidNumber"] == ["501"] }
66
+ expect(@connection).to receive(:add).with(anything, hash_including("gidNumber" => ["501"]))
67
67
 
68
68
  instance.create
69
69
  instance.flush
@@ -77,21 +77,21 @@ describe Puppet::Type.type(:group).provider(:ldap) do
77
77
 
78
78
  describe "when converting from a group name to GID" do
79
79
  it "should use the ldap manager to look up the GID" do
80
- described_class.manager.expects(:search).with("cn=foo")
80
+ expect(described_class.manager).to receive(:search).with("cn=foo")
81
81
  described_class.name2id("foo")
82
82
  end
83
83
 
84
84
  it "should return nil if no group is found" do
85
- described_class.manager.expects(:search).with("cn=foo").returns nil
85
+ expect(described_class.manager).to receive(:search).with("cn=foo").and_return(nil)
86
86
  expect(described_class.name2id("foo")).to be_nil
87
- described_class.manager.expects(:search).with("cn=bar").returns []
87
+ expect(described_class.manager).to receive(:search).with("cn=bar").and_return([])
88
88
  expect(described_class.name2id("bar")).to be_nil
89
89
  end
90
90
 
91
91
  # We shouldn't ever actually have more than one gid, but it doesn't hurt
92
92
  # to test for the possibility.
93
93
  it "should return the first gid from the first returned group" do
94
- described_class.manager.expects(:search).with("cn=foo").returns [{:name => "foo", :gid => [10, 11]}, {:name => :bar, :gid => [20, 21]}]
94
+ expect(described_class.manager).to receive(:search).with("cn=foo").and_return([{:name => "foo", :gid => [10, 11]}, {:name => :bar, :gid => [20, 21]}])
95
95
  expect(described_class.name2id("foo")).to eq(10)
96
96
  end
97
97
  end
@@ -12,46 +12,46 @@ describe Puppet::Type.type(:group).provider(:pw) do
12
12
  describe "when creating groups" do
13
13
  let :provider do
14
14
  prov = resource.provider
15
- prov.expects(:exists?).returns nil
15
+ expect(prov).to receive(:exists?).and_return(nil)
16
16
  prov
17
17
  end
18
18
 
19
19
  it "should run pw with no additional flags when no properties are given" do
20
20
  expect(provider.addcmd).to eq([described_class.command(:pw), "groupadd", "testgroup"])
21
- provider.expects(:execute).with([described_class.command(:pw), "groupadd", "testgroup"], kind_of(Hash))
21
+ expect(provider).to receive(:execute).with([described_class.command(:pw), "groupadd", "testgroup"], kind_of(Hash))
22
22
  provider.create
23
23
  end
24
24
 
25
25
  it "should use -o when allowdupe is enabled" do
26
26
  resource[:allowdupe] = true
27
- provider.expects(:execute).with(includes("-o"), kind_of(Hash))
27
+ expect(provider).to receive(:execute).with(include("-o"), kind_of(Hash))
28
28
  provider.create
29
29
  end
30
30
 
31
31
  it "should use -g with the correct argument when the gid property is set" do
32
32
  resource[:gid] = 12345
33
- provider.expects(:execute).with(all_of(includes("-g"), includes(12345)), kind_of(Hash))
33
+ expect(provider).to receive(:execute).with(include("-g") & include(12345), kind_of(Hash))
34
34
  provider.create
35
35
  end
36
36
 
37
37
  it "should use -M with the correct argument when the members property is set" do
38
38
  resource[:members] = "user1"
39
- provider.expects(:execute).with(all_of(includes("-M"), includes("user1")), kind_of(Hash))
39
+ expect(provider).to receive(:execute).with(include("-M") & include("user1"), kind_of(Hash))
40
40
  provider.create
41
41
  end
42
42
 
43
43
  it "should use -M with all the given users when the members property is set to an array" do
44
44
  resource[:members] = ["user1", "user2"]
45
- provider.expects(:execute).with(all_of(includes("-M"), includes("user1,user2")), kind_of(Hash))
45
+ expect(provider).to receive(:execute).with(include("-M") & include("user1,user2"), kind_of(Hash))
46
46
  provider.create
47
47
  end
48
48
  end
49
49
 
50
50
  describe "when deleting groups" do
51
51
  it "should run pw with no additional flags" do
52
- provider.expects(:exists?).returns true
52
+ expect(provider).to receive(:exists?).and_return(true)
53
53
  expect(provider.deletecmd).to eq([described_class.command(:pw), "groupdel", "testgroup"])
54
- provider.expects(:execute).with([described_class.command(:pw), "groupdel", "testgroup"], has_entry(:custom_environment, {}))
54
+ expect(provider).to receive(:execute).with([described_class.command(:pw), "groupdel", "testgroup"], hash_including(:custom_environment => {}))
55
55
  provider.delete
56
56
  end
57
57
  end
@@ -59,19 +59,19 @@ describe Puppet::Type.type(:group).provider(:pw) do
59
59
  describe "when modifying groups" do
60
60
  it "should run pw with the correct arguments" do
61
61
  expect(provider.modifycmd("gid", 12345)).to eq([described_class.command(:pw), "groupmod", "testgroup", "-g", 12345])
62
- provider.expects(:execute).with([described_class.command(:pw), "groupmod", "testgroup", "-g", 12345], has_entry(:custom_environment, {}))
62
+ expect(provider).to receive(:execute).with([described_class.command(:pw), "groupmod", "testgroup", "-g", 12345], hash_including(:custom_environment => {}))
63
63
  provider.gid = 12345
64
64
  end
65
65
 
66
66
  it "should use -M with the correct argument when the members property is changed" do
67
67
  resource[:members] = "user1"
68
- provider.expects(:execute).with(all_of(includes("-M"), includes("user2")), has_entry(:custom_environment, {}))
68
+ expect(provider).to receive(:execute).with(include("-M") & include("user2"), hash_including(:custom_environment, {}))
69
69
  provider.members = "user2"
70
70
  end
71
71
 
72
72
  it "should use -M with all the given users when the members property is changed with an array" do
73
73
  resource[:members] = ["user1", "user2"]
74
- provider.expects(:execute).with(all_of(includes("-M"), includes("user3,user4")), has_entry(:custom_environment, {}))
74
+ expect(provider).to receive(:execute).with(include("-M") & include("user3,user4"), hash_including(:custom_environment, {}))
75
75
  provider.members = ["user3", "user4"]
76
76
  end
77
77
  end
@@ -1,5 +1,3 @@
1
- #!/usr/bin/env ruby
2
-
3
1
  require 'spec_helper'
4
2
 
5
3
  describe Puppet::Type.type(:group).provider(:windows_adsi), :if => Puppet::Util::Platform.windows? do
@@ -11,39 +9,37 @@ describe Puppet::Type.type(:group).provider(:windows_adsi), :if => Puppet::Util:
11
9
  end
12
10
 
13
11
  let(:provider) { resource.provider }
14
-
15
- let(:connection) { stub 'connection' }
12
+ let(:connection) { double('connection') }
16
13
 
17
14
  before :each do
18
- Puppet::Util::Windows::ADSI.stubs(:computer_name).returns('testcomputername')
19
- Puppet::Util::Windows::ADSI.stubs(:connect).returns connection
15
+ allow(Puppet::Util::Windows::ADSI).to receive(:computer_name).and_return('testcomputername')
16
+ allow(Puppet::Util::Windows::ADSI).to receive(:connect).and_return(connection)
20
17
  # this would normally query the system, but not needed for these tests
21
- Puppet::Util::Windows::ADSI::Group.stubs(:localized_domains).returns([])
18
+ allow(Puppet::Util::Windows::ADSI::Group).to receive(:localized_domains).and_return([])
22
19
  end
23
20
 
24
21
  describe ".instances" do
25
22
  it "should enumerate all groups" do
26
23
  names = ['group1', 'group2', 'group3']
27
- stub_groups = names.map{|n| stub(:name => n)}
24
+ stub_groups = names.map{|n| double(:name => n)}
28
25
 
29
- connection.stubs(:execquery).with('select name from win32_group where localaccount = "TRUE"').returns stub_groups
26
+ allow(connection).to receive(:execquery).with('select name from win32_group where localaccount = "TRUE"').and_return(stub_groups)
30
27
 
31
28
  expect(described_class.instances.map(&:name)).to match(names)
32
29
  end
33
30
  end
34
31
 
35
32
  describe "group type :members property helpers" do
36
-
37
- let(:user1) { stub(:account => 'user1', :domain => '.', :sid => 'user1sid') }
38
- let(:user2) { stub(:account => 'user2', :domain => '.', :sid => 'user2sid') }
39
- let(:user3) { stub(:account => 'user3', :domain => '.', :sid => 'user3sid') }
33
+ let(:user1) { double(:account => 'user1', :domain => '.', :sid => 'user1sid') }
34
+ let(:user2) { double(:account => 'user2', :domain => '.', :sid => 'user2sid') }
35
+ let(:user3) { double(:account => 'user3', :domain => '.', :sid => 'user3sid') }
40
36
  let(:invalid_user) { SecureRandom.uuid }
41
37
 
42
38
  before :each do
43
- Puppet::Util::Windows::SID.stubs(:name_to_principal).with('user1').returns(user1)
44
- Puppet::Util::Windows::SID.stubs(:name_to_principal).with('user2').returns(user2)
45
- Puppet::Util::Windows::SID.stubs(:name_to_principal).with('user3').returns(user3)
46
- Puppet::Util::Windows::SID.stubs(:name_to_principal).with(invalid_user).returns(nil)
39
+ allow(Puppet::Util::Windows::SID).to receive(:name_to_principal).with('user1').and_return(user1)
40
+ allow(Puppet::Util::Windows::SID).to receive(:name_to_principal).with('user2').and_return(user2)
41
+ allow(Puppet::Util::Windows::SID).to receive(:name_to_principal).with('user3').and_return(user3)
42
+ allow(Puppet::Util::Windows::SID).to receive(:name_to_principal).with(invalid_user).and_return(nil)
47
43
  end
48
44
 
49
45
  describe "#members_insync?" do
@@ -212,19 +208,24 @@ describe Puppet::Type.type(:group).provider(:windows_adsi), :if => Puppet::Util:
212
208
  expect(provider.members_to_s(input)).to be_empty
213
209
  end
214
210
  end
211
+
215
212
  it "should return an empty string on empty or nil users" do
216
213
  expect(provider.members_to_s([])).to be_empty
217
214
  expect(provider.members_to_s(nil)).to be_empty
218
215
  end
216
+
219
217
  it "should return a user string like DOMAIN\\USER" do
220
218
  expect(provider.members_to_s(['user1'])).to eq('.\user1')
221
219
  end
220
+
222
221
  it "should return a user string like DOMAIN\\USER,DOMAIN2\\USER2" do
223
222
  expect(provider.members_to_s(['user1', 'user2'])).to eq('.\user1,.\user2')
224
223
  end
224
+
225
225
  it "should return the username when it cannot be resolved to a SID (for the sake of resource_harness error messages)" do
226
226
  expect(provider.members_to_s([invalid_user])).to eq("#{invalid_user}")
227
227
  end
228
+
228
229
  it "should return the username when it cannot be resolved to a SID (for the sake of resource_harness error messages)" do
229
230
  expect(provider.members_to_s([invalid_user])).to eq("#{invalid_user}")
230
231
  end
@@ -232,50 +233,50 @@ describe Puppet::Type.type(:group).provider(:windows_adsi), :if => Puppet::Util:
232
233
  end
233
234
 
234
235
  describe "when managing members" do
235
- let(:user1) { stub(:account => 'user1', :domain => '.', :sid => 'user1sid') }
236
- let(:user2) { stub(:account => 'user2', :domain => '.', :sid => 'user2sid') }
237
- let(:user3) { stub(:account => 'user3', :domain => '.', :sid => 'user3sid') }
236
+ let(:user1) { double(:account => 'user1', :domain => '.', :sid => 'user1sid') }
237
+ let(:user2) { double(:account => 'user2', :domain => '.', :sid => 'user2sid') }
238
+ let(:user3) { double(:account => 'user3', :domain => '.', :sid => 'user3sid') }
238
239
 
239
240
  before :each do
240
- Puppet::Util::Windows::SID.stubs(:name_to_principal).with('user1').returns(user1)
241
- Puppet::Util::Windows::SID.stubs(:name_to_principal).with('user2').returns(user2)
242
- Puppet::Util::Windows::SID.stubs(:name_to_principal).with('user3').returns(user3)
241
+ allow(Puppet::Util::Windows::SID).to receive(:name_to_principal).with('user1').and_return(user1)
242
+ allow(Puppet::Util::Windows::SID).to receive(:name_to_principal).with('user2').and_return(user2)
243
+ allow(Puppet::Util::Windows::SID).to receive(:name_to_principal).with('user3').and_return(user3)
243
244
 
244
245
  resource[:auth_membership] = true
245
246
  end
246
247
 
247
248
  it "should be able to provide a list of members" do
248
- provider.group.stubs(:members).returns [
249
+ allow(provider.group).to receive(:members).and_return([
249
250
  'user1',
250
251
  'user2',
251
252
  'user3',
252
- ]
253
+ ])
253
254
 
254
255
  expected_member_sids = [user1.sid, user2.sid, user3.sid]
255
256
  expected_members = ['user1', 'user2', 'user3']
256
- provider.stubs(:members_to_s)
257
+ allow(provider).to receive(:members_to_s)
257
258
  .with(expected_member_sids)
258
- .returns(expected_members.join(','))
259
+ .and_return(expected_members.join(','))
259
260
 
260
261
  expect(provider.members).to match_array(expected_members)
261
262
  end
262
263
 
263
264
  it "should be able to set group members" do
264
- provider.group.stubs(:members).returns ['user1', 'user2']
265
+ allow(provider.group).to receive(:members).and_return(['user1', 'user2'])
265
266
 
266
267
  member_sids = [
267
- stub(:account => 'user1', :domain => 'testcomputername', :sid => 1),
268
- stub(:account => 'user2', :domain => 'testcomputername', :sid => 2),
269
- stub(:account => 'user3', :domain => 'testcomputername', :sid => 3),
268
+ double(:account => 'user1', :domain => 'testcomputername', :sid => 1),
269
+ double(:account => 'user2', :domain => 'testcomputername', :sid => 2),
270
+ double(:account => 'user3', :domain => 'testcomputername', :sid => 3),
270
271
  ]
271
272
 
272
- provider.group.stubs(:member_sids).returns(member_sids[0..1])
273
+ allow(provider.group).to receive(:member_sids).and_return(member_sids[0..1])
273
274
 
274
- Puppet::Util::Windows::SID.expects(:name_to_principal).with('user2').returns(member_sids[1])
275
- Puppet::Util::Windows::SID.expects(:name_to_principal).with('user3').returns(member_sids[2])
275
+ expect(Puppet::Util::Windows::SID).to receive(:name_to_principal).with('user2').and_return(member_sids[1])
276
+ expect(Puppet::Util::Windows::SID).to receive(:name_to_principal).with('user3').and_return(member_sids[2])
276
277
 
277
- provider.group.expects(:remove_member_sids).with(member_sids[0])
278
- provider.group.expects(:add_member_sids).with(member_sids[2])
278
+ expect(provider.group).to receive(:remove_member_sids).with(member_sids[0])
279
+ expect(provider.group).to receive(:add_member_sids).with(member_sids[2])
279
280
 
280
281
  provider.members = ['user2', 'user3']
281
282
  end
@@ -285,69 +286,68 @@ describe Puppet::Type.type(:group).provider(:windows_adsi), :if => Puppet::Util:
285
286
  it "should be able to create a group" do
286
287
  resource[:members] = ['user1', 'user2']
287
288
 
288
- group = stub 'group'
289
- Puppet::Util::Windows::ADSI::Group.expects(:create).with('testers').returns group
289
+ group = double('group')
290
+ expect(Puppet::Util::Windows::ADSI::Group).to receive(:create).with('testers').and_return(group)
290
291
 
291
- create = sequence('create')
292
- group.expects(:commit).in_sequence(create)
292
+ expect(group).to receive(:commit).ordered
293
293
  # due to PUP-1967, defaultto false will set the default to nil
294
- group.expects(:set_members).with(['user1', 'user2'], nil).in_sequence(create)
294
+ expect(group).to receive(:set_members).with(['user1', 'user2'], nil).ordered
295
295
 
296
296
  provider.create
297
297
  end
298
298
 
299
299
  it 'should not create a group if a user by the same name exists' do
300
- Puppet::Util::Windows::ADSI::Group.expects(:create).with('testers').raises( Puppet::Error.new("Cannot create group if user 'testers' exists.") )
300
+ expect(Puppet::Util::Windows::ADSI::Group).to receive(:create).with('testers').and_raise(Puppet::Error.new("Cannot create group if user 'testers' exists."))
301
301
  expect{ provider.create }.to raise_error( Puppet::Error,
302
302
  /Cannot create group if user 'testers' exists./ )
303
303
  end
304
304
 
305
305
  it "should fail with an actionable message when trying to create an active directory group" do
306
306
  resource[:name] = 'DOMAIN\testdomaingroup'
307
- Puppet::Util::Windows::ADSI::User.expects(:exists?).with(resource[:name]).returns(false)
308
- connection.expects(:Create)
309
- connection.expects(:SetInfo).raises( WIN32OLERuntimeError.new("(in OLE method `SetInfo': )\n OLE error code:8007089A in Active Directory\n The specified username is invalid.\r\n\n HRESULT error code:0x80020009\n Exception occurred."))
307
+ expect(Puppet::Util::Windows::ADSI::User).to receive(:exists?).with(resource[:name]).and_return(false)
308
+ expect(connection).to receive(:Create)
309
+ expect(connection).to receive(:SetInfo).and_raise( WIN32OLERuntimeError.new("(in OLE method `SetInfo': )\n OLE error code:8007089A in Active Directory\n The specified username is invalid.\r\n\n HRESULT error code:0x80020009\n Exception occurred."))
310
310
 
311
311
  expect{ provider.create }.to raise_error(Puppet::Error)
312
312
  end
313
313
 
314
314
  it 'should commit a newly created group' do
315
- provider.group.expects( :commit )
315
+ expect(provider.group).to receive( :commit )
316
316
 
317
317
  provider.flush
318
318
  end
319
319
  end
320
320
 
321
321
  it "should be able to test whether a group exists" do
322
- Puppet::Util::Windows::SID.stubs(:name_to_principal).returns(nil)
323
- Puppet::Util::Windows::ADSI.stubs(:connect).returns stub('connection', :Class => 'Group')
322
+ allow(Puppet::Util::Windows::SID).to receive(:name_to_principal).and_return(nil)
323
+ allow(Puppet::Util::Windows::ADSI).to receive(:connect).and_return(double('connection', :Class => 'Group'))
324
324
  expect(provider).to be_exists
325
325
 
326
- Puppet::Util::Windows::ADSI.stubs(:connect).returns nil
326
+ allow(Puppet::Util::Windows::ADSI).to receive(:connect).and_return(nil)
327
327
  expect(provider).not_to be_exists
328
328
  end
329
329
 
330
330
  it "should be able to delete a group" do
331
- connection.expects(:Delete).with('group', 'testers')
331
+ expect(connection).to receive(:Delete).with('group', 'testers')
332
332
 
333
333
  provider.delete
334
334
  end
335
335
 
336
336
  it 'should not run commit on a deleted group' do
337
- connection.expects(:Delete).with('group', 'testers')
338
- connection.expects(:SetInfo).never
337
+ expect(connection).to receive(:Delete).with('group', 'testers')
338
+ expect(connection).not_to receive(:SetInfo)
339
339
 
340
340
  provider.delete
341
341
  provider.flush
342
342
  end
343
343
 
344
344
  it "should report the group's SID as gid" do
345
- Puppet::Util::Windows::SID.expects(:name_to_sid).with('testers').returns('S-1-5-32-547')
345
+ expect(Puppet::Util::Windows::SID).to receive(:name_to_sid).with('testers').and_return('S-1-5-32-547')
346
346
  expect(provider.gid).to eq('S-1-5-32-547')
347
347
  end
348
348
 
349
349
  it "should fail when trying to manage the gid property" do
350
- provider.expects(:fail).with { |msg| msg =~ /gid is read-only/ }
350
+ expect(provider).to receive(:fail).with(/gid is read-only/)
351
351
  provider.send(:gid=, 500)
352
352
  end
353
353
 
@@ -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")