| Total Complexity | 1 |
| Total Lines | 27 |
| Duplicated Lines | 0 % |
| Changes | 1 | ||
| Bugs | 0 | Features | 0 |
| 1 | <?php |
||
| 12 | class SingletonTest extends TestCase { |
||
| 13 | |||
| 14 | /** |
||
| 15 | * @covers |
||
| 16 | * @return void |
||
| 17 | * @throws \ReflectionException |
||
| 18 | */ |
||
| 19 | public function testCompleteSingletonCases() |
||
| 20 | { |
||
| 21 | $exampleClass = SingletonClassTest::getInstance(); |
||
| 22 | |||
| 23 | // Basic instance cases |
||
| 24 | $this->assertNotNull($exampleClass, 'Error when instance the class'); |
||
| 25 | $this->assertInstanceOf(Singleton::class, $exampleClass, 'Instance not valid'); |
||
| 26 | |||
| 27 | // Singleton pattern cases |
||
| 28 | $example2 = SingletonClassTest::getInstance(); |
||
| 29 | $this->assertEquals($exampleClass, $example2, 'Singleton pattern not found'); |
||
| 30 | |||
| 31 | // Extended functionality cases |
||
| 32 | $this->assertEquals('SingletonClassTest', $exampleClass->getShortName(), 'The short name is not equals than expected'); |
||
| 33 | $exampleClass->init(); |
||
| 34 | |||
| 35 | $var = date('Y'); |
||
| 36 | $exampleClass->fieldTest = $var; |
||
| 37 | $this->assertNotNull($exampleClass->fieldTest, 'Assignation for private var not found'); |
||
| 38 | $this->assertEquals($exampleClass->fieldTest, $var, 'Field has not the same value'); |
||
| 39 | |||
| 41 | } |