/** * Provides options. * * @return array */ public function optionsProvider() { return [[Search::createWithPlace('Chicago, IL')->setLimit(1)->setRadius(500), ['near' => 'Chicago, IL', 'limit' => 1, 'radius' => 500]], [Search::createWithCoordinates(new Coordinates(40.12, 50.12))->setLimit(40)->setRadius(10), ['ll' => new Coordinates(40.12, 50.12), 'limit' => 40, 'radius' => 10]], [Search::createWithCoordinates(new Coordinates(40.12, 50.12))->setRadius(10), ['ll' => new Coordinates(40.12, 50.12), 'radius' => 10]]]; }
/** * Test searching for venues. */ public function testSearchVenues() { $body = '{"meta": {"code": 200, "requestId": "234234"},"response": {"venues": [{"id": "430d0a00f964a5203e271fe3", "name": "Brooklyn Bridge Park"}, {"id": "430d0a00f964a5203e271fe3", "name": "Brooklyn Bridge Park"}]}}'; $venue = $this->getMockBuilder(Venue::class)->disableOriginalConstructor()->getMock(); $venueFactory = $this->getMockVenueFactory(); $venueFactory->expects($this->exactly(2))->method('create')->willReturn($venue); $client = $this->getClient($this->getMockResponse($body), $venueFactory); $venues = $client->search(Search::createWithPlace('Chicago, IL')); $this->assertCount(2, $venues); $this::assertEquals([$venue, $venue], $venues); $this->expectException(InvalidResponseException::class); $client = $this->getClient($this->getMockResponse('{"meta": {"invalid": "content"}}')); $client->search(Search::createWithPlace('Chicago, IL')); }