puppet 5.5.12 → 5.5.13

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 (733) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +0 -5
  3. data/Gemfile.lock +11 -11
  4. data/lib/puppet/application/filebucket.rb +4 -0
  5. data/lib/puppet/configurer.rb +9 -3
  6. data/lib/puppet/indirector/request.rb +26 -15
  7. data/lib/puppet/indirector/rest.rb +16 -7
  8. data/lib/puppet/network/http/connection.rb +15 -7
  9. data/lib/puppet/transaction/event_manager.rb +1 -5
  10. data/lib/puppet/type/file/source.rb +0 -1
  11. data/lib/puppet/util/http_proxy.rb +3 -2
  12. data/lib/puppet/version.rb +1 -1
  13. data/locales/puppet.pot +108 -36
  14. data/man/man5/puppet.conf.5 +2 -2
  15. data/man/man8/puppet-agent.8 +1 -1
  16. data/man/man8/puppet-apply.8 +1 -1
  17. data/man/man8/puppet-ca.8 +1 -1
  18. data/man/man8/puppet-catalog.8 +1 -1
  19. data/man/man8/puppet-cert.8 +1 -1
  20. data/man/man8/puppet-certificate.8 +1 -1
  21. data/man/man8/puppet-certificate_request.8 +1 -1
  22. data/man/man8/puppet-certificate_revocation_list.8 +1 -1
  23. data/man/man8/puppet-config.8 +1 -1
  24. data/man/man8/puppet-describe.8 +1 -1
  25. data/man/man8/puppet-device.8 +1 -1
  26. data/man/man8/puppet-doc.8 +1 -1
  27. data/man/man8/puppet-epp.8 +1 -1
  28. data/man/man8/puppet-facts.8 +1 -1
  29. data/man/man8/puppet-filebucket.8 +1 -1
  30. data/man/man8/puppet-generate.8 +1 -1
  31. data/man/man8/puppet-help.8 +1 -1
  32. data/man/man8/puppet-key.8 +1 -1
  33. data/man/man8/puppet-lookup.8 +1 -1
  34. data/man/man8/puppet-man.8 +1 -1
  35. data/man/man8/puppet-master.8 +1 -1
  36. data/man/man8/puppet-module.8 +1 -1
  37. data/man/man8/puppet-node.8 +1 -1
  38. data/man/man8/puppet-parser.8 +1 -1
  39. data/man/man8/puppet-plugin.8 +1 -1
  40. data/man/man8/puppet-report.8 +1 -1
  41. data/man/man8/puppet-resource.8 +1 -1
  42. data/man/man8/puppet-script.8 +1 -1
  43. data/man/man8/puppet-status.8 +1 -1
  44. data/man/man8/puppet.8 +2 -2
  45. data/spec/integration/agent/logging_spec.rb +5 -7
  46. data/spec/integration/application/apply_spec.rb +28 -26
  47. data/spec/integration/application/doc_spec.rb +1 -2
  48. data/spec/integration/application/lookup_spec.rb +5 -5
  49. data/spec/integration/configurer_spec.rb +5 -6
  50. data/spec/integration/defaults_spec.rb +5 -6
  51. data/spec/integration/directory_environments_spec.rb +1 -1
  52. data/spec/integration/faces/ca_spec.rb +2 -3
  53. data/spec/integration/faces/config_spec.rb +3 -4
  54. data/spec/integration/faces/documentation_spec.rb +0 -1
  55. data/spec/integration/faces/plugin_spec.rb +1 -1
  56. data/spec/integration/file_bucket/file_spec.rb +3 -5
  57. data/spec/integration/file_serving/content_spec.rb +0 -1
  58. data/spec/integration/file_serving/fileset_spec.rb +0 -1
  59. data/spec/integration/file_serving/metadata_spec.rb +0 -1
  60. data/spec/integration/file_serving/terminus_helper_spec.rb +0 -1
  61. data/spec/integration/indirector/catalog/compiler_spec.rb +10 -11
  62. data/spec/integration/indirector/direct_file_server_spec.rb +1 -1
  63. data/spec/integration/indirector/facts/facter_spec.rb +5 -5
  64. data/spec/integration/indirector/file_content/file_server_spec.rb +7 -8
  65. data/spec/integration/indirector/file_metadata/file_server_spec.rb +7 -8
  66. data/spec/integration/indirector/node/ldap_spec.rb +2 -3
  67. data/spec/integration/network/authconfig_spec.rb +23 -24
  68. data/spec/integration/network/formats_spec.rb +0 -1
  69. data/spec/integration/network/http/api/indirected_routes_spec.rb +0 -1
  70. data/spec/integration/node/environment_spec.rb +0 -1
  71. data/spec/integration/node/facts_spec.rb +9 -10
  72. data/spec/integration/node_spec.rb +6 -7
  73. data/spec/integration/parser/catalog_spec.rb +4 -2
  74. data/spec/integration/parser/collection_spec.rb +1 -2
  75. data/spec/integration/parser/compiler_spec.rb +6 -6
  76. data/spec/integration/parser/scope_spec.rb +1 -1
  77. data/spec/integration/parser/undef_param_spec.rb +1 -1
  78. data/spec/integration/provider/cron/crontab_spec.rb +8 -10
  79. data/spec/integration/provider/mailalias/aliases_spec.rb +0 -1
  80. data/spec/integration/provider/mount_spec.rb +9 -9
  81. data/spec/integration/provider/service/init_spec.rb +4 -5
  82. data/spec/integration/provider/service/systemd_spec.rb +0 -2
  83. data/spec/integration/provider/service/windows_spec.rb +1 -2
  84. data/spec/integration/provider/ssh_authorized_key_spec.rb +6 -8
  85. data/spec/integration/provider/sshkey_spec.rb +6 -12
  86. data/spec/integration/provider/yumrepo_spec.rb +8 -12
  87. data/spec/integration/reference/providers_spec.rb +0 -1
  88. data/spec/integration/reports_spec.rb +1 -2
  89. data/spec/integration/resource/catalog_spec.rb +14 -17
  90. data/spec/integration/resource/type_collection_spec.rb +4 -5
  91. data/spec/integration/ssl/certificate_authority_spec.rb +0 -1
  92. data/spec/integration/ssl/certificate_request_spec.rb +0 -1
  93. data/spec/integration/ssl/certificate_revocation_list_spec.rb +0 -1
  94. data/spec/integration/ssl/host_spec.rb +0 -1
  95. data/spec/integration/ssl/key_spec.rb +0 -1
  96. data/spec/integration/test/test_helper_spec.rb +1 -2
  97. data/spec/integration/transaction/report_spec.rb +6 -11
  98. data/spec/integration/transaction_spec.rb +18 -19
  99. data/spec/integration/type/exec_spec.rb +0 -1
  100. data/spec/integration/type/file_spec.rb +13 -14
  101. data/spec/integration/type/nagios_spec.rb +3 -5
  102. data/spec/integration/type/package_spec.rb +19 -23
  103. data/spec/integration/type/tidy_spec.rb +1 -2
  104. data/spec/integration/type/user_spec.rb +0 -1
  105. data/spec/integration/type_spec.rb +0 -1
  106. data/spec/integration/util/autoload_spec.rb +1 -2
  107. data/spec/integration/util/rdoc/parser_spec.rb +0 -1
  108. data/spec/integration/util/settings_spec.rb +0 -1
  109. data/spec/integration/util/windows/adsi_spec.rb +3 -5
  110. data/spec/integration/util/windows/principal_spec.rb +0 -1
  111. data/spec/integration/util/windows/process_spec.rb +4 -6
  112. data/spec/integration/util/windows/registry_spec.rb +41 -51
  113. data/spec/integration/util/windows/security_spec.rb +2 -4
  114. data/spec/integration/util/windows/user_spec.rb +18 -20
  115. data/spec/integration/util_spec.rb +4 -7
  116. data/spec/lib/puppet_spec/compiler.rb +1 -1
  117. data/spec/lib/puppet_spec/files.rb +0 -1
  118. data/spec/lib/puppet_spec/module_tool/shared_functions.rb +1 -1
  119. data/spec/lib/puppet_spec/scope.rb +1 -2
  120. data/spec/shared_behaviours/all_parsedfile_providers.rb +1 -1
  121. data/spec/shared_behaviours/file_server_terminus.rb +8 -9
  122. data/spec/shared_behaviours/file_serving.rb +6 -8
  123. data/spec/shared_behaviours/file_serving_model.rb +4 -6
  124. data/spec/shared_behaviours/hiera_indirections.rb +3 -4
  125. data/spec/shared_behaviours/iterative_functions.rb +0 -1
  126. data/spec/shared_behaviours/memory_terminus.rb +2 -2
  127. data/spec/shared_examples/rhel_package_provider.rb +112 -70
  128. data/spec/spec_helper.rb +11 -2
  129. data/spec/unit/agent/disabler_spec.rb +4 -5
  130. data/spec/unit/agent/locker_spec.rb +12 -13
  131. data/spec/unit/agent_spec.rb +80 -85
  132. data/spec/unit/application/agent_spec.rb +88 -93
  133. data/spec/unit/application/apply_spec.rb +78 -79
  134. data/spec/unit/application/cert_spec.rb +42 -49
  135. data/spec/unit/application/certificate_spec.rb +2 -3
  136. data/spec/unit/application/config_spec.rb +0 -1
  137. data/spec/unit/application/describe_spec.rb +6 -7
  138. data/spec/unit/application/device_spec.rb +175 -184
  139. data/spec/unit/application/doc_spec.rb +44 -46
  140. data/spec/unit/application/face_base_spec.rb +61 -62
  141. data/spec/unit/application/facts_spec.rb +3 -4
  142. data/spec/unit/application/filebucket_spec.rb +66 -74
  143. data/spec/unit/application/indirection_base_spec.rb +8 -6
  144. data/spec/unit/application/lookup_spec.rb +26 -26
  145. data/spec/unit/application/master_spec.rb +95 -95
  146. data/spec/unit/application/resource_spec.rb +42 -48
  147. data/spec/unit/application_spec.rb +74 -84
  148. data/spec/unit/capability_spec.rb +9 -6
  149. data/spec/unit/configurer/downloader_spec.rb +20 -21
  150. data/spec/unit/configurer/fact_handler_spec.rb +2 -3
  151. data/spec/unit/configurer/plugin_handler_spec.rb +41 -8
  152. data/spec/unit/configurer_spec.rb +190 -193
  153. data/spec/unit/confine/exists_spec.rb +17 -15
  154. data/spec/unit/confine/false_spec.rb +5 -6
  155. data/spec/unit/confine/feature_spec.rb +7 -5
  156. data/spec/unit/confine/true_spec.rb +5 -6
  157. data/spec/unit/confine/variable_spec.rb +14 -15
  158. data/spec/unit/confine_collection_spec.rb +28 -29
  159. data/spec/unit/confine_spec.rb +13 -14
  160. data/spec/unit/confiner_spec.rb +10 -11
  161. data/spec/unit/context/trusted_information_spec.rb +1 -1
  162. data/spec/unit/daemon_spec.rb +34 -35
  163. data/spec/unit/data_providers/function_data_provider_spec.rb +0 -1
  164. data/spec/unit/data_providers/hiera_data_provider_spec.rb +0 -1
  165. data/spec/unit/datatypes_spec.rb +3 -4
  166. data/spec/unit/defaults_spec.rb +17 -12
  167. data/spec/unit/environments_spec.rb +7 -7
  168. data/spec/unit/etc_spec.rb +30 -32
  169. data/spec/unit/external/pson_spec.rb +0 -1
  170. data/spec/unit/face/ca_spec.rb +0 -1
  171. data/spec/unit/face/catalog_spec.rb +0 -1
  172. data/spec/unit/face/certificate_request_spec.rb +0 -1
  173. data/spec/unit/face/certificate_revocation_list_spec.rb +0 -1
  174. data/spec/unit/face/certificate_spec.rb +7 -10
  175. data/spec/unit/face/config_spec.rb +31 -35
  176. data/spec/unit/face/epp_face_spec.rb +3 -4
  177. data/spec/unit/face/facts_spec.rb +5 -6
  178. data/spec/unit/face/generate_spec.rb +4 -5
  179. data/spec/unit/face/help_spec.rb +7 -8
  180. data/spec/unit/face/key_spec.rb +0 -1
  181. data/spec/unit/face/man_spec.rb +1 -2
  182. data/spec/unit/face/module/build_spec.rb +17 -17
  183. data/spec/unit/face/module/install_spec.rb +3 -5
  184. data/spec/unit/face/module/list_spec.rb +2 -12
  185. data/spec/unit/face/module/search_spec.rb +11 -9
  186. data/spec/unit/face/module/uninstall_spec.rb +4 -8
  187. data/spec/unit/face/node_spec.rb +33 -34
  188. data/spec/unit/face/parser_spec.rb +3 -3
  189. data/spec/unit/face/plugin_spec.rb +36 -9
  190. data/spec/unit/face/status_spec.rb +0 -1
  191. data/spec/unit/file_bucket/dipper_spec.rb +24 -20
  192. data/spec/unit/file_bucket/file_spec.rb +0 -2
  193. data/spec/unit/file_serving/base_spec.rb +16 -17
  194. data/spec/unit/file_serving/configuration/parser_spec.rb +27 -28
  195. data/spec/unit/file_serving/configuration_spec.rb +63 -66
  196. data/spec/unit/file_serving/content_spec.rb +10 -11
  197. data/spec/unit/file_serving/fileset_spec.rb +63 -58
  198. data/spec/unit/file_serving/http_metadata_spec.rb +8 -7
  199. data/spec/unit/file_serving/metadata_spec.rb +36 -36
  200. data/spec/unit/file_serving/mount/file_spec.rb +31 -32
  201. data/spec/unit/file_serving/mount/locales_spec.rb +23 -24
  202. data/spec/unit/file_serving/mount/modules_spec.rb +14 -15
  203. data/spec/unit/file_serving/mount/pluginfacts_spec.rb +23 -24
  204. data/spec/unit/file_serving/mount/plugins_spec.rb +23 -24
  205. data/spec/unit/file_serving/mount/tasks_spec.rb +14 -15
  206. data/spec/unit/file_serving/mount_spec.rb +0 -1
  207. data/spec/unit/file_serving/terminus_helper_spec.rb +37 -42
  208. data/spec/unit/file_serving/terminus_selector_spec.rb +12 -13
  209. data/spec/unit/file_system/uniquefile_spec.rb +4 -4
  210. data/spec/unit/file_system_spec.rb +2 -2
  211. data/spec/unit/forge/errors_spec.rb +1 -1
  212. data/spec/unit/forge/forge_spec.rb +13 -14
  213. data/spec/unit/forge/module_release_spec.rb +18 -18
  214. data/spec/unit/forge/repository_spec.rb +29 -30
  215. data/spec/unit/forge_spec.rb +15 -11
  216. data/spec/unit/functions/binary_file_spec.rb +3 -3
  217. data/spec/unit/functions/contain_spec.rb +0 -2
  218. data/spec/unit/functions/defined_spec.rb +0 -1
  219. data/spec/unit/functions/epp_spec.rb +2 -2
  220. data/spec/unit/functions/find_file_spec.rb +7 -7
  221. data/spec/unit/functions/include_spec.rb +0 -4
  222. data/spec/unit/functions/lookup_fixture_spec.rb +0 -1
  223. data/spec/unit/functions/lookup_spec.rb +1 -2
  224. data/spec/unit/functions/module_directory_spec.rb +12 -12
  225. data/spec/unit/functions/require_spec.rb +0 -3
  226. data/spec/unit/functions/shared.rb +5 -8
  227. data/spec/unit/functions/versioncmp_spec.rb +1 -2
  228. data/spec/unit/functions4_spec.rb +7 -8
  229. data/spec/unit/gettext/config_spec.rb +4 -4
  230. data/spec/unit/gettext/module_loading_spec.rb +7 -7
  231. data/spec/unit/graph/rb_tree_map_spec.rb +0 -2
  232. data/spec/unit/graph/relationship_graph_spec.rb +1 -2
  233. data/spec/unit/graph/simple_graph_spec.rb +8 -9
  234. data/spec/unit/hiera_puppet_spec.rb +20 -20
  235. data/spec/unit/indirector/catalog/compiler_spec.rb +147 -149
  236. data/spec/unit/indirector/catalog/json_spec.rb +1 -2
  237. data/spec/unit/indirector/catalog/msgpack_spec.rb +0 -1
  238. data/spec/unit/indirector/catalog/rest_spec.rb +0 -1
  239. data/spec/unit/indirector/catalog/store_configs_spec.rb +0 -1
  240. data/spec/unit/indirector/catalog/yaml_spec.rb +0 -1
  241. data/spec/unit/indirector/certificate/ca_spec.rb +2 -4
  242. data/spec/unit/indirector/certificate/disabled_ca_spec.rb +1 -2
  243. data/spec/unit/indirector/certificate/file_spec.rb +2 -3
  244. data/spec/unit/indirector/certificate/rest_spec.rb +8 -10
  245. data/spec/unit/indirector/certificate_request/ca_spec.rb +0 -1
  246. data/spec/unit/indirector/certificate_request/disabled_ca_spec.rb +1 -2
  247. data/spec/unit/indirector/certificate_request/file_spec.rb +0 -1
  248. data/spec/unit/indirector/certificate_request/rest_spec.rb +0 -1
  249. data/spec/unit/indirector/certificate_revocation_list/ca_spec.rb +1 -2
  250. data/spec/unit/indirector/certificate_revocation_list/disabled_ca_spec.rb +1 -2
  251. data/spec/unit/indirector/certificate_revocation_list/file_spec.rb +1 -2
  252. data/spec/unit/indirector/certificate_revocation_list/rest_spec.rb +2 -3
  253. data/spec/unit/indirector/certificate_status/file_spec.rb +2 -3
  254. data/spec/unit/indirector/certificate_status/rest_spec.rb +0 -1
  255. data/spec/unit/indirector/code_spec.rb +5 -6
  256. data/spec/unit/indirector/direct_file_server_spec.rb +33 -27
  257. data/spec/unit/indirector/envelope_spec.rb +1 -2
  258. data/spec/unit/indirector/exec_spec.rb +15 -14
  259. data/spec/unit/indirector/face_spec.rb +9 -9
  260. data/spec/unit/indirector/facts/facter_spec.rb +37 -43
  261. data/spec/unit/indirector/facts/network_device_spec.rb +8 -9
  262. data/spec/unit/indirector/facts/rest_spec.rb +7 -8
  263. data/spec/unit/indirector/facts/store_configs_spec.rb +0 -1
  264. data/spec/unit/indirector/facts/yaml_spec.rb +2 -4
  265. data/spec/unit/indirector/file_bucket_file/file_spec.rb +3 -4
  266. data/spec/unit/indirector/file_bucket_file/rest_spec.rb +0 -1
  267. data/spec/unit/indirector/file_bucket_file/selector_spec.rb +4 -5
  268. data/spec/unit/indirector/file_content/file_server_spec.rb +0 -1
  269. data/spec/unit/indirector/file_content/file_spec.rb +0 -1
  270. data/spec/unit/indirector/file_content/rest_spec.rb +0 -1
  271. data/spec/unit/indirector/file_content/selector_spec.rb +0 -1
  272. data/spec/unit/indirector/file_metadata/file_server_spec.rb +0 -1
  273. data/spec/unit/indirector/file_metadata/file_spec.rb +12 -13
  274. data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -1
  275. data/spec/unit/indirector/file_metadata/selector_spec.rb +0 -1
  276. data/spec/unit/indirector/file_server_spec.rb +99 -93
  277. data/spec/unit/indirector/indirection_spec.rb +242 -226
  278. data/spec/unit/indirector/json_spec.rb +7 -9
  279. data/spec/unit/indirector/key/ca_spec.rb +2 -3
  280. data/spec/unit/indirector/key/disabled_ca_spec.rb +1 -2
  281. data/spec/unit/indirector/key/file_spec.rb +25 -26
  282. data/spec/unit/indirector/ldap_spec.rb +34 -41
  283. data/spec/unit/indirector/memory_spec.rb +6 -7
  284. data/spec/unit/indirector/msgpack_spec.rb +7 -9
  285. data/spec/unit/indirector/node/exec_spec.rb +6 -6
  286. data/spec/unit/indirector/node/ldap_spec.rb +74 -76
  287. data/spec/unit/indirector/node/memory_spec.rb +2 -4
  288. data/spec/unit/indirector/node/msgpack_spec.rb +0 -1
  289. data/spec/unit/indirector/node/plain_spec.rb +2 -4
  290. data/spec/unit/indirector/node/rest_spec.rb +0 -1
  291. data/spec/unit/indirector/node/store_configs_spec.rb +0 -1
  292. data/spec/unit/indirector/node/write_only_yaml_spec.rb +1 -2
  293. data/spec/unit/indirector/node/yaml_spec.rb +0 -1
  294. data/spec/unit/indirector/none_spec.rb +5 -5
  295. data/spec/unit/indirector/plain_spec.rb +7 -8
  296. data/spec/unit/indirector/report/msgpack_spec.rb +0 -1
  297. data/spec/unit/indirector/report/processor_spec.rb +21 -22
  298. data/spec/unit/indirector/report/rest_spec.rb +11 -12
  299. data/spec/unit/indirector/report/yaml_spec.rb +0 -1
  300. data/spec/unit/indirector/request_spec.rb +11 -12
  301. data/spec/unit/indirector/resource/ral_spec.rb +47 -54
  302. data/spec/unit/indirector/resource/store_configs_spec.rb +0 -1
  303. data/spec/unit/indirector/rest_spec.rb +113 -110
  304. data/spec/unit/indirector/ssl_file_spec.rb +74 -77
  305. data/spec/unit/indirector/status/local_spec.rb +0 -1
  306. data/spec/unit/indirector/status/rest_spec.rb +0 -1
  307. data/spec/unit/indirector/store_configs_spec.rb +0 -1
  308. data/spec/unit/indirector/terminus_spec.rb +31 -29
  309. data/spec/unit/indirector/yaml_spec.rb +33 -32
  310. data/spec/unit/indirector_spec.rb +1 -2
  311. data/spec/unit/info_service_spec.rb +3 -1
  312. data/spec/unit/interface/action_builder_spec.rb +0 -1
  313. data/spec/unit/interface/action_manager_spec.rb +0 -1
  314. data/spec/unit/interface/action_spec.rb +2 -3
  315. data/spec/unit/interface/documentation_spec.rb +0 -1
  316. data/spec/unit/interface/face_collection_spec.rb +19 -12
  317. data/spec/unit/interface_spec.rb +3 -3
  318. data/spec/unit/man_spec.rb +3 -4
  319. data/spec/unit/module_spec.rb +46 -51
  320. data/spec/unit/module_tool/applications/builder_spec.rb +5 -5
  321. data/spec/unit/module_tool/applications/installer_spec.rb +10 -11
  322. data/spec/unit/module_tool/applications/searcher_spec.rb +3 -3
  323. data/spec/unit/module_tool/applications/uninstaller_spec.rb +1 -2
  324. data/spec/unit/module_tool/applications/unpacker_spec.rb +13 -13
  325. data/spec/unit/module_tool/applications/upgrader_spec.rb +5 -5
  326. data/spec/unit/module_tool/install_directory_spec.rb +8 -8
  327. data/spec/unit/module_tool/installed_modules_spec.rb +3 -3
  328. data/spec/unit/module_tool/tar/gnu_spec.rb +6 -6
  329. data/spec/unit/module_tool/tar/mini_spec.rb +12 -12
  330. data/spec/unit/module_tool/tar_spec.rb +12 -13
  331. data/spec/unit/module_tool_spec.rb +7 -12
  332. data/spec/unit/network/auth_config_parser_spec.rb +11 -13
  333. data/spec/unit/network/authconfig_spec.rb +17 -18
  334. data/spec/unit/network/authorization_spec.rb +4 -5
  335. data/spec/unit/network/authstore_spec.rb +0 -1
  336. data/spec/unit/network/format_handler_spec.rb +0 -1
  337. data/spec/unit/network/format_spec.rb +9 -10
  338. data/spec/unit/network/format_support_spec.rb +28 -29
  339. data/spec/unit/network/formats_spec.rb +4 -5
  340. data/spec/unit/network/http/api/ca/v1_spec.rb +1 -1
  341. data/spec/unit/network/http/api/indirected_routes_spec.rb +22 -29
  342. data/spec/unit/network/http/api/master/v3/authorization_spec.rb +2 -2
  343. data/spec/unit/network/http/api/master/v3/environment_spec.rb +1 -1
  344. data/spec/unit/network/http/api/master/v3/environments_spec.rb +6 -7
  345. data/spec/unit/network/http/api_spec.rb +1 -3
  346. data/spec/unit/network/http/compression_spec.rb +21 -22
  347. data/spec/unit/network/http/connection_spec.rb +39 -36
  348. data/spec/unit/network/http/factory_spec.rb +5 -6
  349. data/spec/unit/network/http/handler_spec.rb +9 -18
  350. data/spec/unit/network/http/nocache_pool_spec.rb +6 -7
  351. data/spec/unit/network/http/pool_spec.rb +28 -29
  352. data/spec/unit/network/http/rack/rest_spec.rb +24 -27
  353. data/spec/unit/network/http/rack_spec.rb +5 -6
  354. data/spec/unit/network/http/request_spec.rb +0 -2
  355. data/spec/unit/network/http/response_spec.rb +11 -13
  356. data/spec/unit/network/http/route_spec.rb +0 -1
  357. data/spec/unit/network/http/session_spec.rb +1 -2
  358. data/spec/unit/network/http/site_spec.rb +0 -1
  359. data/spec/unit/network/http/webrick/rest_spec.rb +40 -41
  360. data/spec/unit/network/http/webrick_spec.rb +49 -52
  361. data/spec/unit/network/http_pool_spec.rb +18 -9
  362. data/spec/unit/network/http_spec.rb +0 -1
  363. data/spec/unit/network/resolver_spec.rb +16 -17
  364. data/spec/unit/network/rights_spec.rb +52 -53
  365. data/spec/unit/network/server_spec.rb +12 -13
  366. data/spec/unit/node/environment_spec.rb +16 -14
  367. data/spec/unit/node/facts_spec.rb +5 -7
  368. data/spec/unit/node_spec.rb +4 -10
  369. data/spec/unit/other/selinux_spec.rb +2 -3
  370. data/spec/unit/parameter/boolean_spec.rb +1 -2
  371. data/spec/unit/parameter/package_options_spec.rb +1 -2
  372. data/spec/unit/parameter/path_spec.rb +0 -1
  373. data/spec/unit/parameter/value_collection_spec.rb +0 -1
  374. data/spec/unit/parameter/value_spec.rb +0 -1
  375. data/spec/unit/parameter_spec.rb +9 -9
  376. data/spec/unit/parser/ast/block_expression_spec.rb +6 -8
  377. data/spec/unit/parser/ast/leaf_spec.rb +20 -21
  378. data/spec/unit/parser/compiler_spec.rb +84 -96
  379. data/spec/unit/parser/environment_compiler_spec.rb +11 -9
  380. data/spec/unit/parser/files_spec.rb +0 -1
  381. data/spec/unit/parser/functions/create_resources_spec.rb +1 -1
  382. data/spec/unit/parser/functions/digest_spec.rb +0 -1
  383. data/spec/unit/parser/functions/fail_spec.rb +1 -2
  384. data/spec/unit/parser/functions/file_spec.rb +13 -14
  385. data/spec/unit/parser/functions/fqdn_rand_spec.rb +5 -6
  386. data/spec/unit/parser/functions/generate_spec.rb +7 -8
  387. data/spec/unit/parser/functions/inline_template_spec.rb +0 -1
  388. data/spec/unit/parser/functions/regsubst_spec.rb +0 -1
  389. data/spec/unit/parser/functions/scanf_spec.rb +0 -1
  390. data/spec/unit/parser/functions/shellquote_spec.rb +0 -1
  391. data/spec/unit/parser/functions/split_spec.rb +0 -1
  392. data/spec/unit/parser/functions/sprintf_spec.rb +0 -1
  393. data/spec/unit/parser/functions/tag_spec.rb +1 -2
  394. data/spec/unit/parser/functions/tagged_spec.rb +2 -3
  395. data/spec/unit/parser/functions/template_spec.rb +13 -13
  396. data/spec/unit/parser/functions/versioncmp_spec.rb +1 -2
  397. data/spec/unit/parser/functions_spec.rb +3 -4
  398. data/spec/unit/parser/relationship_spec.rb +0 -1
  399. data/spec/unit/parser/resource_spec.rb +42 -42
  400. data/spec/unit/parser/scope_spec.rb +39 -35
  401. data/spec/unit/parser/templatewrapper_spec.rb +11 -12
  402. data/spec/unit/parser/type_loader_spec.rb +17 -19
  403. data/spec/unit/pops/adaptable_spec.rb +0 -1
  404. data/spec/unit/pops/benchmark_spec.rb +0 -1
  405. data/spec/unit/pops/evaluator/access_ops_spec.rb +0 -1
  406. data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +0 -1
  407. data/spec/unit/pops/evaluator/basic_expressions_spec.rb +0 -1
  408. data/spec/unit/pops/evaluator/collections_ops_spec.rb +0 -1
  409. data/spec/unit/pops/evaluator/comparison_ops_spec.rb +0 -1
  410. data/spec/unit/pops/evaluator/conditionals_spec.rb +0 -1
  411. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +6 -6
  412. data/spec/unit/pops/evaluator/logical_ops_spec.rb +0 -1
  413. data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +0 -1
  414. data/spec/unit/pops/evaluator/string_interpolation_spec.rb +0 -1
  415. data/spec/unit/pops/evaluator/variables_spec.rb +0 -1
  416. data/spec/unit/pops/factory_spec.rb +3 -4
  417. data/spec/unit/pops/issues_spec.rb +19 -20
  418. data/spec/unit/pops/loaders/loader_spec.rb +8 -4
  419. data/spec/unit/pops/loaders/loaders_spec.rb +30 -27
  420. data/spec/unit/pops/lookup/context_spec.rb +0 -1
  421. data/spec/unit/pops/lookup/interpolation_spec.rb +2 -3
  422. data/spec/unit/pops/merge_strategy_spec.rb +0 -1
  423. data/spec/unit/pops/migration_spec.rb +3 -5
  424. data/spec/unit/pops/model/model_spec.rb +0 -1
  425. data/spec/unit/pops/model/pn_transformer_spec.rb +0 -1
  426. data/spec/unit/pops/parser/locator_spec.rb +3 -6
  427. data/spec/unit/pops/parser/parse_application_spec.rb +0 -1
  428. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +0 -1
  429. data/spec/unit/pops/parser/parse_calls_spec.rb +0 -1
  430. data/spec/unit/pops/parser/parse_capabilities_spec.rb +0 -1
  431. data/spec/unit/pops/parser/parse_conditionals_spec.rb +0 -1
  432. data/spec/unit/pops/parser/parse_containers_spec.rb +0 -1
  433. data/spec/unit/pops/parser/parse_plan_spec.rb +0 -1
  434. data/spec/unit/pops/parser/parse_resource_spec.rb +0 -1
  435. data/spec/unit/pops/parser/parse_site_spec.rb +0 -1
  436. data/spec/unit/pops/parser/pn_parser_spec.rb +0 -1
  437. data/spec/unit/pops/pn_spec.rb +0 -1
  438. data/spec/unit/pops/resource/resource_type_impl_spec.rb +0 -1
  439. data/spec/unit/pops/serialization/serialization_spec.rb +1 -1
  440. data/spec/unit/pops/serialization/to_from_hr_spec.rb +1 -1
  441. data/spec/unit/pops/types/recursion_guard_spec.rb +10 -10
  442. data/spec/unit/pops/types/ruby_generator_spec.rb +2 -2
  443. data/spec/unit/pops/types/type_asserter_spec.rb +2 -2
  444. data/spec/unit/pops/types/type_calculator_spec.rb +36 -36
  445. data/spec/unit/pops/types/type_parser_spec.rb +13 -13
  446. data/spec/unit/pops/validator/validator_spec.rb +1 -2
  447. data/spec/unit/pops/visitor_spec.rb +0 -1
  448. data/spec/unit/property/boolean_spec.rb +1 -1
  449. data/spec/unit/property/ensure_spec.rb +0 -1
  450. data/spec/unit/property/keyvalue_spec.rb +32 -34
  451. data/spec/unit/property/list_spec.rb +26 -27
  452. data/spec/unit/property/ordered_list_spec.rb +10 -14
  453. data/spec/unit/property_spec.rb +42 -43
  454. data/spec/unit/provider/aix_object_spec.rb +47 -45
  455. data/spec/unit/provider/augeas/augeas_spec.rb +192 -192
  456. data/spec/unit/provider/cisco_spec.rb +1 -2
  457. data/spec/unit/provider/command_spec.rb +9 -9
  458. data/spec/unit/provider/cron/crontab_spec.rb +10 -11
  459. data/spec/unit/provider/cron/parsed_spec.rb +22 -24
  460. data/spec/unit/provider/exec/posix_spec.rb +6 -7
  461. data/spec/unit/provider/exec/shell_spec.rb +0 -1
  462. data/spec/unit/provider/exec/windows_spec.rb +2 -4
  463. data/spec/unit/provider/exec_spec.rb +0 -1
  464. data/spec/unit/provider/file/posix_spec.rb +22 -24
  465. data/spec/unit/provider/file/windows_spec.rb +15 -17
  466. data/spec/unit/provider/group/aix_spec.rb +3 -2
  467. data/spec/unit/provider/group/groupadd_spec.rb +30 -26
  468. data/spec/unit/provider/group/ldap_spec.rb +18 -18
  469. data/spec/unit/provider/group/pw_spec.rb +11 -11
  470. data/spec/unit/provider/group/windows_adsi_spec.rb +54 -54
  471. data/spec/unit/provider/host/parsed_spec.rb +6 -6
  472. data/spec/unit/provider/interface/cisco_spec.rb +20 -24
  473. data/spec/unit/provider/ldap_spec.rb +61 -62
  474. data/spec/unit/provider/macauthorization_spec.rb +26 -47
  475. data/spec/unit/provider/mcx/mcxcontent_spec.rb +45 -47
  476. data/spec/unit/provider/mount/parsed_spec.rb +18 -24
  477. data/spec/unit/provider/mount_spec.rb +57 -66
  478. data/spec/unit/provider/naginator_spec.rb +13 -14
  479. data/spec/unit/provider/nameservice/directoryservice_spec.rb +35 -36
  480. data/spec/unit/provider/nameservice_spec.rb +38 -40
  481. data/spec/unit/provider/network_device_spec.rb +28 -28
  482. data/spec/unit/provider/package/aix_spec.rb +15 -15
  483. data/spec/unit/provider/package/appdmg_spec.rb +13 -13
  484. data/spec/unit/provider/package/apt_spec.rb +44 -27
  485. data/spec/unit/provider/package/aptitude_spec.rb +6 -7
  486. data/spec/unit/provider/package/aptrpm_spec.rb +7 -12
  487. data/spec/unit/provider/package/base_spec.rb +4 -4
  488. data/spec/unit/provider/package/dnf_spec.rb +14 -16
  489. data/spec/unit/provider/package/dpkg_spec.rb +52 -52
  490. data/spec/unit/provider/package/freebsd_spec.rb +11 -11
  491. data/spec/unit/provider/package/gem_spec.rb +51 -43
  492. data/spec/unit/provider/package/hpux_spec.rb +8 -8
  493. data/spec/unit/provider/package/macports_spec.rb +46 -42
  494. data/spec/unit/provider/package/nim_spec.rb +30 -39
  495. data/spec/unit/provider/package/openbsd_spec.rb +36 -39
  496. data/spec/unit/provider/package/opkg_spec.rb +23 -26
  497. data/spec/unit/provider/package/pacman_spec.rb +97 -118
  498. data/spec/unit/provider/package/pip_spec.rb +69 -71
  499. data/spec/unit/provider/package/pkg_spec.rb +109 -109
  500. data/spec/unit/provider/package/pkgdmg_spec.rb +65 -63
  501. data/spec/unit/provider/package/pkgin_spec.rb +10 -8
  502. data/spec/unit/provider/package/pkgng_spec.rb +17 -18
  503. data/spec/unit/provider/package/pkgutil_spec.rb +45 -49
  504. data/spec/unit/provider/package/portage_spec.rb +70 -74
  505. data/spec/unit/provider/package/puppet_gem_spec.rb +28 -8
  506. data/spec/unit/provider/package/rpm_spec.rb +53 -64
  507. data/spec/unit/provider/package/sun_spec.rb +16 -18
  508. data/spec/unit/provider/package/tdnf_spec.rb +2 -2
  509. data/spec/unit/provider/package/up2date_spec.rb +2 -4
  510. data/spec/unit/provider/package/urpmi_spec.rb +15 -17
  511. data/spec/unit/provider/package/windows/exe_package_spec.rb +12 -15
  512. data/spec/unit/provider/package/windows/msi_package_spec.rb +19 -22
  513. data/spec/unit/provider/package/windows/package_spec.rb +37 -42
  514. data/spec/unit/provider/package/windows_spec.rb +36 -32
  515. data/spec/unit/provider/package/yum_spec.rb +4 -4
  516. data/spec/unit/provider/package/zypper_spec.rb +87 -87
  517. data/spec/unit/provider/parsedfile_spec.rb +44 -45
  518. data/spec/unit/provider/scheduled_task/win32_taskscheduler_spec.rb +120 -130
  519. data/spec/unit/provider/selboolean_spec.rb +9 -11
  520. data/spec/unit/provider/selmodule_spec.rb +20 -22
  521. data/spec/unit/provider/service/base_spec.rb +4 -5
  522. data/spec/unit/provider/service/bsd_spec.rb +27 -29
  523. data/spec/unit/provider/service/daemontools_spec.rb +35 -35
  524. data/spec/unit/provider/service/debian_spec.rb +37 -37
  525. data/spec/unit/provider/service/freebsd_spec.rb +18 -18
  526. data/spec/unit/provider/service/gentoo_spec.rb +50 -56
  527. data/spec/unit/provider/service/init_spec.rb +55 -55
  528. data/spec/unit/provider/service/launchd_spec.rb +138 -116
  529. data/spec/unit/provider/service/openbsd_spec.rb +50 -50
  530. data/spec/unit/provider/service/openrc_spec.rb +43 -46
  531. data/spec/unit/provider/service/openwrt_spec.rb +26 -32
  532. data/spec/unit/provider/service/rcng_spec.rb +14 -14
  533. data/spec/unit/provider/service/redhat_spec.rb +45 -43
  534. data/spec/unit/provider/service/runit_spec.rb +29 -27
  535. data/spec/unit/provider/service/smf_spec.rb +74 -66
  536. data/spec/unit/provider/service/src_spec.rb +46 -47
  537. data/spec/unit/provider/service/systemd_spec.rb +93 -98
  538. data/spec/unit/provider/service/upstart_spec.rb +74 -72
  539. data/spec/unit/provider/service/windows_spec.rb +33 -41
  540. data/spec/unit/provider/ssh_authorized_key/parsed_spec.rb +54 -68
  541. data/spec/unit/provider/sshkey/parsed_spec.rb +7 -8
  542. data/spec/unit/provider/user/aix_spec.rb +31 -31
  543. data/spec/unit/provider/user/directoryservice_spec.rb +109 -114
  544. data/spec/unit/provider/user/hpux_spec.rb +15 -15
  545. data/spec/unit/provider/user/ldap_spec.rb +57 -57
  546. data/spec/unit/provider/user/openbsd_spec.rb +10 -12
  547. data/spec/unit/provider/user/pw_spec.rb +37 -35
  548. data/spec/unit/provider/user/user_role_add_spec.rb +93 -93
  549. data/spec/unit/provider/user/useradd_spec.rb +93 -92
  550. data/spec/unit/provider/user/windows_adsi_spec.rb +59 -60
  551. data/spec/unit/provider/vlan/cisco_spec.rb +10 -12
  552. data/spec/unit/provider/yumrepo/inifile_spec.rb +75 -80
  553. data/spec/unit/provider/zfs/zfs_spec.rb +26 -21
  554. data/spec/unit/provider/zone/solaris_spec.rb +56 -42
  555. data/spec/unit/provider/zpool/zpool_spec.rb +19 -20
  556. data/spec/unit/provider_spec.rb +29 -29
  557. data/spec/unit/puppet_pal_2pec.rb +4 -5
  558. data/spec/unit/puppet_pal_spec.rb +0 -1
  559. data/spec/unit/puppet_spec.rb +7 -8
  560. data/spec/unit/relationship_spec.rb +0 -1
  561. data/spec/unit/reports/http_spec.rb +21 -23
  562. data/spec/unit/reports/store_spec.rb +3 -4
  563. data/spec/unit/reports_spec.rb +12 -14
  564. data/spec/unit/resource/capability_finder_spec.rb +18 -16
  565. data/spec/unit/resource/catalog_spec.rb +72 -68
  566. data/spec/unit/resource/status_spec.rb +6 -8
  567. data/spec/unit/resource/type_collection_spec.rb +17 -18
  568. data/spec/unit/resource/type_spec.rb +34 -35
  569. data/spec/unit/resource_spec.rb +36 -32
  570. data/spec/unit/scheduler/job_spec.rb +0 -1
  571. data/spec/unit/scheduler/scheduler_spec.rb +0 -1
  572. data/spec/unit/scheduler/splay_job_spec.rb +1 -2
  573. data/spec/unit/settings/array_setting_spec.rb +1 -1
  574. data/spec/unit/settings/autosign_setting_spec.rb +9 -9
  575. data/spec/unit/settings/certificate_revocation_setting_spec.rb +1 -1
  576. data/spec/unit/settings/config_file_spec.rb +0 -1
  577. data/spec/unit/settings/directory_setting_spec.rb +2 -7
  578. data/spec/unit/settings/duration_setting_spec.rb +1 -2
  579. data/spec/unit/settings/enum_setting_spec.rb +1 -1
  580. data/spec/unit/settings/environment_conf_spec.rb +4 -6
  581. data/spec/unit/settings/file_setting_spec.rb +44 -46
  582. data/spec/unit/settings/path_setting_spec.rb +1 -2
  583. data/spec/unit/settings/priority_setting_spec.rb +1 -2
  584. data/spec/unit/settings/string_setting_spec.rb +14 -15
  585. data/spec/unit/settings/terminus_setting_spec.rb +1 -2
  586. data/spec/unit/settings/value_translator_spec.rb +0 -1
  587. data/spec/unit/settings_spec.rb +226 -233
  588. data/spec/unit/ssl/base_spec.rb +14 -15
  589. data/spec/unit/ssl/certificate_authority/autosign_command_spec.rb +6 -7
  590. data/spec/unit/ssl/certificate_authority/interface_spec.rb +116 -113
  591. data/spec/unit/ssl/certificate_authority_spec.rb +258 -268
  592. data/spec/unit/ssl/certificate_factory_spec.rb +3 -5
  593. data/spec/unit/ssl/certificate_request_attributes_spec.rb +2 -3
  594. data/spec/unit/ssl/certificate_request_spec.rb +66 -67
  595. data/spec/unit/ssl/certificate_revocation_list_spec.rb +3 -4
  596. data/spec/unit/ssl/certificate_spec.rb +23 -25
  597. data/spec/unit/ssl/configuration_spec.rb +1 -4
  598. data/spec/unit/ssl/digest_spec.rb +0 -1
  599. data/spec/unit/ssl/host_spec.rb +217 -188
  600. data/spec/unit/ssl/inventory_spec.rb +25 -21
  601. data/spec/unit/ssl/key_spec.rb +30 -31
  602. data/spec/unit/ssl/validator_spec.rb +40 -40
  603. data/spec/unit/task_spec.rb +6 -7
  604. data/spec/unit/transaction/additional_resource_generator_spec.rb +6 -5
  605. data/spec/unit/transaction/event_manager_spec.rb +88 -88
  606. data/spec/unit/transaction/event_spec.rb +16 -15
  607. data/spec/unit/transaction/persistence_spec.rb +16 -17
  608. data/spec/unit/transaction/report_spec.rb +11 -12
  609. data/spec/unit/transaction/resource_harness_spec.rb +28 -33
  610. data/spec/unit/transaction_spec.rb +98 -100
  611. data/spec/unit/type/augeas_spec.rb +11 -10
  612. data/spec/unit/type/component_spec.rb +0 -1
  613. data/spec/unit/type/computer_spec.rb +7 -10
  614. data/spec/unit/type/cron_spec.rb +3 -7
  615. data/spec/unit/type/exec_spec.rb +60 -56
  616. data/spec/unit/type/file/checksum_spec.rb +9 -10
  617. data/spec/unit/type/file/checksum_value_spec.rb +31 -32
  618. data/spec/unit/type/file/content_spec.rb +58 -61
  619. data/spec/unit/type/file/ctime_spec.rb +0 -1
  620. data/spec/unit/type/file/ensure_spec.rb +12 -13
  621. data/spec/unit/type/file/group_spec.rb +5 -7
  622. data/spec/unit/type/file/mode_spec.rb +4 -6
  623. data/spec/unit/type/file/mtime_spec.rb +0 -1
  624. data/spec/unit/type/file/owner_spec.rb +6 -8
  625. data/spec/unit/type/file/selinux_spec.rb +17 -19
  626. data/spec/unit/type/file/source_spec.rb +104 -101
  627. data/spec/unit/type/file/type_spec.rb +0 -1
  628. data/spec/unit/type/file_spec.rb +195 -185
  629. data/spec/unit/type/filebucket_spec.rb +4 -5
  630. data/spec/unit/type/group_spec.rb +6 -8
  631. data/spec/unit/type/host_spec.rb +2 -3
  632. data/spec/unit/type/interface_spec.rb +2 -3
  633. data/spec/unit/type/k5login_spec.rb +3 -4
  634. data/spec/unit/type/macauthorization_spec.rb +6 -8
  635. data/spec/unit/type/mailalias_spec.rb +2 -3
  636. data/spec/unit/type/maillist_spec.rb +6 -9
  637. data/spec/unit/type/mcx_spec.rb +4 -8
  638. data/spec/unit/type/mount_spec.rb +26 -38
  639. data/spec/unit/type/nagios_spec.rb +0 -1
  640. data/spec/unit/type/noop_metaparam_spec.rb +1 -2
  641. data/spec/unit/type/package/package_settings_spec.rb +44 -23
  642. data/spec/unit/type/package_spec.rb +53 -54
  643. data/spec/unit/type/resources_spec.rb +86 -88
  644. data/spec/unit/type/schedule_spec.rb +24 -26
  645. data/spec/unit/type/scheduled_task_spec.rb +1 -2
  646. data/spec/unit/type/selboolean_spec.rb +5 -6
  647. data/spec/unit/type/selmodule_spec.rb +0 -1
  648. data/spec/unit/type/service_spec.rb +47 -47
  649. data/spec/unit/type/ssh_authorized_key_spec.rb +5 -35
  650. data/spec/unit/type/sshkey_spec.rb +0 -2
  651. data/spec/unit/type/stage_spec.rb +0 -1
  652. data/spec/unit/type/tidy_spec.rb +61 -62
  653. data/spec/unit/type/user_spec.rb +41 -27
  654. data/spec/unit/type/vlan_spec.rb +2 -4
  655. data/spec/unit/type/whit_spec.rb +0 -1
  656. data/spec/unit/type/zfs_spec.rb +6 -7
  657. data/spec/unit/type/zone_spec.rb +14 -4
  658. data/spec/unit/type/zpool_spec.rb +4 -5
  659. data/spec/unit/type_spec.rb +54 -53
  660. data/spec/unit/util/at_fork_spec.rb +18 -19
  661. data/spec/unit/util/autoload_spec.rb +53 -54
  662. data/spec/unit/util/backups_spec.rb +34 -35
  663. data/spec/unit/util/character_encoding_spec.rb +8 -8
  664. data/spec/unit/util/checksums_spec.rb +38 -39
  665. data/spec/unit/util/colors_spec.rb +1 -2
  666. data/spec/unit/util/command_line_spec.rb +24 -25
  667. data/spec/unit/util/constant_inflector_spec.rb +0 -1
  668. data/spec/unit/util/diff_spec.rb +7 -8
  669. data/spec/unit/util/errors_spec.rb +0 -1
  670. data/spec/unit/util/execution_spec.rb +187 -162
  671. data/spec/unit/util/execution_stub_spec.rb +0 -1
  672. data/spec/unit/util/feature_spec.rb +13 -13
  673. data/spec/unit/util/filetype_spec.rb +49 -49
  674. data/spec/unit/util/http_proxy_spec.rb +12 -12
  675. data/spec/unit/util/inifile_spec.rb +26 -31
  676. data/spec/unit/util/json_lockfile_spec.rb +3 -5
  677. data/spec/unit/util/ldap/connection_spec.rb +26 -25
  678. data/spec/unit/util/ldap/generator_spec.rb +0 -1
  679. data/spec/unit/util/ldap/manager_spec.rb +102 -101
  680. data/spec/unit/util/lockfile_spec.rb +0 -1
  681. data/spec/unit/util/log/destinations_spec.rb +30 -33
  682. data/spec/unit/util/log_spec.rb +35 -36
  683. data/spec/unit/util/logging_spec.rb +58 -66
  684. data/spec/unit/util/metric_spec.rb +0 -1
  685. data/spec/unit/util/monkey_patches_spec.rb +7 -9
  686. data/spec/unit/util/multi_match_spec.rb +0 -1
  687. data/spec/unit/util/nagios_maker_spec.rb +35 -36
  688. data/spec/unit/util/network_device/cisco/device_spec.rb +59 -50
  689. data/spec/unit/util/network_device/cisco/facts_spec.rb +4 -5
  690. data/spec/unit/util/network_device/cisco/interface_spec.rb +29 -20
  691. data/spec/unit/util/network_device/config_spec.rb +0 -1
  692. data/spec/unit/util/network_device/ipcalc_spec.rb +0 -1
  693. data/spec/unit/util/network_device/transport/base_spec.rb +5 -6
  694. data/spec/unit/util/network_device/transport/ssh_spec.rb +94 -60
  695. data/spec/unit/util/network_device/transport/telnet_spec.rb +18 -14
  696. data/spec/unit/util/network_device_spec.rb +7 -9
  697. data/spec/unit/util/package_spec.rb +0 -1
  698. data/spec/unit/util/pidlock_spec.rb +13 -14
  699. data/spec/unit/util/plist_spec.rb +40 -33
  700. data/spec/unit/util/posix_spec.rb +54 -51
  701. data/spec/unit/util/rdoc_spec.rb +9 -10
  702. data/spec/unit/util/reference_spec.rb +0 -1
  703. data/spec/unit/util/resource_template_spec.rb +20 -20
  704. data/spec/unit/util/retry_action_spec.rb +7 -8
  705. data/spec/unit/util/rubygems_spec.rb +14 -14
  706. data/spec/unit/util/run_mode_spec.rb +3 -4
  707. data/spec/unit/util/selinux_spec.rb +79 -72
  708. data/spec/unit/util/splayer_spec.rb +8 -9
  709. data/spec/unit/util/ssl_spec.rb +0 -1
  710. data/spec/unit/util/storage_spec.rb +3 -4
  711. data/spec/unit/util/suidmanager_spec.rb +45 -54
  712. data/spec/unit/util/symbolic_file_mode_spec.rb +0 -1
  713. data/spec/unit/util/tag_set_spec.rb +0 -1
  714. data/spec/unit/util/tagging_spec.rb +0 -1
  715. data/spec/unit/util/terminal_spec.rb +9 -10
  716. data/spec/unit/util/user_attr_spec.rb +1 -2
  717. data/spec/unit/util/warnings_spec.rb +3 -4
  718. data/spec/unit/util/watcher/periodic_watcher_spec.rb +2 -2
  719. data/spec/unit/util/watcher_spec.rb +51 -21
  720. data/spec/unit/util/windows/access_control_entry_spec.rb +0 -1
  721. data/spec/unit/util/windows/access_control_list_spec.rb +0 -1
  722. data/spec/unit/util/windows/adsi_spec.rb +136 -138
  723. data/spec/unit/util/windows/api_types_spec.rb +0 -1
  724. data/spec/unit/util/windows/eventlog_spec.rb +9 -12
  725. data/spec/unit/util/windows/file_spec.rb +0 -1
  726. data/spec/unit/util/windows/root_certs_spec.rb +0 -1
  727. data/spec/unit/util/windows/security_descriptor_spec.rb +0 -2
  728. data/spec/unit/util/windows/service_spec.rb +66 -68
  729. data/spec/unit/util/windows/sid_spec.rb +11 -13
  730. data/spec/unit/util/windows/string_spec.rb +0 -1
  731. data/spec/unit/util_spec.rb +55 -59
  732. data/spec/unit/version_spec.rb +6 -6
  733. metadata +2 -2
