1
exercism fetch php perfect-numbers

perfect-numbers_test.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
<?php

require "perfect-numbers.php";

class PerfectNumbersTest extends PHPUnit\Framework\TestCase
{
    public function testSmallPerfectNumberIsClassifiedCorrectly()
    {
        $this->assertEquals("perfect", getClassification(6));
    }

    public function testMediumPerfectNumberIsClassifiedCorrectly()
    {
        $this->markTestSkipped();

        $this->assertEquals("perfect", getClassification(28));
    }

    public function testLargePerfectNumberIsClassifiedCorrectly()
    {
        $this->markTestSkipped();

        $this->assertEquals("perfect", getClassification(33550336));
    }

    public function testSmallAbundantNumberIsClassifiedCorrectly()
    {
        $this->markTestSkipped();

        $this->assertEquals("abundant", getClassification(12));
    }

    public function testMediumAbundantNumberIsClassifiedCorrectly()
    {
        $this->markTestSkipped();

        $this->assertEquals("abundant", getClassification(30));
    }

    public function testLargeAbundantNumberIsClassifiedCorrectly()
    {
        $this->markTestSkipped();

        $this->assertEquals("abundant", getClassification(33550335));
    }

    public function testSmallestPrimeDeficientNumberIsClassifiedCorrectly()
    {
        $this->markTestSkipped();

        $this->assertEquals("deficient", getClassification(2));
    }

    public function testSmallestNonPrimeDeficientNumberIsClassifiedCorrectly()
    {
        $this->markTestSkipped();

        $this->assertEquals("deficient", getClassification(4));
    }

    public function testMediumDeficientNumberIsClassifiedCorrectly()
    {
        $this->markTestSkipped();

        $this->assertEquals("deficient", getClassification(32));
    }

    public function testLargeDeficientNumberIsClassifiedCorrectly()
    {
        $this->markTestSkipped();

        $this->assertEquals("deficient", getClassification(33550337));
    }

    public function testThatOneIsCorrectlyClassifiedAsDeficient()
    {
        $this->markTestSkipped();

        $this->assertEquals("deficient", getClassification(1));
    }

    public function testThatNonNegativeIntegerIsRejected()
    {
        $this->markTestSkipped();

        $this->expectException(InvalidArgumentException::class) ;

        getClassification(0) ;
    }

    public function testThatNegativeIntegerIsRejected()
    {
        $this->markTestSkipped();

        $this->expectException(InvalidArgumentException::class) ;

        getClassification(-1) ;
    }
}