diff --git a/src/engine/lexer.test.ts b/src/engine/lexer.test.ts index 0fbdc80..bac420c 100644 --- a/src/engine/lexer.test.ts +++ b/src/engine/lexer.test.ts @@ -1,5 +1,5 @@ import { describe, it, expect } from "vitest"; -import { lexLine } from "./lexer"; +import { lexLine, lexPhrase } from "./lexer"; import { Decimal } from "./types"; describe("lexer", () => { @@ -110,4 +110,22 @@ describe("lexer", () => { ]); }); }); + + describe("lexPhrase", () => { + it("should split a phrase into raw strings", () => { + expect(lexPhrase("meters per second")).toEqual(["meters", "per", "second"]); + }); + + it("should handle empty strings", () => { + expect(lexPhrase("")).toEqual([]); + }); + + it("should ignore extra spaces", () => { + expect(lexPhrase(" meters per second ")).toEqual(["meters", "per", "second"]); + }); + + it("should handle symbols correctly", () => { + expect(lexPhrase("meters / second")).toEqual(["meters", "/", "second"]); + }); + }); });