summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGreg Roach <fisharebest@webtrees.net>2019-11-06 21:29:03 +0000
committerGreg Roach <fisharebest@webtrees.net>2019-11-06 21:29:03 +0000
commitae75fb67218375df3e8cfc009347474e90b675b2 (patch)
tree95e5265825047c473e039d7d940c43acab4f85f9
parent5373aac2a10d2d8261a8362e48990a12ff9df5c2 (diff)
downloadwebtrees-ae75fb67218375df3e8cfc009347474e90b675b2.tar.gz
webtrees-ae75fb67218375df3e8cfc009347474e90b675b2.tar.bz2
webtrees-ae75fb67218375df3e8cfc009347474e90b675b2.zip
Use simple list to specify order of censuses
-rw-r--r--app/Census/Census.php100
-rw-r--r--tests/app/Census/CensusTest.php16
2 files changed, 75 insertions, 41 deletions
diff --git a/app/Census/Census.php b/app/Census/Census.php
index ea82140b8d..ef097900b0 100644
--- a/app/Census/Census.php
+++ b/app/Census/Census.php
@@ -31,59 +31,93 @@ class Census
*/
public static function censusPlaces(string $locale): array
{
- $all_census_places = [
- new CensusOfCzechRepublic(),
- new CensusOfDenmark(),
- new CensusOfDeutschland(),
- new CensusOfEngland(),
- new CensusOfFrance(),
- new CensusOfScotland(),
- new CensusOfUnitedStates(),
- new CensusOfWales(),
- ];
-
switch ($locale) {
case 'cs':
- $census_places = [new CensusOfCzechRepublic()];
- break;
+ return [
+ new CensusOfCzechRepublic(),
+ new CensusOfDenmark(),
+ new CensusOfDeutschland(),
+ new CensusOfEngland(),
+ new CensusOfFrance(),
+ new CensusOfScotland(),
+ new CensusOfUnitedStates(),
+ new CensusOfWales(),
+ ];
case 'en-AU':
case 'en-GB':
- $census_places = [
+ return [
new CensusOfEngland(),
- new CensusOfWales(),
new CensusOfScotland(),
+ new CensusOfWales(),
+ new CensusOfUnitedStates(),
+ new CensusOfCzechRepublic(),
+ new CensusOfDenmark(),
+ new CensusOfDeutschland(),
+ new CensusOfFrance(),
];
- break;
case 'en-US':
- $census_places = [new CensusOfUnitedStates()];
- break;
+ return [
+ new CensusOfUnitedStates(),
+ new CensusOfCzechRepublic(),
+ new CensusOfDenmark(),
+ new CensusOfDeutschland(),
+ new CensusOfEngland(),
+ new CensusOfFrance(),
+ new CensusOfScotland(),
+ new CensusOfWales(),
+ ];
case 'fr':
case 'fr-CA':
- $census_places = [new CensusOfFrance()];
+ return [
+ new CensusOfFrance(),
+ new CensusOfCzechRepublic(),
+ new CensusOfDenmark(),
+ new CensusOfDeutschland(),
+ new CensusOfEngland(),
+ new CensusOfScotland(),
+ new CensusOfUnitedStates(),
+ new CensusOfWales(),
+ ];
break;
case 'da':
- $census_places = [new CensusOfDenmark()];
- break;
+ return [
+ new CensusOfDenmark(),
+ new CensusOfDeutschland(),
+ new CensusOfCzechRepublic(),
+ new CensusOfEngland(),
+ new CensusOfFrance(),
+ new CensusOfScotland(),
+ new CensusOfUnitedStates(),
+ new CensusOfWales(),
+ ];
case 'de':
- $census_places = [new CensusOfDeutschland()];
- break;
+ return [
+ new CensusOfDeutschland(),
+ new CensusOfCzechRepublic(),
+ new CensusOfDenmark(),
+ new CensusOfEngland(),
+ new CensusOfFrance(),
+ new CensusOfScotland(),
+ new CensusOfUnitedStates(),
+ new CensusOfWales(),
+ ];
default:
- $census_places = [];
- break;
- }
-
- foreach ($all_census_places as $census_place) {
- if (!in_array($census_place, $census_places, false)) {
- $census_places[] = $census_place;
- }
+ return [
+ new CensusOfUnitedStates(),
+ new CensusOfEngland(),
+ new CensusOfScotland(),
+ new CensusOfWales(),
+ new CensusOfDeutschland(),
+ new CensusOfFrance(),
+ new CensusOfCzechRepublic(),
+ new CensusOfDenmark(),
+ ];
}
-
- return $census_places;
}
}
diff --git a/tests/app/Census/CensusTest.php b/tests/app/Census/CensusTest.php
index 84c7f9801a..54f2dccd05 100644
--- a/tests/app/Census/CensusTest.php
+++ b/tests/app/Census/CensusTest.php
@@ -36,13 +36,13 @@ class CensusTest extends TestCase
$censuses = Census::censusPlaces('XX');
$this->assertCount(8, $censuses);
- $this->assertInstanceOf(CensusOfCzechRepublic::class, $censuses[0]);
- $this->assertInstanceOf(CensusOfDenmark::class, $censuses[1]);
- $this->assertInstanceOf(CensusOfDeutschland::class, $censuses[2]);
- $this->assertInstanceOf(CensusOfEngland::class, $censuses[3]);
- $this->assertInstanceOf(CensusOfFrance::class, $censuses[4]);
- $this->assertInstanceOf(CensusOfScotland::class, $censuses[5]);
- $this->assertInstanceOf(CensusOfUnitedStates::class, $censuses[6]);
- $this->assertInstanceOf(CensusOfWales::class, $censuses[7]);
+ $this->assertInstanceOf(CensusOfUnitedStates::class, $censuses[0]);
+ $this->assertInstanceOf(CensusOfEngland::class, $censuses[1]);
+ $this->assertInstanceOf(CensusOfScotland::class, $censuses[2]);
+ $this->assertInstanceOf(CensusOfWales::class, $censuses[3]);
+ $this->assertInstanceOf(CensusOfDeutschland::class, $censuses[4]);
+ $this->assertInstanceOf(CensusOfFrance::class, $censuses[5]);
+ $this->assertInstanceOf(CensusOfCzechRepublic::class, $censuses[6]);
+ $this->assertInstanceOf(CensusOfDenmark::class, $censuses[7]);
}
}