GearmanWorkerDescribeCommandTest.php 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. <?php
  2. /**
  3. * Gearman Bundle for Symfony2
  4. *
  5. * For the full copyright and license information, please view the LICENSE
  6. * file that was distributed with this source code.
  7. *
  8. * Feel free to edit as you please, and have fun.
  9. *
  10. * @author Marc Morera <yuhu@mmoreram.com>
  11. */
  12. namespace Mmoreram\GearmanBundle\Tests\Command;
  13. use PHPUnit_Framework_TestCase;
  14. use Symfony\Component\Console\Input\InputInterface;
  15. use Symfony\Component\Console\Output\OutputInterface;
  16. use Symfony\Component\HttpKernel\KernelInterface;
  17. use Mmoreram\GearmanBundle\Command\GearmanJobDescribeCommand;
  18. use Mmoreram\GearmanBundle\Service\GearmanClient;
  19. use Mmoreram\GearmanBundle\Service\GearmanDescriber;
  20. /**
  21. * Class GearmanWorkerDescribeCommandTest
  22. */
  23. class GearmanWorkerDescribeCommandTest extends PHPUnit_Framework_TestCase
  24. {
  25. /**
  26. * test run
  27. */
  28. public function testRun()
  29. {
  30. $worker = array('xxx');
  31. /**
  32. * @var GearmanJobDescribeCommand $command
  33. * @var InputInterface $input
  34. * @var OutputInterface $output
  35. * @var KernelInterface $kernel
  36. * @var GearmanClient $gearmanClient
  37. * @var GearmanDescriber $gearmanDescriber
  38. */
  39. $command = $this
  40. ->getMockBuilder('Mmoreram\GearmanBundle\Command\GearmanWorkerDescribeCommand')
  41. ->setMethods(null)
  42. ->getMock();
  43. $input = $this
  44. ->getMockBuilder('Symfony\Component\Console\Input\InputInterface')
  45. ->disableOriginalConstructor()
  46. ->setMethods(array())
  47. ->getMock();
  48. $output = $this
  49. ->getMockBuilder('Symfony\Component\Console\Output\OutputInterface')
  50. ->disableOriginalConstructor()
  51. ->setMethods(array())
  52. ->getMock();
  53. $kernel = $this
  54. ->getMockBuilder('Symfony\Component\HttpKernel\KernelInterface')
  55. ->disableOriginalConstructor()
  56. ->setMethods(array())
  57. ->getMock();
  58. $gearmanClient = $this
  59. ->getMockBuilder('Mmoreram\GearmanBundle\Service\GearmanClient')
  60. ->disableOriginalConstructor()
  61. ->setMethods(array(
  62. 'getWorker',
  63. ))
  64. ->getMock();
  65. $gearmanClient
  66. ->expects($this->once())
  67. ->method('getWorker')
  68. ->will($this->returnValue($worker));
  69. $gearmanDescriber = $this
  70. ->getMockBuilder('Mmoreram\GearmanBundle\Service\GearmanDescriber')
  71. ->disableOriginalConstructor()
  72. ->setMethods(array(
  73. 'describeWorker',
  74. ))
  75. ->getMock();
  76. $gearmanDescriber
  77. ->expects($this->once())
  78. ->method('describeWorker')
  79. ->with($this->equalTo($output), $this->equalTo($worker));
  80. $kernel
  81. ->expects($this->any())
  82. ->method('getEnvironment')
  83. ->will($this->returnValue('dev'));
  84. $command
  85. ->setGearmanClient($gearmanClient)
  86. ->setGearmanDescriber($gearmanDescriber)
  87. ->setKernel($kernel)
  88. ->run($input, $output);
  89. }
  90. }