Passed
Push — main ( 734e06...101f2d )
by Emil
04:58
created

BaseControllerTest::testOldMetrics()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 19
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 5
nc 1
nop 0
dl 0
loc 19
rs 10
c 1
b 0
f 0
1
<?php
2
3
namespace App\Tests\Controller;
4
5
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
6
use Symfony\Bundle\FrameworkBundle\KernelBrowser;
7
use Symfony\Component\Routing\RouterInterface;
8
9
class BaseControllerTest extends WebTestCase
10
{
11
    private KernelBrowser $client;
12
13
    /**
14
     * setUp
15
     *
16
     * Add client startup to setup
17
     *
18
     * @return void
19
     */
20
    public function setUp(): void
21
    {
22
        parent::setUp(); // Call parent setup
23
24
        // Create a client to browse the application
25
        $this->client = static::createClient();
26
    }
27
28
    /**
29
     * testHome
30
     *
31
     * Test home route
32
     *
33
     * @return void
34
     */
35
    public function testHome(): void
36
    {
37
        // Retrieve router service
38
        /** @var RouterInterface $router */
39
        $router = static::getContainer()->get('router');
40
41
        //home
42
43
        // Generate URL from route name
44
        $url = $router->generate('home');
45
46
        // Send a GET request to the route you want to test
47
        $crawler = $this->client->request('GET', $url);
48
49
        // Assert the response status code
50
        $this->assertEquals(200, $this->client->getResponse()->getStatusCode());
51
52
        // Assert that certain content exists in the response
53
        $this->assertStringContainsString('MVC: Home', $crawler->filter('title')->text());
54
    }
55
56
    /**
57
     * testAbout
58
     *
59
     * Test about route
60
     *
61
     * @return void
62
     */
63
    public function testAbout(): void
64
    {
65
        // Retrieve router service
66
        /** @var RouterInterface $router */
67
        $router = static::getContainer()->get('router');
68
69
        //about
70
71
        // Generate URL from route name
72
        $url = $router->generate('about');
73
74
        // Send a GET request to the route you want to test
75
        $crawler = $this->client->request('GET', $url);
76
77
        // Assert the response status code
78
        $this->assertEquals(200, $this->client->getResponse()->getStatusCode());
79
80
        // Assert that certain content exists in the response
81
        $this->assertStringContainsString('MVC: About', $crawler->filter('title')->text());
82
    }
83
84
    /**
85
     * testReport
86
     *
87
     * Test report route
88
     *
89
     * @return void
90
     */
91
    public function testReport(): void
92
    {
93
        // Retrieve router service
94
        /** @var RouterInterface $router */
95
        $router = static::getContainer()->get('router');
96
97
        //report
98
99
        // Generate URL from route name
100
        $url = $router->generate('report');
101
102
        // Send a GET request to the route you want to test
103
        $crawler = $this->client->request('GET', $url);
104
105
        // Assert the response status code
106
        $this->assertEquals(200, $this->client->getResponse()->getStatusCode());
107
108
        // Assert that certain content exists in the response
109
        $this->assertStringContainsString('MVC: Report', $crawler->filter('title')->text());
110
    }
111
112
    /**
113
     * testLucky
114
     *
115
     * Test lucky route
116
     *
117
     * @return void
118
     */
119
    public function testLucky(): void
120
    {
121
        // Retrieve router service
122
        /** @var RouterInterface $router */
123
        $router = static::getContainer()->get('router');
124
125
        //lucky
126
127
        // Generate URL from route name
128
        $url = $router->generate('lucky');
129
130
        // Send a GET request to the route you want to test
131
        $crawler = $this->client->request('GET', $url);
132
133
        // Assert the response status code
134
        $this->assertEquals(200, $this->client->getResponse()->getStatusCode());
135
136
        // Assert that certain content exists in the response
137
        $this->assertStringContainsString('MVC: Lucky', $crawler->filter('title')->text());
138
    }
139
140
    /**
141
     * testMetrics
142
     *
143
     * Test metrics route
144
     *
145
     * @return void
146
     */
147
    public function testMetrics(): void
148
    {
149
        // Retrieve router service
150
        /** @var RouterInterface $router */
151
        $router = static::getContainer()->get('router');
152
153
        //about
154
155
        // Generate URL from route name
156
        $url = $router->generate('metrics');
157
158
        // Send a GET request to the route you want to test
159
        $crawler = $this->client->request('GET', $url);
160
161
        // Assert the response status code
162
        $this->assertEquals(200, $this->client->getResponse()->getStatusCode());
163
164
        // Assert that certain content exists in the response
165
        $this->assertStringContainsString('MVC: Metrics', $crawler->filter('title')->text());
166
    }
167
168
    /**
169
     * testOldMetrics
170
     *
171
     * Test old_metrics route
172
     *
173
     * @return void
174
     */
175
    public function testOldMetrics(): void
176
    {
177
        // Retrieve router service
178
        /** @var RouterInterface $router */
179
        $router = static::getContainer()->get('router');
180
181
        //about
182
183
        // Generate URL from route name
184
        $url = $router->generate('old_metrics');
185
186
        // Send a GET request to the route you want to test
187
        $crawler = $this->client->request('GET', $url);
188
189
        // Assert the response status code
190
        $this->assertEquals(200, $this->client->getResponse()->getStatusCode());
191
192
        // Assert that certain content exists in the response
193
        $this->assertStringContainsString('PhpMetrics report', $crawler->filter('title')->text());
194
    }
195
196
    /**
197
     * testNewMetrics
198
     *
199
     * Test new_metrics route
200
     *
201
     * @return void
202
     */
203
    public function testNewMetrics(): void
204
    {
205
        // Retrieve router service
206
        /** @var RouterInterface $router */
207
        $router = static::getContainer()->get('router');
208
209
        //about
210
211
        // Generate URL from route name
212
        $url = $router->generate('new_metrics');
213
214
        // Send a GET request to the route you want to test
215
        $crawler = $this->client->request('GET', $url);
216
217
        // Assert the response status code
218
        $this->assertEquals(200, $this->client->getResponse()->getStatusCode());
219
220
        // Assert that certain content exists in the response
221
        $this->assertStringContainsString('PhpMetrics report', $crawler->filter('title')->text());
222
    }
223
}
224