/** * Test20205 * * @return void */ public function test20205() { $mock = new HTTP_Request2_Adapter_Mock(); $mock->addResponse(fopen(__DIR__ . '/responses/capabilities.xml', 'rb')); $mock->addResponse(fopen(__DIR__ . '/responses/PEARBug20205_moskau_ru.xml', 'rb')); $mock->addResponse(fopen(__DIR__ . '/responses/PEARBug20205_moskau_en.xml', 'rb')); $mock->addResponse(fopen(__DIR__ . '/responses/PEARBug20205_russia_en.xml', 'rb')); $mock->addResponse(fopen(__DIR__ . '/responses/PEARBug20205_russia_fr.xml', 'rb')); $config = array('adapter' => $mock, 'server' => 'http://api06.dev.openstreetmap.org/'); $osm = new Services_OpenStreetMap($config); $osm->getConfig()->setAcceptLanguage('ru,en-AU'); $test = $osm->getPlace('Moskau'); $attribs = $test[0]->attributes(); $display = (string) $attribs['display_name']; $expected = "Москва, " . "Центральный федеральный округ, " . "Российская Федерация"; $this->assertEquals($display, $expected); $osm->getConfig()->setAcceptLanguage('en'); $test = $osm->getPlace('Moskau'); $attribs = $test[0]->attributes(); $display = (string) $attribs['display_name']; $expected = 'Moscow, Central Federal District, Russian Federation'; $this->assertEquals($display, $expected); $test = $osm->getPlace('Russia'); $attribs = $test[0]->attributes(); $display = (string) $attribs['display_name']; $expected = 'Russian Federation'; $this->assertEquals($display, $expected); $osm->getConfig()->setAcceptLanguage('fr'); $test = $osm->getPlace('Russia'); $attribs = $test[0]->attributes(); $display = (string) $attribs['display_name']; $expected = 'Fédération de Russie'; $this->assertEquals($display, $expected); }
/** * Test PEAR Bug 20205 * * @return void */ public function test20205() { $mock = new HTTP_Request2_Adapter_Mock(); $mock->addResponse(fopen(__DIR__ . '/responses/nominatim_search_20205_1.xml', 'rb')); $mock->addResponse(fopen(__DIR__ . '/responses/nominatim_search_20205_2.xml', 'rb')); $osm = new Services_OpenStreetMap(array('adapter' => $mock)); $osm->getConfig()->setAcceptLanguage('en'); $test = $osm->getPlace('Moskau'); $attribs = $test[0]->attributes(); $display = (string) $attribs['display_name']; $this->assertEquals("Moscow, Central Federal District, Russian Federation", $display); $osm->getConfig()->setAcceptLanguage('ru,en-AU'); $test = $osm->getPlace('Moscow'); $attribs = $test[0]->attributes(); $display = (string) $attribs['display_name']; $this->assertEquals("Москва, " . "Центральный федеральный округ, " . "Российская Федерация", $display); }