wright 0.3.2 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. checksums.yaml +4 -4
  2. data/NEWS.md +7 -0
  3. data/README.md +60 -54
  4. data/lib/wright/cli.rb +44 -18
  5. data/lib/wright/dry_run.rb +7 -0
  6. data/lib/wright/provider/directory.rb +26 -30
  7. data/lib/wright/provider/file.rb +34 -34
  8. data/lib/wright/provider/group/darwin_directory_service.rb +8 -7
  9. data/lib/wright/provider/group/gnu_passwd.rb +5 -5
  10. data/lib/wright/provider/group.rb +53 -36
  11. data/lib/wright/provider/package/apt.rb +32 -8
  12. data/lib/wright/provider/package/homebrew.rb +6 -5
  13. data/lib/wright/provider/package/yum.rb +39 -0
  14. data/lib/wright/provider/package.rb +30 -16
  15. data/lib/wright/provider/symlink.rb +32 -33
  16. data/lib/wright/provider/user/darwin_directory_service.rb +14 -17
  17. data/lib/wright/provider/user/gnu_passwd.rb +20 -21
  18. data/lib/wright/provider/user.rb +58 -41
  19. data/lib/wright/resource/group.rb +1 -0
  20. data/lib/wright/resource/package.rb +16 -3
  21. data/lib/wright/resource/user.rb +1 -0
  22. data/lib/wright/resource.rb +4 -2
  23. data/lib/wright/util/user.rb +34 -2
  24. data/lib/wright/version.rb +1 -1
  25. data/man/wright.1 +15 -11
  26. data/spec/cli_spec.rb +18 -0
  27. data/spec/provider/group/darwin_directory_service_spec.rb +76 -220
  28. data/spec/provider/group/gnu_passwd_spec.rb +36 -189
  29. data/spec/provider/group_spec.rb +180 -27
  30. data/spec/provider/package/apt/apt-cache_policy_dmenu.return +1 -0
  31. data/spec/provider/package/apt/apt-cache_policy_dmenu.stderr +0 -0
  32. data/spec/provider/package/apt/apt-cache_policy_dmenu.stdout +4 -0
  33. data/spec/provider/package/apt/apt-cache_policy_htop.stdout +3 -3
  34. data/spec/provider/package/apt/apt-cache_policy_linux-image-3.2.0-4-amd64.return +1 -0
  35. data/spec/provider/package/apt/apt-cache_policy_linux-image-3.2.0-4-amd64.stderr +0 -0
  36. data/spec/provider/package/apt/apt-cache_policy_linux-image-3.2.0-4-amd64.stdout +6 -0
  37. data/spec/provider/package/apt/apt-cache_policy_linux-image.return +1 -0
  38. data/spec/provider/package/apt/apt-cache_policy_linux-image.stderr +0 -0
  39. data/spec/provider/package/apt/apt-cache_policy_linux-image.stdout +4 -0
  40. data/spec/provider/package/apt/apt-cache_policy_suckless-tools.return +1 -0
  41. data/spec/provider/package/apt/apt-cache_policy_suckless-tools.stderr +0 -0
  42. data/spec/provider/package/apt/apt-cache_policy_suckless-tools.stdout +6 -0
  43. data/spec/provider/package/apt/apt-cache_showpkg_dmenu.return +1 -0
  44. data/spec/provider/package/apt/apt-cache_showpkg_dmenu.stderr +0 -0
  45. data/spec/provider/package/apt/apt-cache_showpkg_dmenu.stdout +9 -0
  46. data/spec/provider/package/apt/apt-cache_showpkg_htop.return +1 -0
  47. data/spec/provider/package/apt/apt-cache_showpkg_htop.stderr +0 -0
  48. data/spec/provider/package/apt/apt-cache_showpkg_htop.stdout +20 -0
  49. data/spec/provider/package/apt/apt-cache_showpkg_linux-image.return +1 -0
  50. data/spec/provider/package/apt/apt-cache_showpkg_linux-image.stderr +0 -0
  51. data/spec/provider/package/apt/apt-cache_showpkg_linux-image.stdout +11 -0
  52. data/spec/provider/package/apt/apt-cache_showpkg_not-a-real-package.return +1 -0
  53. data/spec/provider/package/apt/apt-cache_showpkg_not-a-real-package.stderr +0 -0
  54. data/spec/provider/package/apt/apt-cache_showpkg_not-a-real-package.stdout +1 -0
  55. data/spec/provider/package/apt/apt-cache_showpkg_suckless-tools.return +1 -0
  56. data/spec/provider/package/apt/apt-cache_showpkg_suckless-tools.stderr +0 -0
  57. data/spec/provider/package/apt/apt-cache_showpkg_suckless-tools.stdout +26 -0
  58. data/spec/provider/package/apt/apt-get_--purge_remove_-qy_abcde.return +1 -0
  59. data/spec/provider/package/apt/apt-get_--purge_remove_-qy_abcde.stderr +0 -0
  60. data/spec/provider/package/apt/apt-get_--purge_remove_-qy_abcde.stdout +15 -0
  61. data/spec/provider/package/apt_spec.rb +82 -14
  62. data/spec/provider/package/homebrew/brew_install_--with-default-names_gnu-units.return +1 -0
  63. data/spec/provider/package/homebrew/brew_install_--with-default-names_gnu-units.stderr +0 -0
  64. data/spec/provider/package/homebrew/brew_install_--with-default-names_gnu-units.stdout +7 -0
  65. data/spec/provider/package/homebrew/brew_uninstall_--force_lame.return +1 -0
  66. data/spec/provider/package/homebrew/brew_uninstall_--force_lame.stderr +0 -0
  67. data/spec/provider/package/homebrew/brew_uninstall_--force_lame.stdout +1 -0
  68. data/spec/provider/package/homebrew_spec.rb +33 -6
  69. data/spec/provider/package/yum/rpm_-q_httpd.return +1 -0
  70. data/spec/provider/package/yum/rpm_-q_httpd.stderr +0 -0
  71. data/spec/provider/package/yum/rpm_-q_httpd.stdout +1 -0
  72. data/spec/provider/package/yum/rpm_-q_zsh.return +1 -0
  73. data/spec/provider/package/yum/rpm_-q_zsh.stderr +0 -0
  74. data/spec/provider/package/yum/rpm_-q_zsh.stdout +1 -0
  75. data/spec/provider/package/yum/yum_install_-y_mc-4.8.7-8.el7.return +1 -0
  76. data/spec/provider/package/yum/yum_install_-y_mc-4.8.7-8.el7.stderr +0 -0
  77. data/spec/provider/package/yum/yum_install_-y_mc-4.8.7-8.el7.stdout +37 -0
  78. data/spec/provider/package/yum/yum_install_-y_nano.return +1 -0
  79. data/spec/provider/package/yum/yum_install_-y_nano.stderr +0 -0
  80. data/spec/provider/package/yum/yum_install_-y_nano.stdout +36 -0
  81. data/spec/provider/package/yum/yum_install_-y_not-a-real-package.return +1 -0
  82. data/spec/provider/package/yum/yum_install_-y_not-a-real-package.stderr +1 -0
  83. data/spec/provider/package/yum/yum_install_-y_not-a-real-package.stdout +6 -0
  84. data/spec/provider/package/yum/yum_install_with_options.return +1 -0
  85. data/spec/provider/package/yum/yum_install_with_options.stderr +0 -0
  86. data/spec/provider/package/yum/yum_install_with_options.stdout +53 -0
  87. data/spec/provider/package/yum/yum_remove_-y_screen.return +1 -0
  88. data/spec/provider/package/yum/yum_remove_-y_screen.stderr +0 -0
  89. data/spec/provider/package/yum/yum_remove_-y_screen.stdout +31 -0
  90. data/spec/provider/package/yum/yum_remove_with_options.return +1 -0
  91. data/spec/provider/package/yum/yum_remove_with_options.stderr +0 -0
  92. data/spec/provider/package/yum/yum_remove_with_options.stdout +30 -0
  93. data/spec/provider/package/yum_spec.rb +130 -0
  94. data/spec/provider/user/darwin_directory_service_spec.rb +12 -10
  95. data/spec/provider/user/gnu_passwd_spec.rb +9 -9
  96. data/spec/provider/user_spec.rb +26 -18
  97. data/spec/resource/package_spec.rb +8 -0
  98. data/spec/resource_spec.rb +17 -9
  99. metadata +153 -16
