sys-admin 1.5.5-x86-mingw32 → 1.5.6-x86-mingw32

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.
data/CHANGES CHANGED
@@ -1,3 +1,9 @@
1
+ == 1.5.6 - 30-Jul-2011
2
+ * Fixed issue for non-gnu platforms where it would use the wrong function
3
+ prototype because the Ruby core team took it upon themselves to explicitly
4
+ defined _GNU_SOURCE in config.h in 1.8.7 and later for reasons that baffle me.
5
+ * Some tests on Windows are now skipped unless run with elevated security.
6
+
1
7
  == 1.5.5 - 5-Jul-2011
2
8
  * Modified lastlog handling, and ignore getpwent_r and getgrent_r, on AIX.
3
9
  Thanks go to Rick Ohnemus for the spot and patches.
@@ -39,7 +45,7 @@
39
45
  * Added the Group#members method. The returns an array of users that the
40
46
  group contains.
41
47
  * Changed User#class to User#access_class for UNIX flavors to avoid
42
- conflicts with the Ruby core Object method.
48
+ conflicts with the Ruby core Object method.
43
49
  * Added more tests and renamed the test files.
44
50
  * Removed an unnecessary function call where a platform might try to
45
51
  get lastlog information even if the lastlog.h or utmp.h headers couldn't
@@ -293,7 +293,7 @@ module Sys
293
293
 
294
294
  class Admin
295
295
  # The version of the sys-admin library
296
- VERSION = '1.5.5'
296
+ VERSION = '1.5.6'
297
297
 
298
298
  # This is the error raised in the majority of cases if anything goes wrong
299
299
  # with any of the Sys::Admin methods.
@@ -4,7 +4,7 @@ require 'rubygems'
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = 'sys-admin'
7
- spec.version = '1.5.5'
7
+ spec.version = '1.5.6'
8
8
  spec.author = 'Daniel J. Berger'
9
9
  spec.license = 'Artistic 2.0'
10
10
  spec.email = 'djberg96@gmail.com'
@@ -16,6 +16,6 @@ end
16
16
 
17
17
  class TC_Sys_Admin_All < Test::Unit::TestCase
18
18
  def test_version
19
- assert_equal('1.5.5', Sys::Admin::VERSION)
19
+ assert_equal('1.5.6', Sys::Admin::VERSION)
20
20
  end
21
21
  end
@@ -4,7 +4,7 @@
4
4
  # Test suite for the Win32 version of sys-admin. Note that some of the tests
5
5
  # are numbered to ensure a certain order. That way I can add test users
6
6
  # before configuring or deleting them.
7
- #
7
+ #
8
8
  # It is assumed that this test will be run via the 'rake test' task.
9
9
  ###############################################################################
10
10
  require 'rubygems'
@@ -12,6 +12,7 @@ gem 'test-unit'
12
12
 
13
13
  require 'test/unit'
14
14
  require 'sys/admin'
15
+ require 'win32/security'
15
16
  require 'socket'
16
17
  require 'etc'
17
18
  include Sys
@@ -19,6 +20,7 @@ include Sys
19
20
  class TC_Sys_Admin_Win32 < Test::Unit::TestCase
20
21
  def self.startup
21
22
  @@host = Socket.gethostname
23
+ @@elev = Win32::Security.elevated_security?
22
24
  end
23
25
 
24
26
  def setup
@@ -33,6 +35,7 @@ class TC_Sys_Admin_Win32 < Test::Unit::TestCase
33
35
  # Admin singleton methods
34
36
 
35
37
  def test_01_add_user
38
+ omit_unless(@@elev, "insufficient privileges - skipping")
36
39
  assert_respond_to(Admin, :add_user)
