@@ -67,6 +67,7 @@ fn assert_has_keys(output: &str, keys: &[&str], label: &str) {
6767}
6868
6969/// Assert a JSON field equals a specific value.
70+ #[ allow( dead_code) ]
7071fn assert_field ( output : & str , field : & str , expected : & Value , label : & str ) {
7172 let json = parse_json ( output) . expect ( & format ! ( "{label}: not valid JSON" ) ) ;
7273 assert_eq ! (
@@ -94,8 +95,8 @@ fn init() {
9495 let ( out, exit) = run ( dir. path ( ) , & [ "init" ] ) ;
9596
9697 assert_eq ! ( exit, 0 , "init should exit 0" ) ;
97- assert_field ( & out , "success" , & Value :: Bool ( true ) , "init" ) ;
98- assert_has_keys ( & out, & [ "success" ] , " init") ;
98+ // In compact mode (non-TTY ), "success" is stripped; just verify valid JSON
99+ assert ! ( parse_json ( & out) . is_some ( ) , " init: output should be valid JSON ") ;
99100}
100101
101102#[ test]
@@ -105,7 +106,7 @@ fn init_idempotent() {
105106
106107 let ( out, exit) = run ( dir. path ( ) , & [ "init" ] ) ;
107108 assert_eq ! ( exit, 0 ) ;
108- assert_field ( & out, "success" , & Value :: Bool ( true ) , "reinit" ) ;
109+ assert ! ( parse_json ( & out) . is_some ( ) , "reinit: output should be valid JSON " ) ;
109110}
110111
111112#[ test]
@@ -141,8 +142,7 @@ fn epic_create() {
141142
142143 let ( out, exit) = run ( dir. path ( ) , & [ "epic" , "create" , "--title" , "Test Epic" ] ) ;
143144 assert_eq ! ( exit, 0 ) ;
144- assert_field ( & out, "success" , & Value :: Bool ( true ) , "epic create" ) ;
145- assert_has_keys ( & out, & [ "success" , "id" , "title" ] , "epic create" ) ;
145+ assert_has_keys ( & out, & [ "id" , "title" ] , "epic create" ) ;
146146
147147 let json = parse_json ( & out) . unwrap ( ) ;
148148 assert_eq ! ( json[ "title" ] , "Test Epic" ) ;
@@ -182,8 +182,7 @@ fn task_create() {
182182 & [ "task" , "create" , "--epic" , & epic_id, "--title" , "Task Alpha" ] ,
183183 ) ;
184184 assert_eq ! ( exit, 0 ) ;
185- assert_field ( & out, "success" , & Value :: Bool ( true ) , "task create" ) ;
186- assert_has_keys ( & out, & [ "success" , "id" ] , "task create" ) ;
185+ assert_has_keys ( & out, & [ "id" ] , "task create" ) ;
187186}
188187
189188#[ test]
@@ -234,7 +233,7 @@ fn start_task() {
234233
235234 let ( out, exit) = run ( dir. path ( ) , & [ "start" , & task_id] ) ;
236235 assert_eq ! ( exit, 0 ) ;
237- assert_field ( & out, "success" , & Value :: Bool ( true ) , "start" ) ;
236+ assert ! ( parse_json ( & out) . is_some ( ) , "start: output should be valid JSON " ) ;
238237}
239238
240239#[ test]
@@ -264,7 +263,7 @@ fn done_task() {
264263 & [ "done" , & task_id, "--summary" , "Completed" , "--force" ] ,
265264 ) ;
266265 assert_eq ! ( exit, 0 ) ;
267- assert_field ( & out, "success" , & Value :: Bool ( true ) , "done" ) ;
266+ assert ! ( parse_json ( & out) . is_some ( ) , "done: output should be valid JSON " ) ;
268267}
269268
270269// ═══════════════════════════════════════════════════════════════════════
0 commit comments