@@ -3,13 +3,16 @@ require_relative '../../spec_helper'
3
3
  require 'wright/provider/package/homebrew'
4
4
 
5
5
  describe Wright::Provider::Package::Homebrew do
6
- def brew(action, pkg_name)
7
- options = action == :info ? ['info', '--json=v1'] : [action.to_s]
8
- ['brew', *options, pkg_name]
6
+ def brew(action, pkg_name, args = {})
7
+ action_args = action == :info ? ['info', '--json=v1'] : [action.to_s]
8
+ ['brew', *action_args, *args[:options], pkg_name]
9
9
  end
10
10
 
11
- def package_provider(pkg_name, pkg_version = nil)
12
- pkg_resource = OpenStruct.new(name: pkg_name, version: pkg_version)
11
+ def package_provider(pkg_name, args = {})
12
+ properties = { name: pkg_name,
13
+ version: args[:version],
14
+ options: args[:options] }
15
+ pkg_resource = OpenStruct.new(properties)
13
16
  Wright::Provider::Package::Homebrew.new(pkg_resource)
14
17
  end
15
18
 
@@ -71,7 +74,7 @@ describe Wright::Provider::Package::Homebrew do
71
74
  it 'should output a warning when specifying a package version' do
72
75
  pkg_name = 'cd-discid'
