feat: complete legacy parity and modernize operator UI

This commit is contained in:
2026-07-22 12:34:46 +09:00
parent fc4007d676
commit 939c252d23
149 changed files with 26515 additions and 1736 deletions

View File

@@ -13,6 +13,27 @@ public sealed class LegacyTradingHaltWorkflowTests
private static readonly TradingHaltSelection KosdaqAlpha =
new(TradingHaltMarket.Kosdaq, "035720", "다온테크");
[Fact]
public async Task Search_AutomaticallyActivatesFirstFarPointRowAndActions()
{
var service = new DelegateTradingHaltService
{
Search = (query, _, _) => Task.FromResult(
SearchResult(query, KospiAlpha, KospiBeta, KosdaqAlpha))
};
var controller = new LegacyTradingHaltWorkflowController(service);
var searched = await controller.SearchAsync(string.Empty);
var current = controller.MaterializeSelectedAction(
LegacyTradingHaltWorkflowController.CurrentActionId);
Assert.Equal(searched.Results[0].SelectionId, searched.Selected?.SelectionId);
Assert.True(searched.Results[0].IsSelected);
Assert.All(searched.Actions, action => Assert.True(action.IsAvailable));
Assert.Equal("005930", current.StockCode);
Assert.Equal("가온전자", current.DisplayName);
}
[Fact]
public async Task SearchSelect_MaterializesClosedCurrentAndCandleDraftsFromActionIdOnly()
{