8202c3278b
TaxBaik CI/CD / build-and-deploy (push) Failing after 2m17s
Phase 8: Complete WebAssembly 렌더 모드 전환 (정공법) Migration Summary: - ALL Admin components → TaxBaik.Web.Client - Routes.razor, Pages/*, Layout/*, Shared/*, Forms/* - App.razor → TaxBaik.WasmClient (호스트 컴포넌트) - Shared utilities → TaxBaik.Application.Utils Architecture: ✅ App.razor: TaxBaik.WasmClient (WebAssembly, 호스트) ✅ Routes + Pages: TaxBaik.WasmClient (WebAssembly) ✅ Layout + Shared + Forms: TaxBaik.WasmClient (WebAssembly) ✅ Services: TaxBaik.Web (API-First) Key Changes: - Namespaces: TaxBaik.Web.Components.Admin → TaxBaik.WasmClient.Components.Admin - Shared utilities: TaxBaik.Application.Utils (single source of truth) - Program.cs: MapRazorComponents<TaxBaik.WasmClient.Components.Admin.App>() - _Imports.razor: Components/Admin 폴더에 재구성 Build Status: ✅ 0 errors, 0 warnings Benefits: - Stateless server (no Circuit memory) - Client-side rendering (WebAssembly) - Unlimited concurrent users (horizontal scaling) - ERP-ready architecture Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
37 lines
1.2 KiB
C#
37 lines
1.2 KiB
C#
namespace TaxBaik.Application.Tests;
|
|
|
|
using TaxBaik.Application.Utils;
|
|
using Xunit;
|
|
|
|
public class BusinessDayCalculatorTests
|
|
{
|
|
[Theory]
|
|
[InlineData(2026, 2, 14, 2026, 2, 19)]
|
|
[InlineData(2026, 8, 15, 2026, 8, 18)]
|
|
[InlineData(2026, 10, 3, 2026, 10, 6)]
|
|
[InlineData(2026, 9, 24, 2026, 9, 28)]
|
|
[InlineData(2027, 2, 6, 2027, 2, 10)]
|
|
[InlineData(2027, 10, 9, 2027, 10, 12)]
|
|
public void GetEffectiveDueDate_SkipsWeekendHolidayAndSubstituteHoliday(
|
|
int dueYear, int dueMonth, int dueDay,
|
|
int expectedYear, int expectedMonth, int expectedDay)
|
|
{
|
|
var effective = BusinessDayCalculator.GetEffectiveDueDate(new DateOnly(dueYear, dueMonth, dueDay));
|
|
|
|
Assert.Equal(new DateOnly(expectedYear, expectedMonth, expectedDay), effective);
|
|
}
|
|
|
|
[Theory]
|
|
[InlineData(2026, 2, 19, 0)]
|
|
[InlineData(2026, 2, 20, -1)]
|
|
[InlineData(2026, 2, 18, 1)]
|
|
public void GetDday_UsesEffectiveDueDate(
|
|
int refYear, int refMonth, int refDay,
|
|
int expectedDays)
|
|
{
|
|
var dday = BusinessDayCalculator.GetDday(new DateOnly(2026, 2, 14), new DateOnly(refYear, refMonth, refDay));
|
|
|
|
Assert.Equal(expectedDays, dday);
|
|
}
|
|
}
|