@@ -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.features.microsoft_windows? do
@@ -11,39 +9,37 @@ describe Puppet::Type.type(:group).provider(:windows_adsi), :if => Puppet.featur
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.featur
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.featur
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.featur
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
 
@@ -10,7 +10,7 @@ describe Puppet::Type.type(:host).provider(:parsed) do
10
10
  @host_class = Puppet::Type.type(:host)
11
11
  @provider = @host_class.provider(:parsed)
12
12
  @hostfile = tmpfile('hosts')
13
- @provider.any_instance.stubs(:target).returns @hostfile
13
+ allow_any_instance_of(@provider).to receive(:target).and_return(@hostfile)
14
14
  end
15
15
 
16
16
  after :each do
@@ -19,7 +19,7 @@ describe Puppet::Type.type(:host).provider(:parsed) do
19
19
 
20
20
  def mkhost(args)
21
21
  hostresource = Puppet::Type::Host.new(:name => args[:name])
22
- hostresource.stubs(:should).with(:target).returns @hostfile
22
+ allow(hostresource).to receive(:should).with(:target).and_return(@hostfile)
23
23
 
24
24
  # Using setters of provider to build our testobject
25
25
  # Note: We already proved, that in case of host_aliases
@@ -34,10 +34,10 @@ describe Puppet::Type.type(:host).provider(:parsed) do
34
34
  end
