summaryrefslogtreecommitdiff
path: root/tests/FundLab.Api.Tests/NavDateProbeTests.fs
diff options
context:
space:
mode:
authorSomhairle H. Marisol <[email protected]>2026-09-22 01:12:52 +0800
committerSomhairle H. Marisol <[email protected]>2026-09-22 01:12:52 +0800
commit3cc0b4dcfeed042e5a69628c6b7f45580ad1e2f9 (patch)
treeb86805c2680327412d6f5d554d4506ebfe62fc2f /tests/FundLab.Api.Tests/NavDateProbeTests.fs
parent70e1ad4fc8ba248f835d415faade8a91ac3dc1f8 (diff)
downloadfund-lab-3cc0b4dcfeed042e5a69628c6b7f45580ad1e2f9.tar.gz
Add real AKShare bond quote probe slice (3d-14)
Diffstat (limited to 'tests/FundLab.Api.Tests/NavDateProbeTests.fs')
-rw-r--r--tests/FundLab.Api.Tests/NavDateProbeTests.fs19
1 files changed, 17 insertions, 2 deletions
diff --git a/tests/FundLab.Api.Tests/NavDateProbeTests.fs b/tests/FundLab.Api.Tests/NavDateProbeTests.fs
index 6197950..1c57fd1 100644
--- a/tests/FundLab.Api.Tests/NavDateProbeTests.fs
+++ b/tests/FundLab.Api.Tests/NavDateProbeTests.fs
@@ -27,7 +27,20 @@ module NavDateProbeSupport =
let collectorReturning (fetch: unit -> Result<string, string>) =
{ new IMarketDataCollector with
member _.Search(_, _) = Ok ""
- member _.FetchNav(_, _) = fetch () }
+ member _.FetchNav(_, _) = fetch ()
+ member _.FetchBondQuote(_, _) = Ok "" }
+
+ let stubBondQuoteProbe =
+ { new IBondQuoteProbe with
+ member _.GetQuote(_, _) = Error(InvalidMarketDataRequest "bond probe not configured for this test") }
+
+ let stubNavDateProbe =
+ { new INavDateProbe with
+ member _.RecentNavDates(_, _, _) = Ok [] }
+
+ let stubNavSeriesProbe =
+ { new INavSeriesProbe with
+ member _.RecentNavSeries(_, _, _) = Ok [] }
let realAksharePython () =
let configured = Environment.GetEnvironmentVariable("FUND_LAB_AKSHARE_PYTHON")
@@ -76,7 +89,9 @@ type NavDateProbeTests(fixture: PostgresFixture) =
member _.RecentNavSeries(_, _, _) = Ok [] }
let appWithProbe (probe: INavDateProbe) =
- App.createApplicationWithProbes (repository ()) { NavDates = probe; NavSeries = stubSeriesProbe }
+ App.createApplicationWithProbes
+ (repository ())
+ { NavDates = probe; NavSeries = stubSeriesProbe; BondQuotes = NavDateProbeSupport.stubBondQuoteProbe }
[<Fact>]
member _.``probe parses, dedupes, sorts descending and truncates``() =