diff --git a/tests/Feature/EcommerceFinance/ExpenseDetailsDrilldownPageTest.php b/tests/Feature/EcommerceFinance/ExpenseDetailsDrilldownPageTest.php new file mode 100644 index 00000000..dbfd08c8 --- /dev/null +++ b/tests/Feature/EcommerceFinance/ExpenseDetailsDrilldownPageTest.php @@ -0,0 +1,43 @@ +loginAs() + ->get(route('business.pages.show', [ + 'section' => 'financial-operations', + 'page' => 'expense-details', + ])) + ->assertOk() + ->assertSeeText('费用明细') + ->assertSeeText('费用分类汇总') + ->assertSee('/workspace/financial-operations/expense-details/item-summary', false) + ->assertSee('id="pdItemSummary"', false) + ->assertDontSee('data-col="record_code"', false) + ->assertDontSee('data-col="bill_item"', false); + + $template = (string) file_get_contents(resource_path( + 'views/business/pages/financial-operations/billing-details.blade.php', + )); + $this->assertSame(1, preg_match( + '/\s*\s*\s*@if \(\$expenseOnly\)(.*?)@else/s', + $template, + $expenseHeader, + )); + preg_match_all('/data-col="([^"]+)"/', $expenseHeader[1], $columns); + $this->assertSame([ + 'platform', + 'store_name', + 'online_order_no', + 'finance_remark', + 'amount', + ], $columns[1]); + $this->assertStringContainsString('pd-item-summary__toggle', $template); + $this->assertStringContainsString('category.items', $template); + } +} diff --git a/tests/Feature/Settings/NavigationTest.php b/tests/Feature/Settings/NavigationTest.php index a26a86d0..c439431b 100644 --- a/tests/Feature/Settings/NavigationTest.php +++ b/tests/Feature/Settings/NavigationTest.php @@ -151,25 +151,7 @@ class NavigationTest extends FeatureTestCase ->assertSeeText('不开票金额(万)') ->assertDontSee('
', false) ->assertDontSee('data-col="record_code"', false) - ->assertDontSee('data-col="bill_item"', false) ->assertDontSee('id="pdType"', false); - - $template = (string) file_get_contents(resource_path( - 'views/business/pages/financial-operations/billing-details.blade.php', - )); - $this->assertSame(1, preg_match( - '/
\s*\s*\s*@if \(\$expenseOnly\)(.*?)@else/s', - $template, - $expenseHeader, - )); - preg_match_all('/data-col="([^"]+)"/', $expenseHeader[1], $columns); - $this->assertSame([ - 'platform', - 'store_name', - 'online_order_no', - 'finance_remark', - 'amount', - ], $columns[1]); } public function testFinancialAnalysisPageIncludesInvoiceExpenseColumns(): void