From 7e31bab9ff7209c9b6d7928a581d7a449846f42e Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sun, 2 Aug 2026 17:32:43 +0900 Subject: fix(json): propagate JsonFile::encode errors instead of unwrapping PHP's JsonFile::encode throws a RuntimeException when json_encode fails; the port swallowed that into an .unwrap() marked TODO(phase-c). Return anyhow::Result from encode/encode_with_options and propagate at every call site (print_table and list_repositories become Result-returning to carry it). Co-Authored-By: Claude Fable 5 --- crates/shirabe/tests/repository/vcs/forgejo_driver_test.rs | 7 +++++-- crates/shirabe/tests/repository/vcs/gitlab_driver_test.rs | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) (limited to 'crates/shirabe/tests/repository/vcs') diff --git a/crates/shirabe/tests/repository/vcs/forgejo_driver_test.rs b/crates/shirabe/tests/repository/vcs/forgejo_driver_test.rs index d9138b0c..46d3832d 100644 --- a/crates/shirabe/tests/repository/vcs/forgejo_driver_test.rs +++ b/crates/shirabe/tests/repository/vcs/forgejo_driver_test.rs @@ -123,6 +123,7 @@ fn repo_body() -> String { ); m })) + .unwrap() } #[test] @@ -175,7 +176,8 @@ fn test_get_branches() { entry.insert("name".to_string(), PhpMixed::String("main".to_string())); entry.insert("commit".to_string(), PhpMixed::Array(commit)); entry - })])); + })])) + .unwrap(); let (http_downloader, _http_guard) = http_mock(vec![ expect_full( @@ -217,7 +219,8 @@ fn test_get_tags() { entry.insert("name".to_string(), PhpMixed::String("1.0".to_string())); entry.insert("commit".to_string(), PhpMixed::Array(commit)); entry - })])); + })])) + .unwrap(); let (http_downloader, _http_guard) = http_mock(vec![ expect_full( diff --git a/crates/shirabe/tests/repository/vcs/gitlab_driver_test.rs b/crates/shirabe/tests/repository/vcs/gitlab_driver_test.rs index 2dd968ce..aa89040d 100644 --- a/crates/shirabe/tests/repository/vcs/gitlab_driver_test.rs +++ b/crates/shirabe/tests/repository/vcs/gitlab_driver_test.rs @@ -513,7 +513,7 @@ fn test_get_paginated_refs() { "2013-03-09T16:35:23.000+01:00", )); } - let branch_data = shirabe::json::JsonFile::encode(&PhpMixed::List(branch_data)); + let branch_data = shirabe::json::JsonFile::encode(&PhpMixed::List(branch_data)).unwrap(); let (http_downloader, _guard) = get_http_downloader_mock( vec![ -- cgit v1.3.1