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/util/json_lockfile'
@@ -30,21 +29,20 @@ describe Puppet::Util::JsonLockfile do
30
29
 
31
30
  it "returns nil if the file read returned nil" do
32
31
  @lock.lock
33
- File.stubs(:read).returns nil
32
+ allow(File).to receive(:read).and_return(nil)
34
33
  expect(@lock.lock_data).to be_nil
35
34
  end
36
35
 
37
36
  it "returns nil if the file was empty" do
38
37
  @lock.lock
39
- File.stubs(:read).returns ''
38
+ allow(File).to receive(:read).and_return('')
40
39
  expect(@lock.lock_data).to be_nil
41
40
  end
42
41
 
43
42
  it "returns nil if the file was not in PSON" do
44
43
  @lock.lock
45
- File.stubs(:read).returns ']['
44
+ allow(File).to receive(:read).and_return('][')
46
45
  expect(@lock.lock_data).to be_nil
47
46
  end
48
-
49
47
  end
50
48
  end
@@ -1,4 +1,3 @@
1
- #! /usr/bin/env ruby
2
1
  require 'spec_helper'
3
2
 
4
3
  require 'puppet/util/ldap/connection'
@@ -20,13 +19,15 @@ end
20
19
 
21
20
  describe Puppet::Util::Ldap::Connection do
22
21
  before do
23
- Puppet.features.stubs(:ldap?).returns true
22
+ allow(Puppet.features).to receive(:ldap?).and_return(true)
24
23
 
25
- @ldapconn = mock 'ldap'
26
- LDAP::Conn.stubs(:new).returns(@ldapconn)
27
- LDAP::SSLConn.stubs(:new).returns(@ldapconn)
28
-
29
- @ldapconn.stub_everything
24
+ @ldapconn = double(
25
+ 'ldap',
26
+ set_option: nil,
27
+ simple_bind: nil,
28
+ )
29
+ allow(LDAP::Conn).to receive(:new).and_return(@ldapconn)
30
+ allow(LDAP::SSLConn).to receive(:new).and_return(@ldapconn)
30
31
 
31
32
  @connection = Puppet::Util::Ldap::Connection.new("host", "port")
32
33
  end
@@ -50,19 +51,19 @@ describe Puppet::Util::Ldap::Connection do
50
51
  end
51
52
 
52
53
  it "should fail if ldap is unavailable" do
53
- Puppet.features.expects(:ldap?).returns(false)
54
+ expect(Puppet.features).to receive(:ldap?).and_return(false)
54
55
 
55
56
  expect { Puppet::Util::Ldap::Connection.new("host", "port") }.to raise_error(Puppet::Error)
56
57
  end
57
58
 
58
59
  it "should use neither ssl nor tls by default" do
59
- LDAP::Conn.expects(:new).with("host", "port").returns(@ldapconn)
60
+ expect(LDAP::Conn).to receive(:new).with("host", "port").and_return(@ldapconn)
60
61
 
61
62
  @connection.start
62
63
  end
63
64
 
64
65
  it "should use LDAP::SSLConn if ssl is requested" do
65
- LDAP::SSLConn.expects(:new).with("host", "port").returns(@ldapconn)
66
+ expect(LDAP::SSLConn).to receive(:new).with("host", "port").and_return(@ldapconn)
66
67
 
67
68
  @connection.ssl = true
68
69
 
@@ -70,7 +71,7 @@ describe Puppet::Util::Ldap::Connection do
70
71
  end
71
72
 
72
73
  it "should use LDAP::SSLConn and tls if tls is requested" do
73
- LDAP::SSLConn.expects(:new).with("host", "port", true).returns(@ldapconn)
74
+ expect(LDAP::SSLConn).to receive(:new).with("host", "port", true).and_return(@ldapconn)
74
75
 
75
76
  @connection.ssl = :tls
76
77
 
@@ -78,31 +79,31 @@ describe Puppet::Util::Ldap::Connection do
78
79
  end
79
80
 
80
81
  it "should set the protocol version to 3 and enable referrals" do
81
- @ldapconn.expects(:set_option).with(LDAP::LDAP_OPT_PROTOCOL_VERSION, 3)
82
- @ldapconn.expects(:set_option).with(LDAP::LDAP_OPT_REFERRALS, LDAP::LDAP_OPT_ON)
82
+ expect(@ldapconn).to receive(:set_option).with(LDAP::LDAP_OPT_PROTOCOL_VERSION, 3)
83
+ expect(@ldapconn).to receive(:set_option).with(LDAP::LDAP_OPT_REFERRALS, LDAP::LDAP_OPT_ON)
83
84
  @connection.start
84
85
  end
85
86
 
