Odyssey
CuAdminTest.php
1 <?php
2 
3 use PHPUnit\Framework\MockObject\MockObject;
4 use PHPUnit\Framework\TestCase;
5 require_once('CuAdmin.php');
6 
7 /**
8  * Class CuAdminTest.
9  *
10  * @covers \CuAdmin
11  */
12 class CuAdminTest extends TestCase
13 {
14  /**
15  * @var CuAdmin $cuAdmin An instance of "CuAdmin" to test.
16  */
17  private $cuAdmin;
18 
19  /**
20  * {@inheritdoc}
21  */
22  protected function setUp() {
23  parent::setUp();
24 
25  $this->cuAdminRepo = $this
26  ->getMockBuilder(CuAdminRepo::class)
27  ->setMethods(['Read'])
28  ->getMock();
29 
30  $this->creditUnion = 'CRUISECU';
31 
32  $this->data = [
33  'cu' => $this->creditUnion,
34  'fhdays' => 0,
35  'flagset' => 1536,
36  'flagset2' => 11,
37  'flagset3' => 16,
38  'grace' => 4,
39  'lastupdate' => 'Fri May 23 04:32 PM 2008',
40  'livewait' => 0,
41  'min_chlng_qst' => 3,
42  'pname' => 'We are Testy',
43  'trmemomaxlen' => 20,
44  ];
45 
46  $this->cuAdminRepo
47  ->expects(static::any())
48  ->method('Read')
49  ->with($this->creditUnion)
50  ->willReturn($this->data);
51 
52  }
53 
54  /**
55  * @covers \CuAdmin::__construct
56  */
57  public function testConstruct() {
58 
59  $cuAdmin = new CuAdmin($this->creditUnion, $this->cuAdminRepo);
60  static::assertInstanceOf('CuAdmin', $cuAdmin);
61  static::assertEquals($cuAdmin->admininfo['pname'], 'We are Testy');
62 
63  }
64 
65  /**
66  * @covers \CuAdmin::Flags
67  */
68  public function testFlags() {
69  static::assertFalse(boolval($cuAdmin->flagset & CuAdmin::CU_MEMRESET));
70  static::assertFalse(boolval($cuAdmin->flagset2 & CuAdmin::CU2_ALIAS_REQ));
71  static::assertFalse(boolval($cuAdmin->flagset3 & CuAdmin::CU3_MFA_AUTHCODE));
72  static::assertFalse(boolval($cuAdmin->flagset3 & CuAdmin::CU3_ALLOW_COOKIE_MIGRATION));
73  }
74 }