package AuthService; sub login { my ($user, $password) = @_; return (defined($user) && defined($password) && $user eq "eric" && $password eq "swordfish"); } 1; package main; use Test::More tests => 7; ok(AuthService::login("eric", "swordfish"), "good user/password combo"); ok(!AuthService::login("", "swordfish"), "no user, good passwd"); ok(!AuthService::login(undef, "swordfish"), "undef user, good passwd"); ok(!AuthService::login("eric", ""), "good user, undef password"); ok(!AuthService::login("eric", undef), "good user, no password"); ok(!AuthService::login("", ""), "Empty user/passord"); ok(!AuthService::login(), "undef user/password");