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