xref: /webtrees/tests/app/Census/CensusColumnOccupationTest.php (revision 3e983931fdde6db78f1490364106d7d46e77dea7)
1db7d25eeSGreg Roach<?php
2db7d25eeSGreg Roach
3db7d25eeSGreg Roach/**
4db7d25eeSGreg Roach * webtrees: online genealogy
56bdf7674SGreg Roach * Copyright (C) 2017 webtrees development team
6db7d25eeSGreg Roach * This program is free software: you can redistribute it and/or modify
7db7d25eeSGreg Roach * it under the terms of the GNU General Public License as published by
8db7d25eeSGreg Roach * the Free Software Foundation, either version 3 of the License, or
9db7d25eeSGreg Roach * (at your option) any later version.
10db7d25eeSGreg Roach * This program is distributed in the hope that it will be useful,
11db7d25eeSGreg Roach * but WITHOUT ANY WARRANTY; without even the implied warranty of
12db7d25eeSGreg Roach * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13db7d25eeSGreg Roach * GNU General Public License for more details.
14db7d25eeSGreg Roach * You should have received a copy of the GNU General Public License
15db7d25eeSGreg Roach * along with this program. If not, see <http://www.gnu.org/licenses/>.
16db7d25eeSGreg Roach */
17db7d25eeSGreg Roachnamespace Fisharebest\Webtrees\Census;
18db7d25eeSGreg Roach
19db7d25eeSGreg Roachuse Mockery;
20db7d25eeSGreg Roach
21db7d25eeSGreg Roach/**
22db7d25eeSGreg Roach * Test harness for the class CensusColumnOccupation
23db7d25eeSGreg Roach */
24*3e983931SGreg Roachclass CensusColumnOccupationTest extends \PHPUnit\Framework\TestCase {
25db7d25eeSGreg Roach	/**
26db7d25eeSGreg Roach	 * Delete mock objects
27db7d25eeSGreg Roach	 */
28db7d25eeSGreg Roach	public function tearDown() {
29db7d25eeSGreg Roach		Mockery::close();
30db7d25eeSGreg Roach	}
31db7d25eeSGreg Roach
32db7d25eeSGreg Roach	/**
3315d603e7SGreg Roach	 * @covers \Fisharebest\Webtrees\Census\CensusColumnOccupation
3415d603e7SGreg Roach	 * @covers \Fisharebest\Webtrees\Census\AbstractCensusColumn
35db7d25eeSGreg Roach	 */
36db7d25eeSGreg Roach	public function testNoOccupation() {
37c314ecc9SGreg Roach		$individual = Mockery::mock('Fisharebest\Webtrees\Individual');
3813abd6f3SGreg Roach		$individual->shouldReceive('getFacts')->withArgs(['OCCU'])->andReturn([]);
39db7d25eeSGreg Roach
40c314ecc9SGreg Roach		$census = Mockery::mock('Fisharebest\Webtrees\Census\CensusInterface');
41db7d25eeSGreg Roach
42ef21b467SGreg Roach		$column = new CensusColumnOccupation($census, '', '');
43db7d25eeSGreg Roach
44db7d25eeSGreg Roach		$this->assertSame('', $column->generate($individual));
45db7d25eeSGreg Roach	}
46db7d25eeSGreg Roach
47db7d25eeSGreg Roach	/**
4815d603e7SGreg Roach	 * @covers \Fisharebest\Webtrees\Census\CensusColumnOccupation
4915d603e7SGreg Roach	 * @covers \Fisharebest\Webtrees\Census\AbstractCensusColumn
50db7d25eeSGreg Roach	 */
51db7d25eeSGreg Roach	public function testOccupation() {
52c314ecc9SGreg Roach		$fact = Mockery::mock('Fisharebest\Webtrees\Fact');
53db7d25eeSGreg Roach		$fact->shouldReceive('getValue')->andReturn('Farmer');
54db7d25eeSGreg Roach
55c314ecc9SGreg Roach		$individual = Mockery::mock('Fisharebest\Webtrees\Individual');
5613abd6f3SGreg Roach		$individual->shouldReceive('getFacts')->withArgs(['OCCU'])->andReturn([$fact]);
57db7d25eeSGreg Roach
58c314ecc9SGreg Roach		$census = Mockery::mock('Fisharebest\Webtrees\Census\CensusInterface');
59db7d25eeSGreg Roach
60ef21b467SGreg Roach		$column = new CensusColumnOccupation($census, '', '');
61db7d25eeSGreg Roach
62db7d25eeSGreg Roach		$this->assertSame('Farmer', $column->generate($individual));
63db7d25eeSGreg Roach	}
64db7d25eeSGreg Roach}
65