CaiWuXiTong/tests/Unit/EcommerceFinance/WorkPlatformPriceConfigTest.php

32 lines
1.3 KiB
PHP

<?php
namespace Tests\Unit\EcommerceFinance;
use Modules\EcommerceFinance\Repositories\ProductCatalogMirrorRepository;
use Modules\EcommerceFinance\Services\BusinessMirrorDatasetRegistry;
use Tests\TestCase;
class WorkPlatformPriceConfigTest extends TestCase
{
public function test_work_platform_price_dataset_is_wired_to_the_read_only_source(): void
{
$dataset = (new BusinessMirrorDatasetRegistry())->get(
ProductCatalogMirrorRepository::WORK_PLATFORM_PRICE_DATASET_KEY,
);
$this->assertSame('jiansun.dbo.pm_priceAdjustment', $dataset->key());
$this->assertSame('jiansun', $dataset->sourceKey());
$this->assertSame('dbo', $dataset->sourceSchema());
$this->assertSame('pm_priceAdjustment', $dataset->sourceObject());
$this->assertSame('js_pm_price_adjustment', $dataset->targetTable());
$this->assertSame(['Id'], $dataset->keyColumns());
$this->assertNull($dataset->watermarkColumn());
$this->assertContains(['skuCode(64)', 'effectTime', 'Id'], $dataset->indexDefinitions());
$selection = array_map('strtolower', (new BusinessMirrorDatasetRegistry())->columnSelection($dataset->key()) ?? []);
foreach (['id', 'skucode', 'purchaseprice', 'effecttime'] as $column) {
$this->assertContains($column, $selection);
}
}
}