JsonTest   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 30
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 14
c 1
b 0
f 0
dl 0
loc 30
rs 10
wmc 4

4 Methods

Rating   Name   Duplication   Size   Complexity  
A testMalformedContent() 0 5 1
A testPass() 0 7 1
A testNoSource() 0 5 1
A testNoFile() 0 5 1
1
<?php
2
3
namespace ParserTests;
4
5
6
use CommonTestClass;
7
use kalanis\kw_input\Interfaces\IEntry;
8
use kalanis\kw_input\Parsers;
9
10
11
class JsonTest extends CommonTestClass
12
{
13
    public function testNoSource(): void
14
    {
15
        $lib = new Parsers\Json();
16
        $this->assertInstanceOf(Parsers\AParser::class, $lib);
17
        $this->assertEmpty($lib->parseInput([]));
18
    }
19
20
    public function testNoFile(): void
21
    {
22
        $lib = new Parsers\Json();
23
        $this->assertInstanceOf(Parsers\AParser::class, $lib);
24
        $this->assertEmpty($lib->parseInput([__DIR__ . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'data' . DIRECTORY_SEPARATOR . 'not_exists']));
25
    }
26
27
    public function testMalformedContent(): void
28
    {
29
        $lib = new Parsers\Json();
30
        $this->assertInstanceOf(Parsers\AParser::class, $lib);
31
        $this->assertEmpty($lib->parseInput([__DIR__ . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'data' . DIRECTORY_SEPARATOR . 'malformed_json.txt']));
32
    }
33
34
    public function testPass(): void
35
    {
36
        $lib = new Parsers\Json();
37
        $this->assertInstanceOf(Parsers\AParser::class, $lib);
38
        $data = $lib->parseInput([__DIR__ . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'data' . DIRECTORY_SEPARATOR . 'pass_json.txt']);
39
40
        $this->assertNotEmpty($data);
41
    }
42
}
43