| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- import { describe, expect, it } from "bun:test"
- import { shouldSummarize } from "../../src/kilocode/paste-summary"
- describe("paste-summary", () => {
- it("does not summarize 4 lines", () => {
- const text = Array.from({ length: 4 }, (_, i) => `line ${i + 1}`).join("\n")
- expect(shouldSummarize(text)).toEqual({ lines: 4, summarize: false })
- })
- it("summarizes 5 lines", () => {
- const text = Array.from({ length: 5 }, (_, i) => `line ${i + 1}`).join("\n")
- expect(shouldSummarize(text)).toEqual({ lines: 5, summarize: true })
- })
- it("does not summarize 800 chars", () => {
- const text = "a".repeat(800)
- expect(shouldSummarize(text)).toEqual({ lines: 1, summarize: false })
- })
- it("summarizes 801 chars", () => {
- const text = "a".repeat(801)
- expect(shouldSummarize(text)).toEqual({ lines: 1, summarize: true })
- })
- it("summarizes when either threshold triggers independently", () => {
- const lines = Array.from({ length: 5 }, () => "a").join("\n")
- const chars = "b".repeat(801)
- expect(shouldSummarize(lines)).toEqual({ lines: 5, summarize: true })
- expect(shouldSummarize(chars)).toEqual({ lines: 1, summarize: true })
- })
- it("keeps 4 lines and 780 chars expanded", () => {
- const row = "a".repeat(194)
- const text = Array.from({ length: 4 }, () => row).join("\n")
- expect(text.length).toBe(779)
- expect(shouldSummarize(text)).toEqual({ lines: 4, summarize: false })
- })
- it("summarizes 5 lines and 500 chars", () => {
- const row = "b".repeat(96)
- const text = Array.from({ length: 5 }, () => row).join("\n")
- expect(text.length).toBe(484)
- expect(shouldSummarize(text)).toEqual({ lines: 5, summarize: true })
- })
- })
|