86
87
  it "should bind with the provided user and password" do
87
88
  @connection.user = "myuser"
88
89
  @connection.password = "mypassword"
89
- @ldapconn.expects(:simple_bind).with("myuser", "mypassword")
90
+ expect(@ldapconn).to receive(:simple_bind).with("myuser", "mypassword")
90
91
 
91
92
  @connection.start
92
93
  end
93
94
 
94
95
  it "should bind with no user and password if none has been provided" do
95
- @ldapconn.expects(:simple_bind).with(nil, nil)
96
+ expect(@ldapconn).to receive(:simple_bind).with(nil, nil)
96
97
  @connection.start
97
98
  end
98
99
  end
99
100
 
100
101
  describe "when closing connections" do
101
102
  it "should not close connections that are not open" do
102
- @connection.stubs(:connection).returns(@ldapconn)
103
+ allow(@connection).to receive(:connection).and_return(@ldapconn)
103
104
 
104
- @ldapconn.expects(:bound?).returns false
105
- @ldapconn.expects(:unbind).never
105
+ expect(@ldapconn).to receive(:bound?).and_return(false)
106
+ expect(@ldapconn).not_to receive(:unbind)
106
107
 
107
108
  @connection.close
108
109
  end
@@ -115,46 +116,46 @@ describe Puppet::Util::Ldap::Connection do
115
116
  describe "when creating a default connection" do
116
117
  it "should use the :ldapserver setting to determine the host" do
117
118
  Puppet[:ldapserver] = "myserv"
118
- Puppet::Util::Ldap::Connection.expects(:new).with { |host, port, options| host == "myserv" }
119
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).with("myserv", anything, anything)
119
120
  Puppet::Util::Ldap::Connection.instance
120
121
  end
121
122
 
122
123
  it "should use the :ldapport setting to determine the port" do
123
124
  Puppet[:ldapport] = "456"
124
- Puppet::Util::Ldap::Connection.expects(:new).with { |host, port, options| port == "456" }
125
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).with(anything, "456", anything)
125
126
  Puppet::Util::Ldap::Connection.instance
126
127
  end
127
128
 
128
129
  it "should set ssl to :tls if tls is enabled" do
129
130
  Puppet[:ldaptls] = true
130
- Puppet::Util::Ldap::Connection.expects(:new).with { |host, port, options| options[:ssl] == :tls }
131
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).with(anything, anything, hash_including(ssl: :tls))
131
132
  Puppet::Util::Ldap::Connection.instance
132
133
  end
133
134
 
134
135
  it "should set ssl to 'true' if ssl is enabled and tls is not" do
135
136
  Puppet[:ldaptls] = false
136
137
  Puppet[:ldapssl] = true
137
- Puppet::Util::Ldap::Connection.expects(:new).with { |host, port, options| options[:ssl] == true }
138
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).with(anything, anything, hash_including(ssl: true))
138
139
  Puppet::Util::Ldap::Connection.instance
139
140
  end
140
141
 
141
142
  it "should set ssl to false if neither ssl nor tls are enabled" do
142
143
  Puppet[:ldaptls] = false
143
144
  Puppet[:ldapssl] = false
144
- Puppet::Util::Ldap::Connection.expects(:new).with { |host, port, options| options[:ssl] == false }
145
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).with(anything, anything, hash_including(ssl: false))
145
146
  Puppet::Util::Ldap::Connection.instance
146
147
  end
147
148
 
148
149
  it "should set the ldapuser if one is set" do
149
150
  Puppet[:ldapuser] = "foo"
150
- Puppet::Util::Ldap::Connection.expects(:new).with { |host, port, options| options[:user] == "foo" }
151
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).with(anything, anything, hash_including(user: "foo"))
151
152
  Puppet::Util::Ldap::Connection.instance
152
153
  end
153
154
 
154
155
  it "should set the ldapuser and ldappassword if both is set" do
155
156
  Puppet[:ldapuser] = "foo"
156
157
  Puppet[:ldappassword] = "bar"
157
- Puppet::Util::Ldap::Connection.expects(:new).with { |host, port, options| options[:user] == "foo" and options[:password] == "bar" }
158
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).with(anything, anything, hash_including(user: "foo", password: "bar"))
158
159
  Puppet::Util::Ldap::Connection.instance
159
160
  end
160
161
  end
@@ -1,4 +1,3 @@
1
- #! /usr/bin/env ruby
2
1
  require 'spec_helper'
3
2
 
4
3
  require 'puppet/util/ldap/generator'
@@ -1,4 +1,3 @@
1
- #! /usr/bin/env ruby
2
1
  require 'spec_helper'
3
2
 
4
3
  require 'puppet/util/ldap/manager'
