diff options
Diffstat (limited to 'internal/askcli')
| -rw-r--r-- | internal/askcli/taskexport.go | 8 | ||||
| -rw-r--r-- | internal/askcli/taskexport_test.go | 20 |
2 files changed, 15 insertions, 13 deletions
diff --git a/internal/askcli/taskexport.go b/internal/askcli/taskexport.go index 9841821..ca67ef5 100644 --- a/internal/askcli/taskexport.go +++ b/internal/askcli/taskexport.go @@ -32,11 +32,3 @@ func ParseTaskExport(r io.Reader) ([]TaskExport, error) { } return tasks, nil } - -func MustParseTaskExport(data []byte) []TaskExport { - var tasks []TaskExport - if err := json.Unmarshal(data, &tasks); err != nil { - panic(fmt.Sprintf("failed to parse task export JSON: %v", err)) - } - return tasks -} diff --git a/internal/askcli/taskexport_test.go b/internal/askcli/taskexport_test.go index e7779aa..799415a 100644 --- a/internal/askcli/taskexport_test.go +++ b/internal/askcli/taskexport_test.go @@ -2,11 +2,21 @@ package askcli import ( "encoding/json" + "fmt" "io" "strings" "testing" ) +// mustParseTaskExport is a test-only helper that panics on parse failure. +func mustParseTaskExport(data []byte) []TaskExport { + var tasks []TaskExport + if err := json.Unmarshal(data, &tasks); err != nil { + panic(fmt.Sprintf("failed to parse task export JSON: %v", err)) + } + return tasks +} + func TestParseTaskExport_ValidJSON(t *testing.T) { data := `[{"uuid":"abc123","description":"Test task","status":"pending","priority":"M","tags":["cli"],"urgency":10.5,"depends":[]}]` tasks, err := ParseTaskExport(strings.NewReader(data)) @@ -31,18 +41,18 @@ func TestParseTaskExport_InvalidJSON(t *testing.T) { } } -func TestMustParseTaskExport_Panics(t *testing.T) { +func TestMustParseTaskExportHelper_Panics(t *testing.T) { defer func() { if r := recover(); r == nil { - t.Fatal("MustParseTaskExport should panic on invalid JSON") + t.Fatal("mustParseTaskExport should panic on invalid JSON") } }() - MustParseTaskExport([]byte("not json")) + mustParseTaskExport([]byte("not json")) } -func TestMustParseTaskExport_ValidJSON(t *testing.T) { +func TestMustParseTaskExportHelper_ValidJSON(t *testing.T) { data := []byte(`[{"uuid":"xyz789","description":"Another task","status":"completed","priority":"H","tags":["agent"],"urgency":15.0,"depends":["dep1"]}]`) - tasks := MustParseTaskExport(data) + tasks := mustParseTaskExport(data) if len(tasks) != 1 { t.Fatalf("len(tasks) = %d, want 1", len(tasks)) } |
