Passed
Push — main ( 40d4d0...b1f2dd )
by N.
05:04
created

RKodTest::testRKod()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 10
Code Lines 7

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 2
eloc 7
nc 2
nop 0
dl 0
loc 10
rs 10
c 0
b 0
f 0
1
<?php
2
3
/**
4
 * Klass RKodTest.
5
 * @author Niklas Dougherty
6
 */
7
8
declare(strict_types=1);
9
10
namespace Tips\Tests\Moduler\System;
11
12
use PHPUnit\Framework\TestCase;
13
use Tips\Klasser\Preludium;
14
use Tips\Moduler\System\RKod;
15
16
/**
17
 * Klass RKodTest.
18
 */
19
class RKodTest extends TestCase
20
{
21
	/**
22
	 * Testa alla klasser med reduktionskoder samt tillhörande metoder.
23
	 */
24
	public function testRKod(): void
25
	{
26
		new Preludium();
27
		foreach (RKod::cases() as $rkod) {
28
			$mapp = 'R' . explode('_', $rkod->name)[4];
29
			$klass = "\\Tips\\Koder\\$mapp\\" . $rkod->name;
30
			$this->assertTrue(new $klass() instanceof $klass);
31
32
			$this->assertEquals(count($rkod->kod()), $rkod->antal_rader());
33
			$this->assertCount(4, $rkod->garantitabell());
34
		}
35
	}
36
}
37