home *** CD-ROM | disk | FTP | other *** search
- <?php
-
- require_once 'PHPUnit.php';
- require_once 'File/Passwd.php';
-
- $GLOBALS['_EXT_'] = array('Unix', 'Cvs', 'Smb', 'Authbasic', 'Authdigest');
-
- /**
- * TestCase for File_PasswdTest class
- * Generated by PHPEdit.XUnit Plugin
- *
- */
- class File_PasswdTest extends PHPUnit_TestCase{
- /**
- * Constructor
- * @param string $name The name of the test.
- * @access protected
- */
- function File_PasswdTest($name){
- $this->PHPUnit_TestCase($name);
- }
-
- /**
- * Called before the test functions will be executed this function is defined in PHPUnit_TestCase and overwritten here
- * @access protected
- */
- function setUp(){
-
- }
-
- /**
- * Called after the test functions are executed this function is defined in PHPUnit_TestCase and overwritten here
- * @access protected
- */
- function tearDown(){
-
- }
-
- /**
- * Regression test for File_Passwd.apiVersion method
- * @access public
- */
- function testapiVersion(){
- $this->assertEquals('1.0.0', File_Passwd::apiVersion());
- }
-
- /**
- * Regression test for File_Passwd.salt method
- * @access public
- */
- function testsalt(){
- $this->assertEquals(strlen(File_Passwd::salt()), strlen(File_Passwd::salt(2)));
- $regex = '/^[' . preg_quote($GLOBALS['_FILE_PASSWD_64'], '/') . ']+$/';
- $this->assertTrue(preg_match($regex, File_Passwd::salt(20)));
- }
-
- /**
- * Regression test for File_Passwd.crypt_des method
- * @access public
- */
- function testcrypt_des(){
- $this->assertEquals(crypt('a','ab'), File_Passwd::crypt_des('a', 'ab'));
- }
-
- /**
- * Regression test for File_Passwd.crypt_md5 method
- * @access public
- */
- function testcrypt_md5(){
- $this->assertEquals(crypt('a','$1$ab'), File_Passwd::crypt_des('a', '$1$ab'));
- }
-
- /**
- * Regression test for File_Passwd.crypt_sha method
- * @access public
- */
- function testcrypt_sha(){
- $sha = '{SHA}2iNhTgJGmg18e9G9q1ycR0sZBNw=';
- $this->assertEquals($sha, File_Passwd::crypt_sha('ab'));
- }
-
- /**
- * Regression test for File_Passwd.crypt_apr_md5 method
- * @access public
- */
- function testcrypt_apr_md5(){
- $apr = '$apr1$ab$KfzLTsXi6eQkfErEn8CHY.';
- $this->assertEquals($apr, File_Passwd::crypt_apr_md5('ab', 'ab'));
- }
-
- /**
- * Regression test for File_Passwd.factory method
- * @access public
- */
- function testfactory(){
- foreach($GLOBALS['_EXT_'] as $ext){
- $o = File_Passwd::factory($ext);
- $this->assertTrue(is_a($o, "File_Passwd_$ext"));
- }
- }
-
- /**
- * Regression test for File_Passwd.staticAuth method
- * @access public
- */
- function teststaticAuth(){
- foreach($GLOBALS['_EXT_'] as $ext){
- $pwfile = 'passwd.' . strToLower($ext) . '.txt';
- $option = (($ext == 'Authdigest') ? 'realm1' : (($ext == 'Smb') ? 'nt' : 'des'));
- $error = File_Passwd::staticAuth($ext, $pwfile, 'mike', 123, $option);
- $this->assertTrue($error);
- if (PEAR::isError($error)) {
- echo "File_Passwd_$ext::staticAuth() ". $error->getMessage() . "\n";
- }
- }
-
- }
-
- }
-
- ?>