ContextSupplyConverterTest::getConvertData()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 21

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 21
rs 9.584
c 0
b 0
f 0
cc 1
nc 1
nop 0
1
<?php
2
namespace Mathielen\DataImport\ItemConverter;
3
4
use Mathielen\DataImport\Event\ImportProcessEvent;
5
use Mathielen\ImportEngine\Import\Import;
6
use Mathielen\ImportEngine\ValueObject\ImportRun;
7
8
class ContextSupplyConverterTest extends \PHPUnit_Framework_TestCase
9
{
10
11
    /**
12
     * @var ContextSupplyConverter
13
     */
14
    private $sut;
15
16
    /**
17
     * @dataProvider getConvertData
18
     */
19
    public function testConvert(ImportProcessEvent $event, array $inputData, array $expectedResult, $contextFieldname='context')
20
    {
21
        $this->sut = new ContextSupplyConverter($contextFieldname);
22
23
        $this->sut->onImportPrepare($event);
24
25
        $this->assertEquals($expectedResult, $this->sut->convert($inputData));
26
    }
27
28
    public function getConvertData()
29
    {
30
        return array(
31
            array(
32
                new ImportProcessEvent(),
33
                array('a'=>1),
34
                array('a'=>1)
35
            ),
36
            array(
37
                $this->createEvent(),
38
                array('a'=>1),
39
                array('a'=>1)
40
            ),
41
            array(
42
                $this->createEvent(ImportRun::create()->setContext(array('b'=>2))),
43
                array('a'=>1),
44
                array('a'=>1, 'mycontext'=>array('b'=>2)),
45
                'mycontext'
46
            ),
47
        );
48
    }
49
50
    private function createEvent($importRun=null)
51
    {
52
        return new ImportProcessEvent(
53
            new Import(
54
                $this->createMock('Mathielen\ImportEngine\Importer\ImporterInterface'),
55
                $this->createMock('Mathielen\ImportEngine\Storage\StorageInterface'),
56
                $importRun
57
            )
58
        );
59
    }
60
61
}
62