73
76
  pkg_version = '1.1'
74
- pkg_provider = package_provider(pkg_name, pkg_version)
77
+ pkg_provider = package_provider(pkg_name, version: pkg_version)
75
78
  brew_install_cmd = brew(:install, pkg_name)
76
79
  version_warning =
77
80
  "WARN: ignoring package version: '#{pkg_name} (#{pkg_version})'\n"
@@ -85,6 +88,18 @@ describe Wright::Provider::Package::Homebrew do
85
88
  end
86
89
  end
87
90
 
91
+ it 'should pass options to the package manager' do
92
+ pkg_name = 'gnu-units'
93
+ pkg_options = '--with-default-names'
94
+ pkg_provider = package_provider(pkg_name, options: pkg_options)
95
+ brew_install_cmd = brew(:install, pkg_name, options: pkg_options)
96
+
97
+ @fake_capture3.expect(brew_install_cmd)
98
+ @fake_capture3.stub do
99
+ pkg_provider.send(:install_package)
100
+ end
101
+ end
102
+
88
103
  it 'should raise exceptions for unavailable packages' do
89
104
  pkg_name = 'not-a-real-package'
90
105
  pkg_provider = package_provider(pkg_name)
@@ -111,5 +126,17 @@ describe Wright::Provider::Package::Homebrew do
111
126
  pkg_provider.send(:remove_package)
112
127
  end
113
128
  end
129
+
130
+ it 'should pass options to the package manager' do
131
+ pkg_name = 'lame'
132
+ pkg_options = ['--force']
133
+ pkg_provider = package_provider(pkg_name, options: pkg_options)
134
+ brew_uninstall_cmd = brew(:uninstall, pkg_name, options: pkg_options)
135
+
136
+ @fake_capture3.expect(brew_uninstall_cmd)
137
+ @fake_capture3.stub do
138
+ pkg_provider.send(:remove_package)
139
+ end
140
+ end
114
141
  end
115
142
  end