37
40
  assert_nothing_raised{
38
41
  Admin.add_user(:name => 'foo', :password => 'a1b2c3D4')
@@ -40,6 +43,7 @@ class TC_Sys_Admin_Win32 < Test::Unit::TestCase
40
43
  end
41
44
 
42
45
  def test_02_config_user
46
+ omit_unless(@@elev, "insufficient privileges - skipping")
43
47
  assert_respond_to(Admin, :configure_user)
44
48
  assert_nothing_raised{
45
49
  Admin.configure_user(
@@ -50,29 +54,33 @@ class TC_Sys_Admin_Win32 < Test::Unit::TestCase
50
54
  )
51
55
  }
52
56
  end
53
-
57
+
54
58
  def test_03_delete_user
59
+ omit_unless(@@elev, "insufficient privileges - skipping")
55
60
  assert_respond_to(Admin, :delete_user)
56
61
  assert_nothing_raised{ Admin.delete_user('foo') }
57
62
  end
58
63
 
59
64
  def test_01_add_group
65
+ omit_unless(@@elev, "insufficient privileges - skipping")
60
66
  assert_respond_to(Admin, :add_group)
61
67
  assert_nothing_raised{ Admin.add_group(:name => 'bar') }
62
68
  end
63
-
69
+
64
70
  def test_02_configure_group
71
+ omit_unless(@@elev, "insufficient privileges - skipping")
65
72
  assert_respond_to(Admin, :configure_group)
66
73
  assert_nothing_raised{
67
74
  Admin.configure_group(:name => 'bar', :description => 'delete me')
68
75
  }
69
76
  end
70
-
77
+
71
78
  def test_03_delete_group
79
+ omit_unless(@@elev, "insufficient privileges - skipping")
72
80
  assert_respond_to(Admin, :delete_group)
73
81
  assert_nothing_raised{ Admin.delete_group('bar') }
74
82
  end
75
-
83
+
76
84
  def test_get_login_basic
77
85
  assert_respond_to(Admin, :get_login)
78
86
  assert_nothing_raised{ Admin.get_login }
@@ -85,13 +93,13 @@ class TC_Sys_Admin_Win32 < Test::Unit::TestCase
85
93
  def test_get_login_expected_errors
86
94
  assert_raise(ArgumentError){ Admin.get_login('foo') }
87
95
  end
88
-
96
+
89
97
  def test_get_user_basic
90
98
  assert_respond_to(Admin, :get_user)
91
99
  end
92
100
 
93
101
  def test_get_user_by_string
94
- assert_nothing_raised{ Admin.get_user(@user_name, :localaccount => true) }
102
+ assert_nothing_raised{ Admin.get_user(@user_name, :localaccount => true) }
95
103
  assert_kind_of(User, Admin.get_user(@user_name, :localaccount => true))
96
104
  end
97
105
 
@@ -99,7 +107,7 @@ class TC_Sys_Admin_Win32 < Test::Unit::TestCase
99
107
  assert_nothing_raised{ Admin.get_user(@user_id, :localaccount => true) }
100
108
  assert_kind_of(User, Admin.get_user(@user_id, :localaccount => true))
101
109
  end
102
-
110
+
103
111
  def test_get_user_by_string_with_options
104
112
  options = {:host => @@host, :localaccount => true}
105
113
  assert_nothing_raised{ Admin.get_user(@user_name, options) }
@@ -120,7 +128,7 @@ class TC_Sys_Admin_Win32 < Test::Unit::TestCase
120
128
  def test_get_user_expected_errors
121
129
  assert_raises(ArgumentError){ Admin.get_user }
122
130
  end
123
-
131
+
124
132
  def test_users_basic
125
133
  assert_respond_to(Admin, :users)
126
134
  assert_nothing_raised{ Admin.users(:localaccount => true) }
@@ -142,7 +150,7 @@ class TC_Sys_Admin_Win32 < Test::Unit::TestCase
142
150
  def test_get_group_basic
143
151
  assert_respond_to(Admin, :get_group)
144
152
  end
145
-
153
+
146
154
  def test_get_group_by_name
147
155
  assert_nothing_raised{ Admin.get_group(@group_name, :localaccount => true) }
148
156
  assert_kind_of(Group, Admin.get_group(@group_name, :localaccount => true))
@@ -152,7 +160,7 @@ class TC_Sys_Admin_Win32 < Test::Unit::TestCase
152
160
  assert_nothing_raised{ Admin.get_group(@group_id, :localaccount => true) }
153
161
  assert_kind_of(Group, Admin.get_group(@group_id, :localaccount => true))
154
162
  end
155
-
163
+
156
164
  def test_get_group_with_options
157
165
  assert_nothing_raised{ Admin.get_group(@group_name, :localaccount => true) }
158
166
  assert_kind_of(Group, Admin.get_group(@group_name, :localaccount => true))
@@ -166,7 +174,7 @@ class TC_Sys_Admin_Win32 < Test::Unit::TestCase
166
174
  def test_get_group_expected_errors
167
175
  assert_raise(ArgumentError){ Admin.get_group }
168
176
  end
169
-
177
+
170
178
  def test_groups_basic
171
179
  assert_respond_to(Admin, :groups)
172
180
  assert_nothing_raised{ Admin.groups(:localaccount => true) }
@@ -186,77 +194,77 @@ class TC_Sys_Admin_Win32 < Test::Unit::TestCase
186
194
  end
187
195
 
188
196
  # User class
189
-
197
+
190
198
  def test_user_instance_caption
191
199
  assert_respond_to(@user, :caption)
192
200
  assert_respond_to(@user, :caption=)
193
201
  end
194
-
202
+
195
203
  def test_user_instance_description
196
204
  assert_respond_to(@user, :description)
197
205
  assert_respond_to(@user, :description=)
198
206
  end
199
-
207
+
200
208
  def test_user_instance_domain
201
209
  assert_respond_to(@user, :domain)
202
210
  assert_respond_to(@user, :domain=)
203
211
  end
204
-
212
+
205
213
  def test_user_instance_password
206
214
  assert_respond_to(@user, :password)
207
215
  assert_respond_to(@user, :password=)
208
216
  end
209
-
217
+
210
218
  def test_user_instance_full_name
211
219
  assert_respond_to(@user, :full_name)
212
220
  assert_respond_to(@user, :full_name=)
213
221
  end
214
-
222
+
215
223
  def test_user_instance_name
216
224
  assert_respond_to(@user, :name)
217
225
  assert_respond_to(@user, :name=)
218
226
  end
219
-
227
+
220
228
  def test_user_instance_sid
221
229
  assert_respond_to(@user, :sid)
222
230
  assert_respond_to(@user, :sid=)
223
231
  end
224
-
232
+
225
233
  def test_user_instance_status
226
234
  assert_respond_to(@user, :status)
227
235
  assert_respond_to(@user, :status=)
228
236
  end
229
-
237
+
230
238
  def test_user_instance_disabled
231
239
  assert_respond_to(@user, :disabled?)
232
240
  assert_respond_to(@user, :disabled=)
233
241
  end
234
-
242
+
235
243
  def test_user_instance_local
236
244
  assert_respond_to(@user, :local?)
237
245
  assert_respond_to(@user, :local=)
238
246
  end
239
-
247
+
240
248
  def test_user_instance_lockout
241
249
  assert_respond_to(@user, :lockout?)
242
250
  assert_respond_to(@user, :lockout=)
243
251
  end
244
-
252
+
245
253
  def test_user_instance_password_changeable
246
254
  assert_respond_to(@user, :password_changeable?)
247
255
  assert_respond_to(@user, :password_changeable=)
248
256
  end
249
-
257
+
250
258
  def test_user_instance_password_expires
251
259
  assert_respond_to(@user, :password_expires?)
252
260
  assert_respond_to(@user, :password_expires=)
253
261
  end
254
-
262
+
255
263
  def test_user_instance_password_required
256
264
  assert_respond_to(@user, :password_required?)
257
265
  assert_respond_to(@user, :password_required=)
258
266
  end
259
-
267
+
260
268
  def test_user_instance_account_type
261
269
  assert_respond_to(@user, :account_type)
262
270
  assert_respond_to(@user, :account_type=)
@@ -266,64 +274,64 @@ class TC_Sys_Admin_Win32 < Test::Unit::TestCase
266
274
  assert_respond_to(@user, :uid)
267
275
  assert_respond_to(@user, :uid=)
268
276
  end
269
-
277
+
270
278
  def test_user_dir_basic
271
279
  assert_respond_to(@user, :dir)
272
- assert_respond_to(@user, :dir=)
280
+ assert_respond_to(@user, :dir=)
273
281
  end
274
-
282
+
275
283
  def test_user_dir
276
284
  assert_nothing_raised{ @user = Admin.get_user(@user_name, :localaccount => true) }
277
285
  assert_kind_of([String, NilClass], @user.dir)
278
286
  end
279
-
287
+
280
288
  # Group class
281
-
289
+
282
290
  def test_group_instance_caption
283
291
  assert_respond_to(@group, :caption)
284
292
  assert_respond_to(@group, :caption=)
285
293
  end
286
-
294
+
287
295
  def test_group_instance_description
288
296
  assert_respond_to(@group, :description)
289
297
  assert_respond_to(@group, :description=)
290
298
  end
291
-
299
+
292
300
  def test_group_instance_domain
293
301
  assert_respond_to(@group, :domain)
294
302
  assert_respond_to(@group, :domain=)
295
303
  end
296
-
304
+
297
305
  def test_group_instance_install_date
298
306
  assert_respond_to(@group, :install_date)
299
307
  assert_respond_to(@group, :install_date=)
300
308
  end
301
-
309
+
302
310
  def test_group_instance_name
303
311
  assert_respond_to(@group, :name)
304
312
  assert_respond_to(@group, :name)
305
313
  end
306
-
314
+
307
315
  def test_group_instance_gid
308
316
  assert_respond_to(@group, :gid)
309
317
  assert_respond_to(@group, :gid=)
310
318
  end
311
-
319
+
312
320
  def test_group_instance_status
313
321
  assert_respond_to(@group, :status)
314
322
  assert_respond_to(@group, :status=)
315
323
  end
316
-
324
+
317
325
  def test_group_instance_sid
318
326
  assert_respond_to(@group, :sid)
319
327
  assert_respond_to(@group, :sid=)
320
328
  end
321
-
329
+
322
330
  def test_group_instance_sid_type
323
331
  assert_respond_to(@group, :sid_type)
324
332
  assert_respond_to(@group, :sid_type=)
325
333
  end
326
-
334
+
327
335
  def test_group_instance_local
328
336
  assert_respond_to(@group, :local?)
329
337
  assert_respond_to(@group, :local=)
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sys-admin
3
3
  version: !ruby/object:Gem::Version
4
- hash: 9
5
- prerelease:
4
+ hash: 15
5
+ prerelease: false
6
6
  segments:
7
7
  - 1
8
8
  - 5
9
- - 5
10
- version: 1.5.5
9
+ - 6
10
+ version: 1.5.6
11
11
  platform: x86-mingw32
12
12
  authors:
13
13
  - Daniel J. Berger
@@ -15,7 +15,8 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-07-05 00:00:00 Z
18
+ date: 2011-07-30 00:00:00 -06:00
19
+ default_executable:
19
20
  dependencies:
20
21
  - !ruby/object:Gem::Dependency
21
22
  name: test-unit
@@ -73,6 +74,7 @@ files:
73
74
  - test/test_sys_admin.rb
74
75
  - test/test_sys_admin_unix.rb
75
76
  - test/test_sys_admin_windows.rb
77
+ has_rdoc: true
76
78
  homepage: http://www.github.com/djberg96/sysutils
77
79
  licenses:
78
80
  - Artistic 2.0
@@ -102,7 +104,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
102
104
  requirements: []
103
105
 
104
106
  rubyforge_project: sysutils
105
- rubygems_version: 1.8.5
107
+ rubygems_version: 1.3.7
106
108
  signing_key:
107
109
  specification_version: 3
108
110
  summary: A unified, cross platform replacement for the "etc" library.