@@ -46,13 +45,13 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
46
45
 
47
46
  describe "when generating attributes" do
48
47
  before do
49
- @generator = stub 'generator', :source => "one", :name => "myparam"
48
+ @generator = double('generator', :source => "one", :name => "myparam")
50
49
 
51
- Puppet::Util::Ldap::Generator.stubs(:new).with(:myparam).returns @generator
50
+ allow(Puppet::Util::Ldap::Generator).to receive(:new).with(:myparam).and_return(@generator)
52
51
  end
53
52
 
54
53
  it "should create a generator to do the parameter generation" do
55
- Puppet::Util::Ldap::Generator.expects(:new).with(:myparam).returns @generator
54
+ expect(Puppet::Util::Ldap::Generator).to receive(:new).with(:myparam).and_return(@generator)
56
55
  @manager.generates(:myparam)
57
56
  end
58
57
 
@@ -64,7 +63,7 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
64
63
  @manager.generates(:myparam)
65
64
 
66
65
  attrs = {"myparam" => "testing"}
67
- @generator.expects(:generate).never
66
+ expect(@generator).not_to receive(:generate)
68
67
 
69
68
  @manager.generate attrs
70
69
 
@@ -73,7 +72,7 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
73
72
 
74
73
  it "should look for the parameter as a string, not a symbol" do
75
74
  @manager.generates(:myparam)
76
- @generator.expects(:generate).with("yay").returns %w{double yay}
75
+ expect(@generator).to receive(:generate).with("yay").and_return(%w{double yay})
77
76
  attrs = {"one" => "yay"}
78
77
  @manager.generate attrs
79
78
 
@@ -87,19 +86,19 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
87
86
 
88
87
  it "should use the source value to generate the new value if a source attribute is specified" do
89
88
  @manager.generates(:myparam)
90
- @generator.expects(:generate).with("yay").returns %w{double yay}
89
+ expect(@generator).to receive(:generate).with("yay").and_return(%w{double yay})
91
90
  @manager.generate "one" => "yay"
92
91
  end
93
92
 
94
93
  it "should not pass in any value if no source attribute is specified" do
95
- @generator.stubs(:source).returns nil
94
+ allow(@generator).to receive(:source).and_return(nil)
96
95
  @manager.generates(:myparam)
97
- @generator.expects(:generate).with.returns %w{double yay}
96
+ expect(@generator).to receive(:generate).and_return(%w{double yay})
98
97
  @manager.generate "one" => "yay"
99
98
  end
100
99
 
101
100
  it "should convert any results to arrays of strings if necessary" do
102
- @generator.expects(:generate).returns :test
101
+ expect(@generator).to receive(:generate).and_return(:test)
103
102
  @manager.generates(:myparam)
104
103
 
105
104
  attrs = {"one" => "two"}
@@ -108,7 +107,7 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
108
107
  end
109
108
 
110
109
  it "should add the result to the passed-in attribute hash" do
111
- @generator.expects(:generate).returns %w{test}
110
+ expect(@generator).to receive(:generate).and_return(%w{test})
112
111
  @manager.generates(:myparam)
113
112
 
114
113
  attrs = {"one" => "two"}
@@ -229,9 +228,9 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
229
228
 
230
229
  describe "when using an ldap connection" do
231
230
  before do
232
- @ldapconn = mock 'ldapconn'
233
- @conn = stub 'connection', :connection => @ldapconn, :start => nil, :close => nil
234
- Puppet::Util::Ldap::Connection.stubs(:new).returns(@conn)
231
+ @ldapconn = double('ldapconn')
232
+ @conn = double('connection', :connection => @ldapconn, :start => nil, :close => nil)
233
+ allow(Puppet::Util::Ldap::Connection).to receive(:new).and_return(@conn)
235
234
  end
236
235
 
237
236
  it "should fail unless a block is given" do
@@ -240,144 +239,148 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
240
239
 
241
240
  it "should open the connection with its server set to :ldapserver" do
242
241
  Puppet[:ldapserver] = "myserver"
243
- Puppet::Util::Ldap::Connection.expects(:new).with { |*args| args[0] == "myserver" }.returns @conn
242
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).with("myserver", anything, anything).and_return(@conn)
244
243
 
245
244
  @manager.connect { |c| }
246
245
  end
247
246
 
248
247
  it "should open the connection with its port set to the :ldapport" do
249
248
  Puppet[:ldapport] = "28"
250
- Puppet::Util::Ldap::Connection.expects(:new).with { |*args| args[1] == "28" }.returns @conn
249
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).with(anything, "28", anything).and_return(@conn)
251
250
 
252
251
  @manager.connect { |c| }
253
252
  end
254
253
 