File without changes
@@ -0,0 +1 @@
1
+ package httpd is not installed
File without changes
@@ -0,0 +1 @@
1
+ 5.0.2-7.el7_1.1
@@ -0,0 +1,37 @@
1
+ Loaded plugins: fastestmirror
2
+ Loading mirror speeds from cached hostfile
3
+ * base: mirror.digitalnova.at
4
+ * extras: mirror.digitalnova.at
5
+ * updates: ftp.tugraz.at
6
+ Resolving Dependencies
7
+ --> Running transaction check
8
+ ---> Package mc.x86_64 1:4.8.7-8.el7 will be installed
9
+ --> Finished Dependency Resolution
10
+
11
+ Dependencies Resolved
12
+
13
+ ================================================================================
14
+ Package Arch Version Repository Size
15
+ ================================================================================
16
+ Installing:
17
+ mc x86_64 1:4.8.7-8.el7 base 1.7 M
18
+
19
+ Transaction Summary
20
+ ================================================================================
21
+ Install 1 Package
22
+
23
+ Total download size: 1.7 M
24
+ Installed size: 5.6 M
25
+ Downloading packages:
26
+ Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
27
+ Running transaction check
28
+ Running transaction test
29
+ Transaction test succeeded
30
+ Running transaction
31
+ Installing : 1:mc-4.8.7-8.el7.x86_64 1/1
32
+ Verifying : 1:mc-4.8.7-8.el7.x86_64 1/1
33
+
34
+ Installed:
35
+ mc.x86_64 1:4.8.7-8.el7
36
+
37
+ Complete!
@@ -0,0 +1,36 @@
1
+ Loaded plugins: fastestmirror
2
+ Loading mirror speeds from cached hostfile
3
+ * base: mirror.digitalnova.at
4
+ * extras: mirror.digitalnova.at
5
+ * updates: ftp.tugraz.at
6
+ Resolving Dependencies
7
+ --> Running transaction check
8
+ ---> Package nano.x86_64 0:2.3.1-10.el7 will be installed
9
+ --> Finished Dependency Resolution
10
+
11
+ Dependencies Resolved
12
+
13
+ ================================================================================
14
+ Package Arch Version Repository Size
15
+ ================================================================================
16
+ Installing:
17
+ nano x86_64 2.3.1-10.el7 base 440 k
18
+
19
+ Transaction Summary
20
+ ================================================================================
21
+ Install 1 Package
22
+
23
+ Total download size: 440 k
24
+ Installed size: 1.6 M
25
+ Downloading packages:
26
+ Running transaction check
27
+ Running transaction test
28
+ Transaction test succeeded
29
+ Running transaction
30
+ Installing : nano-2.3.1-10.el7.x86_64 1/1
31
+ Verifying : nano-2.3.1-10.el7.x86_64 1/1
32
+
33
+ Installed:
34
+ nano.x86_64 0:2.3.1-10.el7
35
+
36
+ Complete!
@@ -0,0 +1 @@
1
+ Error: Nothing to do
@@ -0,0 +1,6 @@
1
+ Loaded plugins: fastestmirror
2
+ Loading mirror speeds from cached hostfile
3
+ * base: mirror.nextlayer.at
4
+ * extras: mirror.netcologne.de
5
+ * updates: mirror.netcologne.de
6
+ No package not-a-real-package available.
@@ -0,0 +1,53 @@
1
+ Loaded plugins: fastestmirror
2
+ Loading mirror speeds from cached hostfile
3
+ * base: mirror.nextlayer.at
4
+ * centosplus: mirror.nextlayer.at
5
+ * extras: mirror.nextlayer.at
6
+ * updates: mirror.nextlayer.at
7
+ Resolving Dependencies
8
+ --> Running transaction check
9
+ ---> Package postfix.x86_64 2:2.10.1-6.el7 will be updated
10
+ ---> Package postfix.x86_64 2:2.10.1-6.0.1.el7.centos will be an update
11
+ --> Processing Dependency: libpq.so.5()(64bit) for package: 2:postfix-2.10.1-6.0.1.el7.centos.x86_64
12
+ --> Running transaction check
13
+ ---> Package postgresql-libs.x86_64 0:9.2.10-2.el7_1 will be installed
14
+ --> Finished Dependency Resolution
15
+
16
+ Dependencies Resolved
17
+
18
+ ================================================================================
19
+ Package Arch Version Repository Size
20
+ ================================================================================
21
+ Updating:
22
+ postfix x86_64 2:2.10.1-6.0.1.el7.centos centosplus 2.5 M
23
+ Installing for dependencies:
24
+ postgresql-libs x86_64 9.2.10-2.el7_1 updates 230 k
25
+
26
+ Transaction Summary
27
+ ================================================================================
28
+ Install ( 1 Dependent package)
29
+ Upgrade 1 Package
30
+
31
+ Total download size: 2.7 M
32
+ Downloading packages:
33
+ Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
34
+ --------------------------------------------------------------------------------
35
+ Total 382 kB/s | 2.7 MB 00:07
36
+ Running transaction check
37
+ Running transaction test
38
+ Transaction test succeeded
39
+ Running transaction
40
+ Installing : postgresql-libs-9.2.10-2.el7_1.x86_64 1/3
41
+ Updating : 2:postfix-2.10.1-6.0.1.el7.centos.x86_64 2/3
42
+ Cleanup : 2:postfix-2.10.1-6.el7.x86_64 3/3
43
+ Verifying : postgresql-libs-9.2.10-2.el7_1.x86_64 1/3
44
+ Verifying : 2:postfix-2.10.1-6.0.1.el7.centos.x86_64 2/3
45
+ Verifying : 2:postfix-2.10.1-6.el7.x86_64 3/3
46
+
47
+ Dependency Installed:
48
+ postgresql-libs.x86_64 0:9.2.10-2.el7_1
49
+
50
+ Updated:
51
+ postfix.x86_64 2:2.10.1-6.0.1.el7.centos
52
+
53
+ Complete!
@@ -0,0 +1,31 @@
1
+ Loaded plugins: fastestmirror
2
+ Resolving Dependencies
3
+ --> Running transaction check
4
+ ---> Package screen.x86_64 0:4.1.0-0.19.20120314git3c2946.el7 will be erased
5
+ --> Finished Dependency Resolution
6
+
7
+ Dependencies Resolved
8
+
9
+ ================================================================================
10
+ Package Arch Version Repository Size
11
+ ================================================================================
12
+ Removing:
13
+ screen x86_64 4.1.0-0.19.20120314git3c2946.el7 @base 914 k
14
+
15
+ Transaction Summary
16
+ ================================================================================
17
+ Remove 1 Package
18
+
19
+ Installed size: 914 k
20
+ Downloading packages:
21
+ Running transaction check
22
+ Running transaction test
23
+ Transaction test succeeded
24
+ Running transaction
25
+ Erasing : screen-4.1.0-0.19.20120314git3c2946.el7.x86_64 1/1
26
+ Verifying : screen-4.1.0-0.19.20120314git3c2946.el7.x86_64 1/1
27
+
28
+ Removed:
29
+ screen.x86_64 0:4.1.0-0.19.20120314git3c2946.el7
30
+
31
+ Complete!
@@ -0,0 +1,30 @@
1
+ Resolving Dependencies
2
+ --> Running transaction check
3
+ ---> Package vim-enhanced.x86_64 2:7.4.160-1.el7 will be erased
4
+ --> Finished Dependency Resolution
5
+
6
+ Dependencies Resolved
7
+
8
+ ================================================================================
9
+ Package Arch Version Repository Size
10
+ ================================================================================
11
+ Removing:
12
+ vim-enhanced x86_64 2:7.4.160-1.el7 @base 2.2 M
13
+
14
+ Transaction Summary
15
+ ================================================================================
16
+ Remove 1 Package
17
+
18
+ Installed size: 2.2 M
19
+ Downloading packages:
20
+ Running transaction check
21
+ Running transaction test
22
+ Transaction test succeeded
23
+ Running transaction
24
+ Erasing : 2:vim-enhanced-7.4.160-1.el7.x86_64 1/1
25
+ Verifying : 2:vim-enhanced-7.4.160-1.el7.x86_64 1/1
26
+
27
+ Removed:
28
+ vim-enhanced.x86_64 2:7.4.160-1.el7
29
+
30
+ Complete!
@@ -0,0 +1,130 @@
1
+ require_relative '../../spec_helper'
2
+
3
+ require 'wright/provider/package/yum'
4
+
5
+ describe Wright::Provider::Package::Yum do
6
+ def rpm_q(pkg_name)
7
+ version_format = '%{VERSION}-%{RELEASE}'
8
+ %W(rpm -q #{pkg_name} --qf #{version_format})
9
+ end
10
+
11
+ def package_provider(pkg_name, args = {})
12
+ properties = { name: pkg_name,
13
+ version: args[:version],
14
+ options: args[:options] }
15
+ pkg_resource = OpenStruct.new(properties)
16
+ Wright::Provider::Package::Yum.new(pkg_resource)
17
+ end
18
+
19
+ def yum(action, pkg_name, args = {})
20
+ version = args[:version].nil? ? '' : "-#{args[:version]}"
21
+ ['yum', *args[:options], action.to_s, '-y', pkg_name + version]
22
+ end
23
+
24
+ before :each do
25
+ yum_dir = File.join(File.dirname(__FILE__), 'yum')
26
+ @fake_capture3 = FakeCapture3.new(yum_dir)
27
+ end
28
+
29
+ describe '#installed_versions' do
30
+ it 'should return the installed package version via brew info' do
31
+ pkg_name = 'zsh'
32
+ pkg_versions = ['5.0.2-7.el7_1.1']
33
+ pkg_provider = package_provider(pkg_name)
34
+ rpm_q_cmd = rpm_q(pkg_name)
35
+
36
+ @fake_capture3.expect(rpm_q_cmd, 'rpm_-q_zsh')
37
+ @fake_capture3.stub do
38
+ pkg_provider.installed_versions.must_equal pkg_versions
39
+ end
40
+ end
41
+
42
+ it 'should return an empty array for uninstalled packages' do
43
+ pkg_name = 'httpd'
44
+ pkg_versions = []
45
+ pkg_provider = package_provider(pkg_name)
46
+ rpm_q_cmd = rpm_q(pkg_name)
47
+
48
+ @fake_capture3.expect(rpm_q_cmd, 'rpm_-q_httpd')
49
+ @fake_capture3.stub do
50
+ pkg_provider.installed_versions.must_equal pkg_versions
51
+ end
52
+ end
53
+ end
54
+
55
+ describe '#install_package' do
56
+ it 'should install packages' do
57
+ pkg_name = 'nano'
58
+ pkg_provider = package_provider(pkg_name)
59
+ yum_cmd = yum(:install, pkg_name)
60
+
61
+ @fake_capture3.expect(yum_cmd)
62
+ @fake_capture3.stub do
63
+ pkg_provider.send(:install_package)
64
+ end
65
+ end
66
+
67
+ it 'should install specific package versions' do
68
+ pkg_name = 'mc'
69
+ pkg_version = '4.8.7-8.el7'
70
+ pkg_provider = package_provider(pkg_name, version: pkg_version)
71
+ yum_cmd = yum(:install, pkg_name, version: pkg_version)
72
+
73
+ @fake_capture3.expect(yum_cmd)
74
+ @fake_capture3.stub do
75
+ pkg_provider.send(:install_package)
76
+ end
77
+ end
78
+
79
+ it 'should pass options to the package manager' do
80
+ pkg_name = 'postfix'
81
+ pkg_options = '--enablerepo=centosplus'
82
+ pkg_provider = package_provider(pkg_name, options: pkg_options)
83
+ yum_cmd = yum(:install, pkg_name, options: pkg_options)
84
+
85
+ @fake_capture3.expect(yum_cmd, 'yum_install_with_options')
86
+ @fake_capture3.stub do
87
+ pkg_provider.send(:install_package)
88
+ end
89
+ end
90
+
91
+ it 'should raise exceptions for unknown packages' do
92
+ pkg_name = 'not-a-real-package'
93
+ pkg_provider = package_provider(pkg_name)
94
+ yum_cmd = yum(:install, pkg_name)
95
+
96
+ @fake_capture3.expect(yum_cmd)
97
+ @fake_capture3.stub do
98
+ e = -> { pkg_provider.send(:install_package) }.must_raise RuntimeError
99
+ wright_error = "cannot install package '#{pkg_name}'"
100
+ yum_error = 'Error: Nothing to do'
101
+ e.message.must_equal %(#{wright_error}: "#{yum_error}")
102
+ end
103
+ end
104
+ end
105
+
106
+ describe '#remove_package' do
107
+ it 'should remove packages' do
108
+ pkg_name = 'screen'
109
+ pkg_provider = package_provider(pkg_name)
110
+ yum_cmd = yum(:remove, pkg_name)
111
+
112
+ @fake_capture3.expect(yum_cmd)
113
+ @fake_capture3.stub do
114
+ pkg_provider.send(:remove_package)
115
+ end
116
+ end
117
+
118
+ it 'should pass options to the package manager' do
119
+ pkg_name = 'vim'
120
+ pkg_options = ['--noplugins']
121
+ pkg_provider = package_provider(pkg_name, options: pkg_options)
122
+ yum_cmd = yum(:remove, pkg_name, options: pkg_options)
123
+
124
+ @fake_capture3.expect(yum_cmd, 'yum_remove_with_options')
125
+ @fake_capture3.stub do
126
+ pkg_provider.send(:remove_package)
127
+ end
128
+ end
129
+ end
130
+ end
@@ -26,13 +26,15 @@ describe Wright::Provider::User::DarwinDirectoryService do
26
26
  FakeEtc.clear_groups
27
27
  end
28
28
 
29
- describe '#add_user' do
29
+ describe '#create_user' do
30
30
  before(:each) do
31
- Wright::Provider::User::DarwinDirectoryService.send(:public, :add_user)
31
+ Wright::Provider::User::DarwinDirectoryService.send(:public,
32
+ :create_user)
32
33
  end
33
34
 
34
35
  after(:each) do
35
- Wright::Provider::User::DarwinDirectoryService.send(:private, :add_user)
36
+ Wright::Provider::User::DarwinDirectoryService.send(:private,
37
+ :create_user)
36
38
  end
37
39
 
38
40
  it 'should add users' do
@@ -55,7 +57,7 @@ describe Wright::Provider::User::DarwinDirectoryService do
55
57
  @fake_capture3.expect(dscl(:create, user, 'Password', '*'),
56
58
  'dscl-new-user-password')
57
59
  @fake_capture3.stub do
58
- FakeEtc { provider.add_user }
60
+ FakeEtc { provider.create_user }
59
61
  end
60
62
  end
61
63
 
@@ -80,7 +82,7 @@ describe Wright::Provider::User::DarwinDirectoryService do
80
82
  @fake_capture3.expect(dscl(:create, user, 'Password', '*'),
81
83
  'dscl-new-user-password')
82
84
  @fake_capture3.stub do
83
- FakeEtc { provider.add_user }
85
+ FakeEtc { provider.create_user }
84
86
  end
85
87
  end
86
88
 
@@ -112,7 +114,7 @@ describe Wright::Provider::User::DarwinDirectoryService do
112
114
  @fake_capture3.expect(dscl(:create, user, 'Password', '*'),
113
115
  'dscl-new-user-password')
114
116
  @fake_capture3.stub do
115
- FakeEtc { provider.add_user }
117
+ FakeEtc { provider.create_user }
116
118
  end
117
119
  end
118
120
  end
@@ -142,15 +144,15 @@ describe Wright::Provider::User::DarwinDirectoryService do
142
144
  end
143
145
  end
144
146
 
145
- describe '#delete_user' do
147
+ describe '#remove_user' do
146
148
  before(:each) do
147
149
  Wright::Provider::User::DarwinDirectoryService.send(:public,
148
- :delete_user)
150
+ :remove_user)
149
151
  end
150
152
 
151
153
  after(:each) do
152
154
  Wright::Provider::User::DarwinDirectoryService.send(:private,
153
- :delete_user)
155
+ :remove_user)
154
156
  end
