> On Tue, Jun 28, 2005 at 03:24:51PM +0100, Clayton, Nik wrote: > > user_ok(name => 'nik', uid => 1000, shell => '/bin/tcsh', > > 'Check nik\'s account'); > > My only thought is I would use a hash ref. > > user_ok( { name => 'nik', uid => 1000, shell => '/bin/tcsh' }, > "Check nik's account" ); > > Just to make it a bit clearer what's going on. A hash followed by a > scalar as an argument list is a little weird.
Ye-es. I'm um-ing and ah-ing about that at the moment. > > homedir_ok() verifies that the home directory for the given > > user exists, is owned/group owned by that user, and has a given > > set of permissions. > > > > homedir_ok(name => nik, uid => 1000, gid => 1000, perm => 0755, > > 'Check nik\'s home directory'); > > Is it necessary to tell homedir_ok() what the proper uid and > gid is? Can't it figure it out from the name? In fact, wouldn't that > be more robust since the uid/gid on the system might change but the name > will stay the same. homedir_ok() needs the option, as it's possible that a user's home directory might not be owned by the given owner or group (we have accounts like that here... yeah, I know). uid and gid could probably be made smart. If the value =~ /^\d+$/ then use that, otherwise do getpwnam()/getgrnam() to determine the correct value. Any concerns about the namespace? I thought perhaps Test::Unix::User Test::Unix::Group might be better, but I'm open to suggestions. N