⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 customexporttest.php

📁 国外的人才求职招聘最新版
💻 PHP
📖 第 1 页 / 共 2 页
字号:
<?php// Call CustomExportTest::main() if this source file is executed directly.if (!defined("PHPUnit_MAIN_METHOD")) {    define("PHPUnit_MAIN_METHOD", "CustomExportTest::main");}require_once "PHPUnit/Framework/TestCase.php";require_once "PHPUnit/Framework/TestSuite.php";require_once ROOT_PATH . '/lib/models/eimadmin/CustomExport.php';require_once "testConf.php";/** * Test class for CustomExport. * Generated by PHPUnit_Util_Skeleton on 2008-01-08 at 19:19:52. */class CustomExportTest extends PHPUnit_Framework_TestCase {    /**     * Runs the test methods of this class.     *     * @access public     * @static     */    public static function main() {        require_once "PHPUnit/TextUI/TestRunner.php";        $suite  = new PHPUnit_Framework_TestSuite("CustomExportTest");        $result = PHPUnit_TextUI_TestRunner::run($suite);    }    /**     * Sets up the fixture, for example, open a network connection.     * This method is called before a test is executed.     *     * @access protected     */    protected function setUp() {   		$conf = new Conf();    	$this->connection = mysql_connect($conf->dbhost.":".$conf->dbport, $conf->dbuser, $conf->dbpass);        mysql_select_db($conf->dbname);    	$this->_runQuery("TRUNCATE TABLE hs_hr_custom_export");		// insert some test data		$this->_runQuery("INSERT INTO hs_hr_custom_export(export_id, name, fields, headings) VALUES (1, 'Export 1', 'empId,lastName,firstName,middleName,street1,street2,city', '')");		$this->_runQuery("INSERT INTO hs_hr_custom_export(export_id, name, fields, headings) VALUES (2, 'Export 2', 'empId,lastName,firstName,city', 'Employee Id,Last Name,First Name,City')");		$this->_runQuery("INSERT INTO hs_hr_custom_export(export_id, name, fields, headings) VALUES (3, 'Export 3', 'empId,street1,street2,city', 'Employee Id,Address1, Address2, City')");		UniqueIDGenerator::getInstance()->resetIDs();    }    /**     * Tears down the fixture, for example, close a network connection.     * This method is called after a test is executed.     *     * @access protected     */    protected function tearDown() {    	$this->_runQuery("TRUNCATE TABLE hs_hr_custom_export");    	UniqueIDGenerator::getInstance()->resetIDs();    }    /**     * Implement getCustomExport     */    public function testGetCustomExport() {    	// non existent id    	$this->assertNull(CustomExport::getCustomExport(10));    	// invalid id    	try {    		$export = CustomExport::getCustomExport('X1');    		$this->fail("Should throw exception on invalid parameter");	    } catch (CustomExportException $e) {	    	$this->assertEquals(CustomExportException::INVALID_PARAMETERS, $e->getCode());	    }	    // valid id    	$export = CustomExport::getCustomExport(1);    	$this->assertEquals(1, $export->getId());    	$this->assertEquals('Export 1', $export->getName());    	$assignedFields = $export->getAssignedFields();    	$expected = array('empId','lastName','firstName','middleName','street1','street2','city');    	$this->assertTrue(is_array($assignedFields));    	$this->assertEquals(count($expected), count($assignedFields));		$diff = array_diff_assoc($expected, $assignedFields);		$this->assertEquals(0, count($diff), "Assigned fields not correct");    	$headers = $export->getHeadings();    	$this->assertTrue(is_array($headers));    	$this->assertEquals(0, count($headers));    	$export = CustomExport::getCustomExport(2);    	$this->assertEquals(2, $export->getId());    	$this->assertEquals('Export 2', $export->getName());    	$assignedFields = $export->getAssignedFields();    	$expected = array('empId','lastName','firstName','city');    	$this->assertTrue(is_array($assignedFields));    	$this->assertEquals(count($expected), count($assignedFields));		$diff = array_diff_assoc($expected, $assignedFields);		$this->assertEquals(0, count($diff), "Assigned fields not correct");    	$headers = $export->getHeadings();    	$expectedHeader = array('Employee Id','Last Name','First Name','City');    	$this->assertTrue(is_array($headers));    	$this->assertEquals(count($expectedHeader), count($headers));		$diff = array_diff_assoc($expectedHeader, $headers);		$this->assertEquals(0, count($diff), "Header fields not correct");    }    /**     * Test the getAllFields method     */    public function testGetAllFields() {    	$allFields = CustomExport::getAllFields();    	$this->assertTrue(!empty($allFields));    	$this->assertTrue(is_array($allFields));		// compare arrays considering order		$expected = array("empId", "lastName",  "firstName", "middleName", "street1", "street2", "city",                           "state", "zip", "gender", "birthDate", "ssn", "empStatus", "joinedDate", "workStation", "location", "custom1", "custom2",                           "custom3", "custom4", "custom5", "custom6", "custom7", "custom8", "custom9", "custom10",                           "workState", "salary", "payFrequency",		                   "FITWStatus", "FITWExemptions", "SITWState", "SITWStatus", "SITWExemptions",                           "SUIState", "DD1Routing", "DD1Account", "DD1Amount",                           "DD1AmountCode", "DD1Checking", "DD2Routing",		                   "DD2Account", "DD2Amount", "DD2AmountCode", "DD2Checking");		$diff = array_diff_assoc($expected, $allFields);		$this->assertEquals(0, count($diff), "Incorrect fields returned");		// verify that there are no duplicates		$unique = array_unique($allFields);		$this->assertEquals(count($unique), count($allFields), "Duplicate field names found!");		// verify that none of the fields have a comma in them		foreach ($allFields as $field) {			$this->assertTrue((strpos($field, ",") === false), "Field name contains comma");		}    }    /**     * Test method for getCustomExportList().     */    public function testGetCustomExportList() {    	$list = CustomExport::getCustomExportList();    	$this->assertTrue(is_array($list));    	$this->assertEquals(3, count($list));		$expected = array(1, 2, 3);		foreach ($list as $export) {			$key = array_search($export->getId(), $expected);			$this->assertTrue($key !== false);			unset($expected[$key]);		}		$this->assertTrue(empty($expected));    	$this->_runQuery("DELETE FROM hs_hr_custom_export");    	$list = CustomExport::getCustomExportList();    	$this->assertTrue(is_array($list));    	$this->assertEquals(0, count($list));    }    /**     * Test for getCustomExportListForView().     */    public function testGetCustomExportListForView() {    	$list = CustomExport::getCustomExportListForView(1,"","");    	$this->assertTrue(is_array($list));    	$this->assertEquals(3, count($list));		$expected = array(1=>'Export 1', 2=>'Export 2', 3=>'Export 3');		foreach ($list as $export) {			$id = $export[0];			$name = $export[1];			$this->assertTrue(array_key_exists($id, $expected));			$this->assertEquals($expected[$id], $name);			unset($expected[$id]);		}		$this->assertTrue(empty($expected));    	$this->_runQuery("DELETE FROM hs_hr_custom_export");    	$list = CustomExport::getCustomExportListForView(1,"","");    	$this->assertNull($list);    }    /**     * Test the getAvailableFields() method     */    public function testGetAvailableFields() {    	$allFields = CustomExport::getAllFields();    	$allCount = count($allFields);    	$export = new CustomExport();		$export->setName("NewExport12");		// Assign everything		$export->setAssignedFields($allFields);		$available = $export->getAvailableFields();		$this->assertTrue(is_array($available));		$this->assertEquals(0, count($available));		// Assign 3 fields		$assign = array("empId", "firstName","gender");		$export->setAssignedFields($assign);		$available = $export->getAvailableFields();		$this->assertTrue(is_array($available));		$this->assertEquals($allCount - 3, count($available));		$expected = $allFields;		unset($expected[array_search("empId", $expected)]);		unset($expected[array_search("firstName", $expected)]);		unset($expected[array_search("gender", $expected)]);		// Verify arrays equal		$diff = array_diff($expected, $available);		$this->assertEquals(0, count($diff), "Arrays should be equal");    }    /**     * Test deleteExports() method     */    public function testDeleteExports() {		$countBefore = $this->_count();		// invalid id parameter		try {			$deleted = CustomExport::deleteExports(1);			$this->fail("Should throw an exception on invalid parameter");		} catch (CustomExportException $e) {			$this->assertEquals(CustomExportException::INVALID_PARAMETERS, $e->getCode());		}		try {			$deleted = CustomExport::deleteExports(array(1, "xyz"));			$this->fail("Should throw an exception on invalid parameter");		} catch (CustomExportException $e) {			$this->assertEquals(CustomExportException::INVALID_PARAMETERS, $e->getCode());		}		// empty array		$ids = array();		$deleted = CustomExport::deleteExports($ids);		$this->assertEquals(0, $deleted);		$count = $this->_count();		$this->assertEquals($countBefore, $count);		// one id		$ids = array(1);		$deleted = CustomExport::deleteExports($ids);		$this->assertEquals(1, $deleted);		$count = $this->_count();		$this->assertEquals($countBefore - 1, $count);		// two id's		$ids = array(2, 3);		$deleted = CustomExport::deleteExports($ids);		$this->assertEquals(2, $deleted);		$count = $this->_count();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -