Skip to content
quarry Artifact [f273e97bcb]
Login

Artifact [f273e97bcb]

Artifact f273e97bcbc2d819c0b01e92000a4dc8b87c8a2e593434a9f14c95ac29ed8ddf:


package index

import (
	"os"
	"testing"
)

// A scratch inspector for a real corpus, run by hand:
//
//	QUARRY_TKT_DB=… QUARRY_TKT_ID=… go test ./internal/index -run TicketShape -v
func TestTicketShapeAgainstCorpus(t *testing.T) {
	db, id := os.Getenv("QUARRY_TKT_DB"), os.Getenv("QUARRY_TKT_ID")
	if db == "" || id == "" {
		t.Skip("set QUARRY_TKT_DB and QUARRY_TKT_ID")
	}
	ix, err := Open(db)
	if err != nil {
		t.Fatal(err)
	}
	defer ix.Close()
	tk, ok, err := ix.TicketByPrefix(id)
	if err != nil || !ok {
		t.Fatalf("lookup: ok=%v err=%v", ok, err)
	}
	t.Logf("id=%.12s created=%s updated=%s", tk.ID, tk.Created, tk.Updated)
	t.Logf("description: %d bytes, mimetype=%q", len(tk.Description), tk.DescriptionMimetype)
	t.Logf("scalar fields (%d):", len(tk.Fields))
	for _, f := range tk.Fields {
		v := f.Value
		if len(v) > 46 {
			v = v[:46] + "…"
		}
		t.Logf("   %-12s %s", f.Name, v)
	}
	t.Logf("comments: %d", len(tk.Comments))
	for i, c := range tk.Comments {
		if i >= 3 {
			break
		}
		b := c.Body
		if len(b) > 46 {
			b = b[:46] + "…"
		}
		t.Logf("   %s by %s (%s): %s", c.Date, c.Login, c.Mimetype, b)
	}
}