Issues (3641)

Plugin/MerchantOmsProcessDataImportPluginTest.php (1 issue)

1
<?php
2
3
/**
4
 * MIT License
5
 * For full license information, please view the LICENSE file that was distributed with this source code.
6
 */
7
8
namespace SprykerTest\Zed\MerchantOmsDataImport\Communication\Plugin;
9
10
use Codeception\Test\Unit;
11
use Generated\Shared\Transfer\DataImporterConfigurationTransfer;
12
use Generated\Shared\Transfer\DataImporterReaderConfigurationTransfer;
13
use Generated\Shared\Transfer\DataImporterReportTransfer;
14
use Spryker\Zed\MerchantOmsDataImport\Communication\Plugin\DataImport\MerchantOmsProcessDataImportPlugin;
15
16
/**
17
 * Auto-generated group annotations
18
 *
19
 * @group SprykerTest
20
 * @group Zed
21
 * @group MerchantOmsDataImport
22
 * @group Communication
23
 * @group Plugin
24
 * @group MerchantOmsProcessDataImportPluginTest
25
 * Add your own group annotations below this line
26
 */
27
class MerchantOmsProcessDataImportPluginTest extends Unit
28
{
29
    /**
30
     * @var string
31
     */
32
    public const MERCHANT_REFERENCE = 'merchant-profile-data-import-test-reference';
33
34
    /**
35
     * @var \SprykerTest\Zed\MerchantOmsDataImport\MerchantOmsDataImportCommunicationTester
36
     */
37
    protected $tester;
38
39
    /**
40
     * @return void
41
     */
42
    public function testMerchantOmsProcessImport(): void
43
    {
44
        // Arrange
45
        if (!$this->tester->findMerchantByReference(static::MERCHANT_REFERENCE)) {
46
            $this->tester->haveMerchant([
47
                'merchant_reference' => static::MERCHANT_REFERENCE,
48
            ]);
49
        }
50
51
        $dataImporterReaderConfigurationTransfer = (new DataImporterReaderConfigurationTransfer())
52
            ->setFileName(codecept_data_dir() . 'import/merchant_oms_process.csv');
0 ignored issues
show
The function codecept_data_dir was not found. Maybe you did not declare it correctly or list all dependencies? ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

52
            ->setFileName(/** @scrutinizer ignore-call */ codecept_data_dir() . 'import/merchant_oms_process.csv');
Loading history...
53
54
        $dataImportConfigurationTransfer = new DataImporterConfigurationTransfer();
55
        $dataImportConfigurationTransfer->setReaderConfiguration($dataImporterReaderConfigurationTransfer);
56
57
        // Act
58
        $merchantOmsProcessDataImportPlugin = new MerchantOmsProcessDataImportPlugin();
59
        $dataImporterReportTransfer = $merchantOmsProcessDataImportPlugin->import($dataImportConfigurationTransfer);
60
        $merchantEntity = $this->tester->findMerchantByReference(static::MERCHANT_REFERENCE);
61
62
        // Assert
63
        $this->assertInstanceOf(DataImporterReportTransfer::class, $dataImporterReportTransfer);
64
        $this->assertNotNull($merchantEntity->getFkStateMachineProcess());
65
        $this->tester->assertStateMachineProcessDatabaseTableContainsData();
66
    }
67
}
68