255
254
  it "should open the connection with no user if :ldapuser is not set" do
256
255
  Puppet[:ldapuser] = ""
257
- Puppet::Util::Ldap::Connection.expects(:new).with { |*args| args[2][:user].nil? }.returns @conn
256
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).with(anything, anything, hash_excluding(:user)).and_return(@conn)
258
257
 
259
258
  @manager.connect { |c| }
260
259
  end
261
260
 
262
261
  it "should open the connection with its user set to the :ldapuser if it is set" do
263
262
  Puppet[:ldapuser] = "mypass"
264
- Puppet::Util::Ldap::Connection.expects(:new).with { |*args| args[2][:user] == "mypass" }.returns @conn
263
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).with(anything, anything, hash_including(user: "mypass")).and_return(@conn)
265
264
 
266
265
  @manager.connect { |c| }
267
266
  end
268
267
 
269
268
  it "should open the connection with no password if :ldappassword is not set" do
270
269
  Puppet[:ldappassword] = ""
271
- Puppet::Util::Ldap::Connection.expects(:new).with { |*args| args[2][:password].nil? }.returns @conn
270
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).with(anything, anything, hash_excluding(:password)).and_return(@conn)
272
271
 
273
272
  @manager.connect { |c| }
274
273
  end
275
274
 
276
275
  it "should open the connection with its password set to the :ldappassword if it is set" do
277
276
  Puppet[:ldappassword] = "mypass"
278
- Puppet::Util::Ldap::Connection.expects(:new).with { |*args| args[2][:password] == "mypass" }.returns @conn
277
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).with(anything, anything, hash_including(password: "mypass")).and_return(@conn)
279
278
 
280
279
  @manager.connect { |c| }
281
280
  end
282
281
 
283
282
  it "should set ssl to :tls if ldaptls is enabled" do
284
283
  Puppet[:ldaptls] = true
285
- Puppet::Util::Ldap::Connection.expects(:new).with { |*args| args[2][:ssl] == :tls }.returns @conn
284
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).with(anything, anything, hash_including(ssl: :tls)).and_return(@conn)
286
285
 
287
286
  @manager.connect { |c| }
288
287
  end
289
288
 
290
289
  it "should set ssl to true if ldapssl is enabled" do
291
290
  Puppet[:ldapssl] = true
292
- Puppet::Util::Ldap::Connection.expects(:new).with { |*args| args[2][:ssl] == true }.returns @conn
291
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).with(anything, anything, hash_including(ssl: true)).and_return(@conn)
293
292
 
294
293
  @manager.connect { |c| }
295
294
  end
296
295
 
297
296
  it "should set ssl to false if neither ldaptls nor ldapssl is enabled" do
298
297
  Puppet[:ldapssl] = false
299
- Puppet::Util::Ldap::Connection.expects(:new).with { |*args| args[2][:ssl] == false }.returns @conn
298
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).with(anything, anything, hash_including(ssl: false)).and_return(@conn)
300
299
 
301
300
  @manager.connect { |c| }
302
301
  end
303
302
 
304
303
  it "should open, yield, and then close the connection" do
305
- @conn.expects(:start)
306
- @conn.expects(:close)
307
- Puppet::Util::Ldap::Connection.expects(:new).returns(@conn)
308
- @ldapconn.expects(:test)
304
+ expect(@conn).to receive(:start)
305
+ expect(@conn).to receive(:close)
306
+ expect(Puppet::Util::Ldap::Connection).to receive(:new).and_return(@conn)
307
+ expect(@ldapconn).to receive(:test)
309
308
  @manager.connect { |c| c.test }
310
309
  end
311
310
 
312
311
  it "should close the connection even if there's an exception in the passed block" do
313
- @conn.expects(:close)
312
+ expect(@conn).to receive(:close)
314
313
  expect { @manager.connect { |c| raise ArgumentError } }.to raise_error(ArgumentError)
315
314
  end
316
315
  end
317
316
 
318
317
  describe "when using ldap" do
319
318
  before do
320
- @conn = mock 'connection'
321
- @manager.stubs(:connect).yields @conn
322
- @manager.stubs(:objectclasses).returns [:oc1, :oc2]
319
+ @conn = double('connection')
320
+ allow(@manager).to receive(:connect).and_yield(@conn)
321
+ allow(@manager).to receive(:objectclasses).and_return([:oc1, :oc2])
323
322
  @manager.maps :one => :uno, :two => :dos, :three => :tres, :four => :quatro
324
323
  end
325
324
 
326
325
  describe "to create entries" do
327
326
  it "should convert the first argument to its :create method to a full dn and pass the resulting argument list to its connection" do
