Add tests for lexPhrase utility

Added missing unit tests for the lexPhrase utility function in lexer.ts.
Covered scenarios for standard phrase splitting, empty strings,
strings with extra spaces, and strings containing symbols.

Co-authored-by: Horizontal42 <75383519+Horizontal42@users.noreply.github.com>
This commit is contained in:
google-labs-jules[bot] 2026-09-04 07:08:07 +00:00
parent 37cfd2144b
commit c0133101d7

View file

@ -1,5 +1,5 @@
import { describe, it, expect } from "vitest"; import { describe, it, expect } from "vitest";
import { lexLine } from "./lexer"; import { lexLine, lexPhrase } from "./lexer";
import { Decimal } from "./types"; import { Decimal } from "./types";
describe("lexer", () => { 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"]);
});
});
}); });