X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=tests%2FTimeZoneTest.php;h=127fdc192ccab36ec57427ba270f444f9108b29f;hb=44acf706812bc77812e6648c2cc28af36e172a14;hp=2976d11612765dde427242073320c4d7f32bdb97;hpb=86deafe0ff5a22a37255546cf82325e89bf272b1;p=github%2Fshaarli%2FShaarli.git
diff --git a/tests/TimeZoneTest.php b/tests/TimeZoneTest.php
index 2976d116..127fdc19 100644
--- a/tests/TimeZoneTest.php
+++ b/tests/TimeZoneTest.php
@@ -10,25 +10,46 @@ require_once 'application/TimeZone.php';
*/
class TimeZoneTest extends PHPUnit_Framework_TestCase
{
+ /**
+ * @var array of timezones
+ */
+ protected $installedTimezones;
+
+ public function setUp()
+ {
+ $this->installedTimezones = [
+ 'Antarctica/Syowa',
+ 'Europe/London',
+ 'Europe/Paris',
+ 'UTC'
+ ];
+ }
+
/**
* Generate a timezone selection form
*/
public function testGenerateTimeZoneForm()
{
- $generated = generateTimeZoneForm();
+ $expected = [
+ 'continents' => [
+ 'Antarctica',
+ 'Europe',
+ 'UTC',
+ 'selected' => '',
+ ],
+ 'cities' => [
+ ['continent' => 'Antarctica', 'city' => 'Syowa'],
+ ['continent' => 'Europe', 'city' => 'London'],
+ ['continent' => 'Europe', 'city' => 'Paris'],
+ ['continent' => 'UTC', 'city' => 'UTC'],
+ 'selected' => '',
+ ]
+ ];
- // HTML form
- $this->assertStringStartsWith('Continent:
', $generated[0]);
+ list($continents, $cities) = generateTimeZoneData($this->installedTimezones);
- // Javascript handler
- $this->assertStringStartsWith('', $generated[1]);
+ $this->assertEquals($expected['continents'], $continents);
+ $this->assertEquals($expected['cities'], $cities);
}
/**
@@ -36,28 +57,26 @@ class TimeZoneTest extends PHPUnit_Framework_TestCase
*/
public function testGenerateTimeZoneFormPreselected()
{
- $generated = generateTimeZoneForm('Antarctica/Syowa');
-
- // HTML form
- $this->assertStringStartsWith('Continent:
', $generated[0]);
+ $expected = [
+ 'continents' => [
+ 'Antarctica',
+ 'Europe',
+ 'UTC',
+ 'selected' => 'Antarctica',
+ ],
+ 'cities' => [
+ ['continent' => 'Antarctica', 'city' => 'Syowa'],
+ ['continent' => 'Europe', 'city' => 'London'],
+ ['continent' => 'Europe', 'city' => 'Paris'],
+ ['continent' => 'UTC', 'city' => 'UTC'],
+ 'selected' => 'Syowa',
+ ]
+ ];
+ list($continents, $cities) = generateTimeZoneData($this->installedTimezones, 'Antarctica/Syowa');
- // Javascript handler
- $this->assertStringStartsWith('', $generated[1]);
+ $this->assertEquals($expected['continents'], $continents);
+ $this->assertEquals($expected['cities'], $cities);
}
/**