From 03f1a7389afeadf9aa2b1d62a38e5cb0a2a7e60d Mon Sep 17 00:00:00 2001 From: Ruben Beltran del Rio Date: Sat, 13 Dec 2025 01:17:52 +0100 Subject: Initial implementation --- Tests/WmapParserTests/StagesParserTests.swift | 48 +++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 Tests/WmapParserTests/StagesParserTests.swift (limited to 'Tests/WmapParserTests/StagesParserTests.swift') diff --git a/Tests/WmapParserTests/StagesParserTests.swift b/Tests/WmapParserTests/StagesParserTests.swift new file mode 100644 index 0000000..50bab4b --- /dev/null +++ b/Tests/WmapParserTests/StagesParserTests.swift @@ -0,0 +1,48 @@ +import Testing + +@testable import WmapParser + +@Test func shouldParseStageI() { + let source = "[I] 0.25" + let result = parse(source) + #expect(result.stages.count == 1) + #expect( + result.stages.first == Stage(stage: .stageI, value: 0.25) + ) +} + +@Test func shouldParseStageII() { + let source = "[ii] 0.5" + let result = parse(source) + #expect(result.stages.count == 1) + #expect( + result.stages.first == Stage(stage: .stageII, value: 0.5) + ) +} + +@Test func shouldParseStageIII() { + let source = "[III] 0.75" + let result = parse(source) + #expect(result.stages.count == 1) + #expect( + result.stages.first == Stage(stage: .stageIII, value: 0.75) + ) +} + +@Test func shouldParseStageIV() { + let source = "[Iv] 1.0" + let result = parse(source) + #expect(result.stages.count == 1) + #expect( + result.stages.first == Stage(stage: .stageIV, value: 1.0) + ) +} + +@Test func shouldHandleDecimalValues() { + let source = "[i] .333" + let result = parse(source) + #expect(result.stages.count == 1) + #expect( + result.stages.first == Stage(stage: .stageI, value: 0.333) + ) +} -- cgit