You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

71 lines
1.6 KiB

  1. <?php
  2. /**
  3. * PhpUnderControl_TaskMQDB_Test
  4. *
  5. * 针对 ../../MQ/DB.php Task_MQ_DB 类的PHPUnit单元测试
  6. *
  7. * @author: dogstar 20150516
  8. */
  9. require_once dirname(__FILE__) . '/../test_env.php';
  10. if (!class_exists('Task_MQ_DB')) {
  11. require dirname(__FILE__) . '/../../MQ/DB.php';
  12. }
  13. class PhpUnderControl_TaskMQDB_Test extends PHPUnit_Framework_TestCase
  14. {
  15. public $taskMQDB;
  16. protected function setUp()
  17. {
  18. parent::setUp();
  19. $this->taskMQDB = new Task_MQ_DB();
  20. }
  21. protected function tearDown()
  22. {
  23. }
  24. /**
  25. * @group testAdd
  26. */
  27. public function testAdd()
  28. {
  29. $service = 'Demo.Test';
  30. $params = array (
  31. 'id' => 1,
  32. );
  33. $rs = $this->taskMQDB->add($service, $params);
  34. $this->assertTrue($rs);
  35. }
  36. /**
  37. * @group testPop
  38. */
  39. public function testPop()
  40. {
  41. $this->assertEmpty($this->taskMQDB->pop('NoThisServcie.Index'));
  42. $service = 'Demo.Update';
  43. $num = '1';
  44. $rs = $this->taskMQDB->add($service, array('name' => 'phalapi'));
  45. $rs = $this->taskMQDB->add($service, array('name' => 'net'));
  46. $rs = $this->taskMQDB->add($service, array('name' => 'net'));
  47. $rs = $this->taskMQDB->add($service, array('name' => 'net'));
  48. $rs = $this->taskMQDB->pop($service, 1);
  49. $this->assertEquals(array(array('name' => 'phalapi')), $rs);
  50. $rs = $this->taskMQDB->pop($service, 2);
  51. $this->assertEquals(array(array('name' => 'net'), array('name' => 'net')), $rs);
  52. $rs = $this->taskMQDB->pop($service, 10);
  53. $this->assertCount(1, $rs);
  54. }
  55. }