/** * Test runJob method with different states. */ public function testCustomUrlCustomQueueUrl() { $mock = new MockHandler([new Response(200, ['Content-Type' => 'application/json'], '{ "id": 123456, "url": "https://syrup-testing.keboola.com/queue/job/123456", "status": "waiting" }'), new Response(200, ['Content-Type' => 'application/json'], '{ "id": 123456, "status": "processing" }'), new Response(200, ['Content-Type' => 'application/json'], '{ "id": 123456, "status": "success" }')]); // Add the history middleware to the handler stack. $container = []; $history = Middleware::history($container); $stack = HandlerStack::create($mock); $stack->push($history); $client = new Client(['token' => 'test', 'handler' => $stack, 'url' => 'http://syrup.local', 'queueUrl' => 'http://queue.local']); $response = $client->runJob("test-component", ["config" => 1]); $this->assertCount(3, $container); /** @var Request $request */ $request = $container[0]['request']; $this->assertEquals("http://syrup.local/test-component/run", $request->getUri()->__toString()); $request = $container[1]['request']; $this->assertEquals("http://queue.local/queue/job/123456", $request->getUri()->__toString()); $request = $container[2]['request']; $this->assertEquals("http://queue.local/queue/job/123456", $request->getUri()->__toString()); $this->assertEquals("success", $response["status"]); }