35
35
 
36
36
  def genhost(host)
37
- @provider.stubs(:filetype).returns(Puppet::Util::FileType::FileTypeRam)
38
- File.stubs(:chown)
39
- File.stubs(:chmod)
40
- Puppet::Util::SUIDManager.stubs(:asuser).yields
37
+ allow(@provider).to receive(:filetype).and_return(Puppet::Util::FileType::FileTypeRam)
38
+ allow(File).to receive(:chown)
39
+ allow(File).to receive(:chmod)
40
+ allow(Puppet::Util::SUIDManager).to receive(:asuser).and_yield
41
41
  host.flush
42
42
  @provider.target_object(@hostfile).read
43
43
  end
@@ -1,55 +1,51 @@
1
- #! /usr/bin/env ruby
2
1
  require 'spec_helper'
3
2
 
4
3
  require 'puppet/provider/interface/cisco'
5
4
 
6
- provider_class = Puppet::Type.type(:interface).provider(:cisco)
7
-
8
- describe provider_class do
5
+ describe Puppet::Type.type(:interface).provider(:cisco) do
9
6
  before do
10
- @device = stub_everything 'device'
11
- @resource = stub("resource", :name => "Fa0/1")
12
- @provider = provider_class.new(@device, @resource)
7
+ @device = double('device')
8
+ @resource = double("resource", :name => "Fa0/1")
9
+ @provider = described_class.new(@device, @resource)
13
10
  end
