NativeParserTest::setUp()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 10

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 10
rs 9.9332
c 0
b 0
f 0
cc 2
nc 2
nop 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Dziki\MonologSentryBundle\Tests\Unit\UserAgent;
6
7
use Dziki\MonologSentryBundle\UserAgent\NativeParser;
8
use Dziki\MonologSentryBundle\UserAgent\UserAgent;
9
10
/**
11
 * @covers \Dziki\MonologSentryBundle\UserAgent\NativeParser
12
 *
13
 * @uses \Dziki\MonologSentryBundle\UserAgent\UserAgent
14
 */
15
class NativeParserTest extends AbstractParserTest
16
{
17
    public function validUserAgentsDataProvider(): array
18
    {
19
        return parent::validUserAgentsDataProvider() +
20
            [
21
                [
22
                    'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0',
23
                    UserAgent::create('Firefox', '47.0', 'Win7'),
24
                ],
25
                [
26
                    'Mozilla/5.0 (Macintosh; Intel Mac OS X x.y; rv:42.0) Gecko/20100101 Firefox/42.0',
27
                    UserAgent::create('Firefox', '42.0', 'MacOSX'),
28
                ],
29
                [
30
                    'Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1',
31
                    UserAgent::create('Safari', '11.0', 'iOS'),
32
                ],
33
                [
34
                    'Mozilla/5.0 (Linux; Android 7.0; SM-G892A Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/60.0.3112.107 Mobile Safari/537.36',
35
                    UserAgent::create('Android WebView', '60.0', 'Android'),
36
                ],
37
                [
38
                    'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.246',
39
                    UserAgent::create('Edge', '12.0', 'Win10'),
40
                ],
41
            ];
42
    }
43
44
    public function setUp(): void
45
    {
46
        if (!ini_get('browscap')) {
47
            $this->markTestSkipped(
48
                'The browscap.ini directive not set, skipped.'
49
            );
50
        }
51
52
        $this->setParser(new NativeParser());
53
    }
54
}
55