328
- @manager.expects(:dn).with("myname").returns "mydn"
329
- @conn.expects(:add).with { |name, attrs| name == "mydn" }
327
+ expect(@manager).to receive(:dn).with("myname").and_return("mydn")
328
+ expect(@conn).to receive(:add).with("mydn", anything)
330
329
 
331
330
  @manager.create("myname", {"attr" => "myattrs"})
332
331
  end
333
332
 
334
333
  it "should add the objectclasses to the attributes" do
335
- @manager.expects(:dn).with("myname").returns "mydn"
336
- @conn.expects(:add).with { |name, attrs| attrs["objectClass"].include?("oc1") and attrs["objectClass"].include?("oc2") }
334
+ expect(@manager).to receive(:dn).with("myname").and_return("mydn")
335
+ expect(@conn).to receive(:add) do |_, attrs|
336
+ expect(attrs["objectClass"]).to include("oc1", "oc2")
337
+ end
337
338
 
338
339
  @manager.create("myname", {:one => :testing})
339
340
  end
340
341
 
341
342
  it "should add the rdn to the attributes" do
342
- @manager.expects(:dn).with("myname").returns "mydn"
343
- @conn.expects(:add).with { |name, attrs| attrs["cn"] == %w{myname} }
343
+ expect(@manager).to receive(:dn).with("myname").and_return("mydn")
344
+ expect(@conn).to receive(:add).with(anything, hash_including("cn" => %w{myname}))
344
345
 
345
346
  @manager.create("myname", {:one => :testing})
346
347
  end
347
348
 
348
349
  it "should add 'top' to the objectclasses if it is not listed" do
349
- @manager.expects(:dn).with("myname").returns "mydn"
350
- @conn.expects(:add).with { |name, attrs| attrs["objectClass"].include?("top") }
350
+ expect(@manager).to receive(:dn).with("myname").and_return("mydn")
351
+ expect(@conn).to receive(:add) do |_, attrs|
352
+ expect(attrs["objectClass"]).to include("top")
353
+ end
351
354
 
352
355
  @manager.create("myname", {:one => :testing})
353
356
  end
354
357
 
355
358
  it "should add any generated values that are defined" do
356
- generator = stub 'generator', :source => :one, :name => "myparam"
359
+ generator = double('generator', :source => :one, :name => "myparam")
357
360
 
358
- Puppet::Util::Ldap::Generator.expects(:new).with(:myparam).returns generator
361
+ expect(Puppet::Util::Ldap::Generator).to receive(:new).with(:myparam).and_return(generator)
359
362
 
360
363
  @manager.generates(:myparam)
361
364
 
362
- @manager.stubs(:dn).with("myname").returns "mydn"
365
+ allow(@manager).to receive(:dn).with("myname").and_return("mydn")
363
366
 
364
- generator.expects(:generate).with(:testing).returns ["generated value"]
365
- @conn.expects(:add).with { |name, attrs| attrs["myparam"] == ["generated value"] }
367
+ expect(generator).to receive(:generate).with(:testing).and_return(["generated value"])
368
+ expect(@conn).to receive(:add).with(anything, hash_including("myparam" => ["generated value"]))
366
369
 
367
370
  @manager.create("myname", {:one => :testing})
368
371
  end
369
372
 
370
373
  it "should convert any generated values to arrays of strings if necessary" do
371
- generator = stub 'generator', :source => :one, :name => "myparam"
374
+ generator = double('generator', :source => :one, :name => "myparam")
372
375
 
373
- Puppet::Util::Ldap::Generator.expects(:new).with(:myparam).returns generator
376
+ expect(Puppet::Util::Ldap::Generator).to receive(:new).with(:myparam).and_return(generator)
374
377
 
375
378
  @manager.generates(:myparam)
376
379
 
377
- @manager.stubs(:dn).returns "mydn"
380
+ allow(@manager).to receive(:dn).and_return("mydn")
378
381
 
379
- generator.expects(:generate).returns :generated
380
- @conn.expects(:add).with { |name, attrs| attrs["myparam"] == ["generated"] }
382
+ expect(generator).to receive(:generate).and_return(:generated)
383
+ expect(@conn).to receive(:add).with(anything, hash_including("myparam" => ["generated"]))
381
384
 
382
385
  @manager.create("myname", {:one => :testing})
383
386
  end
@@ -385,8 +388,8 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
385
388
 
386
389
  describe "do delete entries" do
387
390
  it "should convert the first argument to its :delete method to a full dn and pass the resulting argument list to its connection" do
388
- @manager.expects(:dn).with("myname").returns "mydn"
389
- @conn.expects(:delete).with("mydn")
391
+ expect(@manager).to receive(:dn).with("myname").and_return("mydn")
392
+ expect(@conn).to receive(:delete).with("mydn")
390
393
 