155
157
 
156
158
  it 'should delete users' do
@@ -160,7 +162,7 @@ describe Wright::Provider::User::DarwinDirectoryService do
160
162
  @fake_capture3.expect(%W(dscl . -delete /Users/#{@resource.name}),
161
163
  'dscl-delete-user')
162
164
  @fake_capture3.stub do
163
- FakeEtc { provider.delete_user }
165
+ FakeEtc { provider.remove_user }
164
166
  end
165
167
  end
166
168
  end
@@ -18,13 +18,13 @@ describe Wright::Provider::User::GnuPasswd do
18
18
  FakeEtc.clear_groups
19
19
  end
20
20
 
21
- describe '#add_user' do
21
+ describe '#create_user' do
22
22
  before(:each) do
23
- Wright::Provider::User::GnuPasswd.send(:public, :add_user)
23
+ Wright::Provider::User::GnuPasswd.send(:public, :create_user)
24
24
  end
25
25
 
26
26
  after(:each) do
27
- Wright::Provider::User::GnuPasswd.send(:private, :add_user)
27
+ Wright::Provider::User::GnuPasswd.send(:private, :create_user)
28
28
  end
29
29
 
30
30
  it 'should add users' do
@@ -32,7 +32,7 @@ describe Wright::Provider::User::GnuPasswd do
32
32
 
33
33
  @fake_capture3.expect(%W(useradd #{@resource.name}))
34
34
  @fake_capture3.stub do
35
- FakeEtc { provider.add_user }
35
+ FakeEtc { provider.create_user }
36
36
  end
37
37
  end
38
38
 
@@ -59,7 +59,7 @@ describe Wright::Provider::User::GnuPasswd do
59
59
  FakeEtc.add_groups('anonymous' => { gid: 123 })
60
60
  @fake_capture3.expect(['useradd', *expected_args], 'useradd_with_options')
61
61
  @fake_capture3.stub do
62
- FakeEtc { provider.add_user }
62
+ FakeEtc { provider.create_user }
63
63
  end
64
64
  end
65
65
  end
@@ -85,13 +85,13 @@ describe Wright::Provider::User::GnuPasswd do
85
85
  end
86
86
  end
87
87
 
88
- describe '#delete_user' do
88
+ describe '#remove_user' do
89
89
  before(:each) do
90
- Wright::Provider::User::GnuPasswd.send(:public, :delete_user)
90
+ Wright::Provider::User::GnuPasswd.send(:public, :remove_user)
91
91
  end
92
92
 
93
93
  after(:each) do
94
- Wright::Provider::User::GnuPasswd.send(:private, :delete_user)
94
+ Wright::Provider::User::GnuPasswd.send(:private, :remove_user)
95
95
  end
96
96
 
97
97
  it 'should delete users' do
@@ -100,7 +100,7 @@ describe Wright::Provider::User::GnuPasswd do
100
100
  FakeEtc.add_users(@resource.name => {})
101
101
  @fake_capture3.expect(%W(userdel #{@resource.name}))
102
102
  @fake_capture3.stub do
103
- FakeEtc { provider.delete_user }
103
+ FakeEtc { provider.remove_user }
104
104
  end
105
105
  end
106
106
  end