Passed
Push — master ( cdf7b9...3f26c1 )
by Nicolas
02:00
created

PlanParserTest   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 36
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 4

Importance

Changes 0
Metric Value
wmc 1
lcom 0
cbo 4
dl 0
loc 36
rs 10
c 0
b 0
f 0
1
<?php
2
3
4
namespace Tests\Cp\Parser;
5
6
use Cp\Http\HeaderParser;
7
use Cp\Parser\PlanParser;
8
use PHPHtmlParser\Dom;
9
10
/**
11
 * Class PlanParserTest
12
 */
13
class PlanParserTest extends \PHPUnit_Framework_TestCase
14
{
15
    public function testParseToJson()
16
    {
17
        $url = __DIR__.'/../../fixtures/html/Plan-10km-3-seances-6semaines.htm';
18
        $planParser = new PlanParser(new Dom(), new HeaderParser());
19
20
        $expected = [
21
            'name' => 'Plans entrainement 10 km en 50 / 55 minutes',
22
            'type' => 'Plan 10 km avec 3 séances / 6 semaines',
23
            'weeks' => [
24
                [
25
                    'name' => 'Semaine 1',
26
                    'trainings' => [
27
                        [
28
                            'type' => 'EF',
29
                            'content' => 'Footing de 45 minutes',
30
                        ],
31
                        [
32
                            'type' => 'VMA-105',
33
                            'content' => 'Footing de 20-30 minutes suivi de 2 séries de 30"-30" à 100-105%VMA avec 3 '
34
                                .'minutes de récupération entre chaque série.',
35
                        ],
36
                        [
37
                            'type' => 'SL-80/85',
38
                            'content' => 'Sortie longue de 1h20 dont 2 fois 10minutes à 80-85%FCM avec une récupération'
39
                                .' de 2 minutes entre chaque effort',
40
                        ],
41
                    ],
42
                ],
43
            ]
44
        ];
45
46
        $this->assertEquals(json_encode($expected), $planParser->parseToJson($url));
47
    }
48
}
49