391
394
  @manager.delete("myname")
392
395
  end
@@ -394,8 +397,8 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
394
397
 
395
398
  describe "to modify entries" do
396
399
  it "should convert the first argument to its :modify method to a full dn and pass the resulting argument list to its connection" do
397
- @manager.expects(:dn).with("myname").returns "mydn"
398
- @conn.expects(:modify).with("mydn", :mymods)
400
+ expect(@manager).to receive(:dn).with("myname").and_return("mydn")
401
+ expect(@conn).to receive(:modify).with("mydn", :mymods)
399
402
 
400
403
  @manager.modify("myname", :mymods)
401
404
  end
@@ -403,25 +406,25 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
403
406
 
404
407
  describe "to find a single entry" do
405
408
  it "should use the dn of the provided name as the search base, a scope of 0, and 'objectclass=*' as the filter for a search2 call" do
406
- @manager.expects(:dn).with("myname").returns "mydn"
407
- @conn.expects(:search2).with("mydn", 0, "objectclass=*")
409
+ expect(@manager).to receive(:dn).with("myname").and_return("mydn")
410
+ expect(@conn).to receive(:search2).with("mydn", 0, "objectclass=*")
408
411
 
409
412
  @manager.find("myname")
410
413
  end
411
414
 
412
415
  it "should return nil if an exception is thrown because no result is found" do
413
- @manager.expects(:dn).with("myname").returns "mydn"
414
- @conn.expects(:search2).raises LDAP::ResultError
416
+ expect(@manager).to receive(:dn).with("myname").and_return("mydn")
417
+ expect(@conn).to receive(:search2).and_raise(LDAP::ResultError)
415
418
 
416
419
  expect(@manager.find("myname")).to be_nil
417
420
  end
418
421
 
419
422
  it "should return a converted provider hash if the result is found" do
420
- @manager.expects(:dn).with("myname").returns "mydn"
423
+ expect(@manager).to receive(:dn).with("myname").and_return("mydn")
421
424
  result = {"one" => "two"}
422
- @conn.expects(:search2).yields result
425
+ expect(@conn).to receive(:search2).and_yield(result)
423
426
 
424
- @manager.expects(:entry2provider).with(result).returns "myprovider"
427
+ expect(@manager).to receive(:entry2provider).with(result).and_return("myprovider")
425
428
 
426
429
  expect(@manager.find("myname")).to eq("myprovider")
427
430
  end
@@ -429,38 +432,38 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
429
432
 
430
433
  describe "to search for multiple entries" do
431
434
  before do
432
- @manager.stubs(:filter).returns "myfilter"
435
+ allow(@manager).to receive(:filter).and_return("myfilter")
433
436
  end
434
437
 
435
438
  it "should use the manager's search base as the dn of the provided name as the search base" do
436
- @manager.expects(:base).returns "mybase"
437
- @conn.expects(:search2).with { |base, scope, filter| base == "mybase" }
439
+ expect(@manager).to receive(:base).and_return("mybase")
440
+ expect(@conn).to receive(:search2).with("mybase", anything, anything)
438
441
 
439
442
  @manager.search
440
443
  end
441
444
 
442
445
  it "should use a scope of 1" do
443
- @conn.expects(:search2).with { |base, scope, filter| scope == 1 }
446
+ expect(@conn).to receive(:search2).with(anything, 1, anything)
444
447
 
445
448
  @manager.search
446
449
  end
447
450
 
448
451
  it "should use any specified search filter" do
449
- @manager.expects(:filter).never
450
- @conn.expects(:search2).with { |base, scope, filter| filter == "boo" }
452
+ expect(@manager).not_to receive(:filter)
453
+ expect(@conn).to receive(:search2).with(anything, anything, "boo")
451
454
 
452
455
  @manager.search("boo")
453
456
  end
454
457
 
455
458
  it "should turn its objectclass list into its search filter if one is not specified" do
456
- @manager.expects(:filter).returns "yay"
457
- @conn.expects(:search2).with { |base, scope, filter| filter == "yay" }
459
+ expect(@manager).to receive(:filter).and_return("yay")
460
+ expect(@conn).to receive(:search2).with(anything, anything, "yay")
458
461
 
459
462
  @manager.search
460
463
  end
461
464
 
462
465
  it "should return nil if no result is found" do
463
- @conn.expects(:search2)
466
+ expect(@conn).to receive(:search2)
464
467
 
465
468
  expect(@manager.search).to be_nil
466
469
  end
@@ -468,9 +471,9 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
468
471
  it "should return an array of the found results converted to provider hashes" do
