chore: add Apache License 2.0 and ignore build directory

This commit is contained in:
2026-07-16 17:24:50 +03:00
parent 45e4bce2a0
commit 7affa0dbc8
23 changed files with 1814 additions and 157 deletions
+37
View File
@@ -0,0 +1,37 @@
package terminal
import (
"bytes"
"testing"
"time"
"tea.chunkbyte.com/kato/captioneer/src/captions"
)
func TestTerminalProvisionalAndFinalOutput(t *testing.T) {
var output bytes.Buffer
sink := New(&output)
if err := sink.Publish(captions.Event{Kind: captions.Provisional, Text: "draft"}); err != nil {
t.Fatal(err)
}
if err := sink.Publish(captions.Event{
Kind: captions.Final, Text: "done", StartedAt: time.Second, EndedAt: 2500 * time.Millisecond,
}); err != nil {
t.Fatal(err)
}
want := "\r\033[2K… draft\r\033[2K[1.00s-2.50s] done\n"
if output.String() != want {
t.Fatalf("output = %q, want %q", output.String(), want)
}
}
func TestTerminalHideClearsOnlyVisiblePreview(t *testing.T) {
var output bytes.Buffer
sink := New(&output)
_ = sink.Publish(captions.Event{Kind: captions.Hide})
_ = sink.Publish(captions.Event{Kind: captions.Provisional, Text: "draft"})
_ = sink.Publish(captions.Event{Kind: captions.Hide})
if got := output.String(); got != "\r\033[2K… draft\r\033[2K" {
t.Fatalf("unexpected output %q", got)
}
}