SeibroSecnFrsecCusParserTests.cs 979 B

12345678910111213141516171819202122232425
  1. using Infrastructure.StockData;
  2. namespace Application.Tests;
  3. /// <summary>SEIBro getSecnFrsecCusInfo 파서 — NATION_CD·SECN_TPCD·FRSEC_TOT_HOLD_AMT·FRSEC_TOT_HOLD_QTY(소수) 매핑. 종목당 국가별 다수 행.</summary>
  4. [TestClass]
  5. public sealed class SeibroSecnFrsecCusParserTests
  6. {
  7. [TestMethod]
  8. public void Parse_SampleXml_MapsHoldAmountAndQty()
  9. {
  10. var rows = SeibroSecnFrsecCusParser.Parse(SeibroXml.Parse(SeibroFixtures.Read("getSecnFrsecCusInfo.xml")));
  11. Assert.AreEqual(2, rows.Count, "국가별 2행 (DE·US)");
  12. var us = rows.Single(c => c.NationCd == "US");
  13. Assert.AreEqual("71", us.SecnTpcd);
  14. Assert.AreEqual(737881960m, us.FrsecTotHoldAmt, "미국 보유금액 USD");
  15. Assert.AreEqual(404778m, us.FrsecTotHoldQty, "보유수량");
  16. var de = rows.Single(c => c.NationCd == "DE");
  17. Assert.AreEqual(10812m, de.FrsecTotHoldAmt);
  18. Assert.AreEqual(6m, de.FrsecTotHoldQty);
  19. }
  20. }