469
472
  # LAK: AFAICT, it's impossible to yield multiple times in an expectation.
470
473
  one = {"dn" => "cn=one,dc=madstop,dc=com", "one" => "two"}
471
- @conn.expects(:search2).yields(one)
474
+ expect(@conn).to receive(:search2).and_yield(one)
472
475
 
473
- @manager.expects(:entry2provider).with(one).returns "myprov"
476
+ expect(@manager).to receive(:entry2provider).with(one).and_return("myprov")
474
477
 
475
478
  expect(@manager.search).to eq(["myprov"])
476
479
  end
@@ -485,29 +488,29 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
485
488
 
486
489
  describe "is being updated" do
487
490
  it "should get created if the current attribute list is empty and the desired attribute list has :ensure == :present" do
488
- @manager.expects(:create)
491
+ expect(@manager).to receive(:create)
489
492
  @manager.update(@name, {}, {:ensure => :present})
490
493
  end
491
494
 
492
495
  it "should get created if the current attribute list has :ensure == :absent and the desired attribute list has :ensure == :present" do
493
- @manager.expects(:create)
496
+ expect(@manager).to receive(:create)
494
497
  @manager.update(@name, {:ensure => :absent}, {:ensure => :present})
495
498
  end
496
499
 
497
500
  it "should get deleted if the current attribute list has :ensure == :present and the desired attribute list has :ensure == :absent" do
498
- @manager.expects(:delete)
501
+ expect(@manager).to receive(:delete)
499
502
  @manager.update(@name, {:ensure => :present}, {:ensure => :absent})
500
503
  end
501
504
 
502
505
  it "should get modified if both attribute lists have :ensure == :present" do
503
- @manager.expects(:modify)
506
+ expect(@manager).to receive(:modify)
504
507
  @manager.update(@name, {:ensure => :present, :one => :two}, {:ensure => :present, :one => :three})
505
508
  end
506
509
  end
507
510
 
508
511
  describe "is being deleted" do
509
512
  it "should call the :delete method with its name and manager" do
510
- @manager.expects(:delete).with(@name)
513
+ expect(@manager).to receive(:delete).with(@name)
511
514
 
512
515
  @manager.update(@name, {}, {:ensure => :absent})
513
516
  end
@@ -520,59 +523,59 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
520
523
  end
521
524
 
522
525
  it "should call the :create method with its name" do
523
- @manager.expects(:create).with { |name, attrs| name == @name }
526
+ expect(@manager).to receive(:create).with(@name, anything)
524
527
  @manager.update(@name, @is, @should)
525
528
  end
526
529
 
527
530
  it "should call the :create method with its property hash converted to ldap attribute names" do
528
- @manager.expects(:create).with { |name, attrs| attrs["uno"] == ["yay"] }
531
+ expect(@manager).to receive(:create).with(anything, hash_including("uno" => ["yay"]))
529
532
  @manager.update(@name, @is, @should)
530
533
  end
531
534
 
532
535
  it "should convert the property names to strings" do
533
- @manager.expects(:create).with { |name, attrs| attrs["uno"] == ["yay"] }
536
+ expect(@manager).to receive(:create).with(anything, hash_including("uno" => ["yay"]))
534
537
  @manager.update(@name, @is, @should)
535
538
  end
536
539
 
537
540
  it "should convert the property values to arrays if necessary" do
538
- @manager.expects(:create).with { |name, attrs| attrs["uno"] == ["yay"] }
541
+ expect(@manager).to receive(:create).with(anything, hash_including("uno" => ["yay"]))
539
542
  @manager.update(@name, @is, @should)
540
543
  end
541
544
 
542
545
  it "should convert the property values to strings if necessary" do
543
- @manager.expects(:create).with { |name, attrs| attrs["uno"] == ["yay"] }
546
+ expect(@manager).to receive(:create).with(anything, hash_including("uno" => ["yay"]))
544
547
  @manager.update(@name, @is, @should)
545
548
  end
546
549
 
547
550
  it "should not include :ensure in the properties sent" do
548
- @manager.expects(:create).with { |*args| args[1][:ensure].nil? }
551
+ expect(@manager).to receive(:create).with(anything, hash_excluding(:ensure))
549
552
  @manager.update(@name, @is, @should)
550
553
  end
551
554
 
552
555
  it "should not include attributes set to :absent in the properties sent" do
553
- @manager.expects(:create).with { |*args| args[1][:dos].nil? }
556
+ expect(@manager).to receive(:create).with(anything, hash_excluding(:dos))
554
557
  @manager.update(@name, @is, @should)
555
558
  end
556
559
  end
557
560
 
558
561
  describe "is being modified" do
559
562
  it "should call the :modify method with its name and an array of LDAP::Mod instances" do
