|
- <?php
- /**
- * PhpUnderControl_PhalApiApi_Test
- *
- * 针对 ../PhalApi/Api.php PhalApi_Api 类的PHPUnit单元测试
- *
- * @author: dogstar 20141004
- */
-
- require_once dirname(__FILE__) . '/test_env.php';
-
- if (!class_exists('PhalApi_Api')) {
- require dirname(__FILE__) . '/../PhalApi/Api.php';
- }
-
- class PhpUnderControl_PhalApiApi_Test extends PHPUnit_Framework_TestCase
- {
- public $coreApi;
-
- protected function setUp()
- {
- parent::setUp();
-
- $this->coreApi = new PhalApi_Api();
- }
-
- protected function tearDown()
- {
- DI()->filter = NULL;
- }
-
- /**
- * @group testInitialize
- */
- public function testInitialize()
- {
- DI()->request = new PhalApi_Request(array('service' => 'Default.Index'));
- $rs = $this->coreApi->init();
- }
-
-
- public function testInitializeWithWrongSign()
- {
- $data = array();
- $data['service'] = 'Default.Index';
-
- DI()->request = new PhalApi_Request($data);
- $rs = $this->coreApi->init();
- }
-
- public function testInitializeWithRightSign()
- {
- $data = array();
- $data['service'] = 'Default.Index';
-
- DI()->request = new PhalApi_Request($data);
- $rs = $this->coreApi->init();
-
- }
-
- public function testSetterAndGetter()
- {
- $this->coreApi->username = 'phalapi';
- $this->assertEquals('phalapi', $this->coreApi->username);
- }
-
- /**
- * @expectedException PhalApi_Exception_InternalServerError
- */
- public function testGetUndefinedProperty()
- {
- $this->coreApi->name = 'PhalApi';
- $rs = $this->coreApi->noThisKey;
- }
-
- public function testApiImpl()
- {
- $data = array();
- $data['service'] = 'Impl.Add';
- $data['version'] = '1.1.0';
- $data['left'] = '6';
- $data['right'] = '1';
-
- DI()->request = new PhalApi_Request($data);
- DI()->filter = 'PhalApi_Filter_Impl';
-
- $impl = new PhalApi_Api_Impl();
- $impl->init();
-
- $rs = $impl->add();
- $this->assertEquals(7, $rs);
- }
-
- /**
- * @expectedException PhalApi_Exception_InternalServerError
- */
- public function testIllegalFilter()
- {
- DI()->filter = 'PhalApi_Filter_Impl_NotFound';
-
- $impl = new PhalApi_Api_Impl();
- $impl->init();
- }
- }
|