test: 修正两处断言旧行为的存量测试(患者→我 文案、lab 段归并)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
link2026
2026-06-10 07:12:48 +08:00
parent 2e90139df7
commit 2e27677f80
2 changed files with 15 additions and 9 deletions

View File

@@ -3,7 +3,7 @@ import Testing
@testable import @testable import
struct HealthExportDialogueTests { struct HealthExportDialogueTests {
@Test func dialogueTranscriptKeepsTurnOrderAndRoles() { @Test func dialogueTranscriptKeepsTurnOrderAndRoles() throws {
let turns: [HealthExportDialogueTurn] = [ let turns: [HealthExportDialogueTurn] = [
.user("我最近头晕,帮我看看"), .user("我最近头晕,帮我看看"),
.assistant("我会结合你的指标和日记整理。"), .assistant("我会结合你的指标和日记整理。"),
@@ -12,10 +12,13 @@ struct HealthExportDialogueTests {
let transcript = HealthExportDialogueTurn.transcript(from: turns) let transcript = HealthExportDialogueTurn.transcript(from: turns)
#expect(transcript.contains("患者: 我最近头晕,帮我看看")) // (线:, ca5a3fa)
#expect(transcript.contains("我: 我最近头晕,帮我看看"))
#expect(transcript.contains("康康: 我会结合你的指标和日记整理。")) #expect(transcript.contains("康康: 我会结合你的指标和日记整理。"))
#expect(transcript.contains("患者: 重点看血压")) #expect(transcript.contains(": 重点看血压"))
#expect(transcript.range(of: "患者: 我最近头晕")!.lowerBound < transcript.range(of: "患者: 重点看血压")!.lowerBound) let first = try #require(transcript.range(of: "我: 我最近头晕"))
let second = try #require(transcript.range(of: "我: 重点看血压"))
#expect(first.lowerBound < second.lowerBound)
} }
@Test func dialogueTranscriptDropsEmptyTurns() { @Test func dialogueTranscriptDropsEmptyTurns() {
@@ -27,8 +30,8 @@ struct HealthExportDialogueTests {
let transcript = HealthExportDialogueTurn.transcript(from: turns) let transcript = HealthExportDialogueTurn.transcript(from: turns)
#expect(!transcript.contains("患者: ")) #expect(!transcript.contains(": "))
#expect(transcript.contains("康康: 请补充想看的问题")) #expect(transcript.contains("康康: 请补充想看的问题"))
#expect(transcript.contains("患者: 最近三个月")) #expect(transcript.contains(": 最近三个月"))
} }
} }

View File

@@ -18,14 +18,17 @@ struct SeriesBucketTests {
seriesKey: seriesKey) seriesKey: seriesKey)
} }
@Test func skipsIndicatorsWithoutSeriesKey() { @Test func indicatorsWithoutSeriesKeyFoldIntoLabBucket() {
// lab : seriesKey name+unit , minPoints
let now = Date() let now = Date()
let items = [ let items = [
makeIndicator(value: "5.0", capturedAt: now, seriesKey: nil), makeIndicator(value: "5.0", capturedAt: now.addingTimeInterval(-86_400), seriesKey: nil),
makeIndicator(value: "5.2", capturedAt: now, seriesKey: nil), makeIndicator(value: "5.2", capturedAt: now, seriesKey: nil),
] ]
let buckets = SeriesBucket.build(from: items) let buckets = SeriesBucket.build(from: items)
#expect(buckets.isEmpty) #expect(buckets.count == 1)
#expect(buckets.first?.kind == .lab)
#expect(buckets.first?.lines.first?.points.count == 2)
} }
@Test func filtersOutSeriesWithFewerThanMinPoints() { @Test func filtersOutSeriesWithFewerThanMinPoints() {