560
- LDAP::Mod.stubs(:new).returns "whatever"
563
+ allow(LDAP::Mod).to receive(:new).and_return("whatever")
561
564
 
562
565
  @is = {:one => :yay}
563
566
  @should = {:one => :yay, :two => :foo}
564
567
 
565
- @manager.expects(:modify).with { |name, mods| name == @name }
568
+ expect(@manager).to receive(:modify).with(@name, anything)
566
569
  @manager.update(@name, @is, @should)
567
570
  end
568
571
 
569
572
  it "should create the LDAP::Mod with the property name converted to the ldap name as a string" do
570
573
  @is = {:one => :yay}
571
574
  @should = {:one => :yay, :two => :foo}
572
- mod = mock 'module'
573
- LDAP::Mod.expects(:new).with { |form, name, value| name == "dos" }.returns mod
575
+ mod = double('module')
576
+ expect(LDAP::Mod).to receive(:new).with(anything, "dos", anything).and_return(mod)
574
577
 
575
- @manager.stubs(:modify)
578
+ allow(@manager).to receive(:modify)
576
579
 
577
580
  @manager.update(@name, @is, @should)
578
581
  end
@@ -580,10 +583,10 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
580
583
  it "should create an LDAP::Mod instance of type LDAP_MOD_ADD for each attribute being added, with the attribute value converted to a string of arrays" do
581
584
  @is = {:one => :yay}
582
585
  @should = {:one => :yay, :two => :foo}
583
- mod = mock 'module'
584
- LDAP::Mod.expects(:new).with(LDAP::LDAP_MOD_ADD, "dos", ["foo"]).returns mod
586
+ mod = double('module')
587
+ expect(LDAP::Mod).to receive(:new).with(LDAP::LDAP_MOD_ADD, "dos", ["foo"]).and_return(mod)
585
588
 
586
- @manager.stubs(:modify)
589
+ allow(@manager).to receive(:modify)
587
590
 
588
591
  @manager.update(@name, @is, @should)
589
592
  end
@@ -591,10 +594,10 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
591
594
  it "should create an LDAP::Mod instance of type LDAP_MOD_DELETE for each attribute being deleted" do
592
595
  @is = {:one => :yay, :two => :foo}
593
596
  @should = {:one => :yay, :two => :absent}
594
- mod = mock 'module'
595
- LDAP::Mod.expects(:new).with(LDAP::LDAP_MOD_DELETE, "dos", []).returns mod
597
+ mod = double('module')
598
+ expect(LDAP::Mod).to receive(:new).with(LDAP::LDAP_MOD_DELETE, "dos", []).and_return(mod)
596
599
 
597
- @manager.stubs(:modify)
600
+ allow(@manager).to receive(:modify)
598
601
 
599
602
  @manager.update(@name, @is, @should)
600
603
  end
@@ -602,10 +605,10 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
602
605
  it "should create an LDAP::Mod instance of type LDAP_MOD_REPLACE for each attribute being modified, with the attribute converted to a string of arrays" do
603
606
  @is = {:one => :yay, :two => :four}
604
607
  @should = {:one => :yay, :two => :five}
605
- mod = mock 'module'
606
- LDAP::Mod.expects(:new).with(LDAP::LDAP_MOD_REPLACE, "dos", ["five"]).returns mod
608
+ mod = double('module')
609
+ expect(LDAP::Mod).to receive(:new).with(LDAP::LDAP_MOD_REPLACE, "dos", ["five"]).and_return(mod)
607
610
 
608
- @manager.stubs(:modify)
611
+ allow(@manager).to receive(:modify)
609
612
 
610
613
  @manager.update(@name, @is, @should)
611
614
  end
@@ -613,11 +616,9 @@ describe Puppet::Util::Ldap::Manager, :if => Puppet.features.ldap? do
613
616
  it "should pass all created Mod instances to the modify method" do
614
617
  @is = {:one => :yay, :two => :foo, :three => :absent}
615
618
  @should = {:one => :yay, :two => :foe, :three => :fee, :four => :fie}
616
- LDAP::Mod.expects(:new).times(3).returns("mod1").then.returns("mod2").then.returns("mod3")
619
+ expect(LDAP::Mod).to receive(:new).exactly(3).times().and_return("mod1", "mod2", "mod3")
617
620
 
618
- @manager.expects(:modify).with do |name, mods|
619
- mods.sort == %w{mod1 mod2 mod3}.sort
620
- end
621
+ expect(@manager).to receive(:modify).with(anything, contain_exactly(*%w{mod1 mod2 mod3}))
621
622
 
622
623
  @manager.update(@name, @is, @should)
623
624
  end