14
11
 
15
12
  it "should have a parent of Puppet::Provider::Cisco" do
16
- expect(provider_class).to be < Puppet::Provider::Cisco
13
+ expect(described_class).to be < Puppet::Provider::Cisco
17
14
  end
18
15
 
19
16
  it "should have an instances method" do
20
- expect(provider_class).to respond_to(:instances)
17
+ expect(described_class).to respond_to(:instances)
21
18
  end
22
19
 
23
20
  describe "when looking up instances at prefetch" do
24
21
  before do
25
- @device.stubs(:command).yields(@device)
22
+ allow(@device).to receive(:command).and_yield(@device)
26
23
  end
27
24
 
28
25
  it "should delegate to the device interface fetcher" do
29
- @device.expects(:interface)
30
- provider_class.lookup(@device, "Fa0/1")
26
+ expect(@device).to receive(:interface)
27
+ described_class.lookup(@device, "Fa0/1")
31
28
  end
32
29
 
33
30
  it "should return the given interface data" do
34
- @device.expects(:interface).returns({ :description => "thisone", :mode => :access})
35
- expect(provider_class.lookup(@device, "Fa0")).to eq({:description => "thisone", :mode => :access })
31
+ expect(@device).to receive(:interface).and_return({:description => "thisone", :mode => :access})
32
+ expect(described_class.lookup(@device, "Fa0")).to eq({:description => "thisone", :mode => :access })
36
33
  end
