Source of file RedisQueueTest.php
Size: 1,116 Bytes - Last Modified: 2021-12-23T10:07:35+00:00
/var/www/docs.ssmods.com/process/src/tests/functional/RedisQueueTest.php
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 | <?php use Mockery as m; class RedisQueueTest extends SapphireTest { public function testInstantiationOfRedisAdapter() { $msg = new FooBarMessage(); $this->mockPredis($msg); $adapter = Ntb\QueueAdapter\QueueHelper::get_queue(); $adapter->publish($msg); } /** * @param Ntb\QueueAdapter\IMessage $msg */ private function mockPredis($msg=null) { $clientMock = m::mock('overload:Predis\Client'); $clientMock->shouldReceive('rpush') ->once() ->withArgs([$msg->getTopic(), json_encode($msg->getData())]) ->andReturn(function() use ($msg) { if(!$msg) { throw new RedisException(); } }); } } class FooBarMessage implements TestOnly, Ntb\QueueAdapter\IMessage { /** * @return array */ function getData() { return ["foo" => 1, "bar" => 2]; } /** * @return string */ function getTopic() { return "foobar"; } /** * @param array $data */ function setData($data) {} } |