15df8e840SDavid Drury<?php 23976b470SGreg Roach 35df8e840SDavid Drury/** 45df8e840SDavid Drury * webtrees: online genealogy 5d11be702SGreg Roach * Copyright (C) 2023 webtrees development team 65df8e840SDavid Drury * This program is free software: you can redistribute it and/or modify 75df8e840SDavid Drury * it under the terms of the GNU General Public License as published by 85df8e840SDavid Drury * the Free Software Foundation, either version 3 of the License, or 95df8e840SDavid Drury * (at your option) any later version. 105df8e840SDavid Drury * This program is distributed in the hope that it will be useful, 115df8e840SDavid Drury * but WITHOUT ANY WARRANTY; without even the implied warranty of 125df8e840SDavid Drury * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 135df8e840SDavid Drury * GNU General Public License for more details. 145df8e840SDavid Drury * You should have received a copy of the GNU General Public License 1589f7189bSGreg Roach * along with this program. If not, see <https://www.gnu.org/licenses/>. 165df8e840SDavid Drury */ 17fcfa147eSGreg Roach 18e7f56f2aSGreg Roachdeclare(strict_types=1); 19e7f56f2aSGreg Roach 205df8e840SDavid Drurynamespace Fisharebest\Webtrees\Census; 215df8e840SDavid Drury 223cfcc809SGreg Roachuse Fisharebest\Webtrees\TestCase; 23*202c018bSGreg Roachuse PHPUnit\Framework\Attributes\CoversClass; 243cfcc809SGreg Roach 25*202c018bSGreg Roach#[CoversClass(RegisterOfWales1939::class)] 26*202c018bSGreg Roach#[CoversClass(AbstractCensusColumn::class)] 273cfcc809SGreg Roachclass RegisterOfWales1939Test extends TestCase 28c1010edaSGreg Roach{ 295df8e840SDavid Drury /** 305df8e840SDavid Drury * Test the census place and date 315df8e840SDavid Drury */ 329b802b22SGreg Roach public function testPlaceAndDate(): void 33c1010edaSGreg Roach { 3474d6dc0eSGreg Roach $census = new RegisterOfWales1939(); 355df8e840SDavid Drury 365e933c21SGreg Roach self::assertSame('Wales', $census->censusPlace()); 375e933c21SGreg Roach self::assertSame('29 SEP 1939', $census->censusDate()); 385df8e840SDavid Drury } 395df8e840SDavid Drury 405df8e840SDavid Drury /** 415df8e840SDavid Drury * Test the census columns 425df8e840SDavid Drury */ 439b802b22SGreg Roach public function testColumns(): void 44c1010edaSGreg Roach { 4574d6dc0eSGreg Roach $census = new RegisterOfWales1939(); 465df8e840SDavid Drury $columns = $census->columns(); 475df8e840SDavid Drury 485e933c21SGreg Roach self::assertCount(8, $columns); 495e933c21SGreg Roach self::assertInstanceOf(CensusColumnNull::class, $columns[0]); 505e933c21SGreg Roach self::assertInstanceOf(CensusColumnNull::class, $columns[1]); 515e933c21SGreg Roach self::assertInstanceOf(CensusColumnSurnameGivenNames::class, $columns[2]); 525e933c21SGreg Roach self::assertInstanceOf(CensusColumnNull::class, $columns[3]); 535e933c21SGreg Roach self::assertInstanceOf(CensusColumnSexMF::class, $columns[4]); 545e933c21SGreg Roach self::assertInstanceOf(CensusColumnBirthDayMonthYear::class, $columns[5]); 555e933c21SGreg Roach self::assertInstanceOf(CensusColumnConditionEnglish::class, $columns[6]); 565e933c21SGreg Roach self::assertInstanceOf(CensusColumnOccupation::class, $columns[7]); 575df8e840SDavid Drury 585e933c21SGreg Roach self::assertSame('Schedule', $columns[0]->abbreviation()); 595e933c21SGreg Roach self::assertSame('SubNum', $columns[1]->abbreviation()); 605e933c21SGreg Roach self::assertSame('Name', $columns[2]->abbreviation()); 615e933c21SGreg Roach self::assertSame('Role', $columns[3]->abbreviation()); 625e933c21SGreg Roach self::assertSame('Sex', $columns[4]->abbreviation()); 635e933c21SGreg Roach self::assertSame('DOB', $columns[5]->abbreviation()); 645e933c21SGreg Roach self::assertSame('MC', $columns[6]->abbreviation()); 655e933c21SGreg Roach self::assertSame('Occupation', $columns[7]->abbreviation()); 665df8e840SDavid Drury 675e933c21SGreg Roach self::assertSame('Schedule Number', $columns[0]->title()); 685e933c21SGreg Roach self::assertSame('Schedule Sub Number', $columns[1]->title()); 695e933c21SGreg Roach self::assertSame('Surname & other names', $columns[2]->title()); 705e933c21SGreg Roach self::assertSame('For institutions only – for example, Officer, Visitor, Servant, Patient, Inmate', $columns[3]->title()); 715e933c21SGreg Roach self::assertSame('Male or Female', $columns[4]->title()); 725e933c21SGreg Roach self::assertSame('Date of birth', $columns[5]->title()); 735e933c21SGreg Roach self::assertSame('Marital Condition - Married, Single, Unmarried, Widowed or Divorced', $columns[6]->title()); 745e933c21SGreg Roach self::assertSame('Occupation', $columns[7]->title()); 755df8e840SDavid Drury } 765df8e840SDavid Drury} 77