37
-
38
34
  end
39
35
 
40
36
  describe "when an instance is being flushed" do
41
37
  it "should call the device interface update method with current and past properties" do
42
- @instance = provider_class.new(@device, :ensure => :present, :name => "Fa0/1", :description => "myinterface")
38
+ @instance = described_class.new(@device, :ensure => :present, :name => "Fa0/1", :description => "myinterface")
43
39
  @instance.description = "newdesc"
44
40
  @instance.resource = @resource
45
- @resource.stubs(:[]).with(:name).returns("Fa0/1")
46
- device = stub_everything 'device'
47
- @instance.stubs(:device).returns(device)
48
- device.expects(:command).yields(device)
49
- interface = stub 'interface'
50
- device.expects(:new_interface).with("Fa0/1").returns(interface)
51
- interface.expects(:update).with( {:ensure => :present, :name => "Fa0/1", :description => "myinterface"},
52
- {:ensure => :present, :name => "Fa0/1", :description => "newdesc"})
41
+ allow(@resource).to receive(:[]).with(:name).and_return("Fa0/1")
42
+ device = double('device')
43
+ allow(@instance).to receive(:device).and_return(device)
44
+ expect(device).to receive(:command).and_yield(device)
45
+ interface = double('interface')
46
+ expect(device).to receive(:new_interface).with("Fa0/1").and_return(interface)
47
+ expect(interface).to receive(:update).with( {:ensure => :present, :name => "Fa0/1", :description => "myinterface"},
48
+ {:ensure => :present, :name => "Fa0/1", :description => "newdesc"})
53
49
 
54
50
  @instance.flush
55
51
  end
@@ -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")