CaiWuXiTong/tests/Unit/View/PeriodBalanceReconciliationTest.php
qiuxiang 739fff215a feat: period balance reconciliation
Add the period balance reconciliation page, permissions, financial closing balances, Jushuitan snapshots for Taobao Alipay, Pinduoduo and Douyin, and explicit unavailable states.
2026-11-11 19:33:39 +08:00

42 lines
2.1 KiB
PHP

<?php
namespace Tests\Unit\View;
use PHPUnit\Framework\TestCase;
class PeriodBalanceReconciliationTest extends TestCase
{
public function test_navigation_contains_the_standalone_reconciliation_page_after_store_receiving_bills(): void
{
$navigation = file_get_contents(__DIR__ . '/../../../config/business_navigation.php');
$this->assertStringContainsString(
"['slug' => 'period-balance-reconciliation', 'title' => '期末余额双源核对']",
$navigation,
);
$this->assertLessThan(
strpos($navigation, "['slug' => 'period-balance-reconciliation', 'title' => '期末余额双源核对']"),
strpos($navigation, "['slug' => 'store-receiving-bills', 'title' => '店铺收款账户账单'"),
);
}
public function test_page_mounts_the_vue_component_and_reads_the_reconciliation_endpoint(): void
{
$root = dirname(__DIR__, 3);
$pagesSource = file_get_contents($root . '/resources/assets/js/views/business/pages.js');
$blade = file_get_contents($root . '/resources/views/business/pages/show.blade.php');
$component = file_get_contents($root . '/resources/assets/js/components/business/PeriodBalanceReconciliation.vue');
$this->assertStringContainsString('PeriodBalanceReconciliation.vue', $pagesSource);
$this->assertStringContainsString("context.page === 'period-balance-reconciliation'", $pagesSource);
$this->assertStringContainsString("['store-receiving-bills', 'period-balance-reconciliation']", $blade);
$this->assertStringContainsString('${this.apiBase}/reconciliation', $component);
$this->assertStringContainsString('淘系支付宝账户', $component);
$this->assertStringContainsString('拼多多账户', $component);
$this->assertStringContainsString('抖音账户', $component);
$this->assertStringContainsString('其他平台暂未接入', $component);
$this->assertStringContainsString('取数时间待核查', $component);
$this->assertStringContainsString('200', $component);
}
}