import Testing @testable import WmapParser @Test func shouldParseAGroupWithASingleComponent() { let source = "[Group] Lonely" let result = WmapParser.parse(source) #expect(result.groups.count == 1) #expect(result.groups.first?.components == ["Lonely"]) } @Test func shouldParseAGroupWithMultipleComponents() { let source = "[GrouP] Huey, Dewey, Louie" let result = WmapParser.parse(source) #expect(result.groups.count == 1) #expect(result.groups.first?.components == ["Huey", "Dewey", "Louie"]) } @Test func shouldHandleCaseInsensitiveGroupKeyword() { let source = "[group] Salt, Pepper" let result = WmapParser.parse(source) #expect(result.groups.count == 1) #expect(result.groups.first?.components == ["Salt", "Pepper"]) } @Test func shouldPreserveCaseInGroupComponentLabel() { let source = "[GROUP] XML, LaTeX" let result = WmapParser.parse(source) #expect(result.groups.count == 1) #expect(result.groups.first?.components == ["XML", "LaTeX"]) } @Test func shouldHandleWhitespaceAroundCommas() { let source = "[Group] sky, is large, emperor" let result = WmapParser.parse(source) #expect(result.groups.count == 1) #expect(result.groups.first?.components == ["sky", "is large", "emperor"]) }