Issues (3641)

Plugin/PaymentMethodStoreDataImportPluginTest.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\PaymentDataImport\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\PaymentMethodTransfer;
14
use Generated\Shared\Transfer\StoreTransfer;
15
use Spryker\Zed\PaymentDataImport\Communication\Plugin\PaymentMethodStoreDataImportPlugin;
16
17
/**
18
 * Auto-generated group annotations
19
 *
20
 * @group SprykerTest
21
 * @group Zed
22
 * @group PaymentDataImport
23
 * @group Communication
24
 * @group Plugin
25
 * @group PaymentMethodStoreDataImportPluginTest
26
 * Add your own group annotations below this line
27
 */
28
class PaymentMethodStoreDataImportPluginTest extends Unit
29
{
30
    /**
31
     * @var int
32
     */
33
    protected const EXPECTED_IMPORT_COUNT = 2;
34
35
    /**
36
     * @var \SprykerTest\Zed\PaymentDataImport\PaymentDataImportCommunicationTester
37
     */
38
    protected $tester;
39
40
    /**
41
     * @return void
42
     */
43
    public function testImportImportsPaymentMethodStores(): void
44
    {
45
        //Arrange
46
        $this->tester->ensurePaymentMethodStoreTableIsEmpty();
47
        $this->tester->haveStore([
48
            StoreTransfer::NAME => 'DE',
49
        ]);
50
        $this->tester->haveStore([
51
            StoreTransfer::NAME => 'AT',
52
        ]);
53
        $paymentProviderTransfer = $this->tester->havePaymentProvider();
54
        $this->tester->havePaymentMethod([
55
            PaymentMethodTransfer::PAYMENT_METHOD_KEY => 'method-1',
56
            PaymentMethodTransfer::ID_PAYMENT_PROVIDER => $paymentProviderTransfer->getIdPaymentProvider(),
57
        ]);
58
        $dataImporterReaderConfigurationTransfer = new DataImporterReaderConfigurationTransfer();
59
        $dataImporterReaderConfigurationTransfer->setFileName(codecept_data_dir() . 'import/payment_method_store.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

59
        $dataImporterReaderConfigurationTransfer->setFileName(/** @scrutinizer ignore-call */ codecept_data_dir() . 'import/payment_method_store.csv');
Loading history...
60
        $dataImportConfigurationTransfer = new DataImporterConfigurationTransfer();
61
        $dataImportConfigurationTransfer->setReaderConfiguration($dataImporterReaderConfigurationTransfer);
62
        $paymentMethodStoreDataImportPlugin = new PaymentMethodStoreDataImportPlugin();
63
        //Act
64
        $dataImporterReportTransfer = $paymentMethodStoreDataImportPlugin->import($dataImportConfigurationTransfer);
65
        //Assert
66
        $this->assertTrue($dataImporterReportTransfer->getIsSuccess(), 'Data import should finish successfully');
67
        $this->assertSame(
68
            static::EXPECTED_IMPORT_COUNT,
69
            $dataImporterReportTransfer->getImportedDataSetCount(),
70
            sprintf(
71
                'Imported number of payment method stores is %s expected %s.',
72
                $dataImporterReportTransfer->getImportedDataSetCount(),
73
                static::EXPECTED_IMPORT_COUNT,
74
            ),
75
        );
76
    }
77
}
78