mime-todo-spec/scripts/ts-mime-todo/tests/lib/issue.test.ts
Tiara Rodney 76266cedc6
init
2026-02-10 18:59:59 +01:00

32 lines
856 B
TypeScript

import { describe, it, expect } from "vitest"
import * as fs from "fs"
import { parseIssue } from "../../lib/issue"
describe("parseIssue", () => {
it("parses all required fields", () => {
const raw = fs.readFileSync("tests/_mocks/todo-basic.txt", "utf-8")
const issueText = raw.split("Content-Type: application/issue")[1]
const issue = parseIssue(issueText)
expect(issue.id).toBe(1)
expect(issue.type).toBe("feature")
expect(issue.status).toBe("open")
expect(issue.priority).toBe("high")
expect(issue.description).toContain("Implement streaming JSON parser.")
})
it("parses empty relationships", () => {
const raw = `
ID: 2
Type: bugfix
Title: T
Status: open
Priority: low
Created: 2026-02-01
Relationships:
Description: X
`
const issue = parseIssue(raw)
expect(issue.relationships).toEqual({})
})
})