public function ParserTest::testDifferentDaysOfForecasts in Weather 8
Same name and namespace in other branches
- 2.0.x tests/src/Functional/ParserTest.php \Drupal\Tests\weather\Functional\ParserTest::testDifferentDaysOfForecasts()
Test the parser with different days of forecast data.
File
- tests/
src/ Functional/ ParserTest.php, line 532
Class
- ParserTest
- Tests parsing of XML weather forecasts.
Namespace
Drupal\Tests\weather\FunctionalCode
public function testDifferentDaysOfForecasts() {
// These are all days from the forecast.
$days = [
'2013-10-07',
'2013-10-08',
'2013-10-09',
'2013-10-10',
'2013-10-11',
'2013-10-12',
'2013-10-13',
'2013-10-14',
'2013-10-15',
'2013-10-16',
'2013-10-17',
];
// Set a fixed time for testing to 2013-10-07 20:00:00 UTC.
$config = \Drupal::configFactory()
->getEditable('weather.settings');
$config
->set('weather_time_for_testing', 1381176000)
->save();
// Fetch all weather forecasts for Hamburg
// and check the correct days of forecasts.
$weather = $this
->weatherGetWeather('geonames_2911298', 0, TRUE);
$this
->assertIdentical(array_keys($weather['forecasts']), $days);
// Go a few days forward ...
// Set a fixed time for testing to 2013-10-12 10:00:00 UTC.
$config = \Drupal::configFactory()
->getEditable('weather.settings');
$config
->set('weather_time_for_testing', 1381572000)
->save();
// Fetch all weather forecasts for Hamburg
// and check the correct days of forecasts.
$weather = $this
->weatherGetWeather('geonames_2911298', 0, TRUE);
$this
->assertIdentical(array_keys($weather['forecasts']), array_slice($days, 5));
}