diff --git a/api/src/call_api.rs b/api/src/call_api.rs index a064afd5..8dd6ea22 100644 --- a/api/src/call_api.rs +++ b/api/src/call_api.rs @@ -1,12 +1,12 @@ -use std::sync::mpsc::Sender; use std::sync::Arc; +use std::sync::mpsc::Sender; use std::{env, time::Duration}; use constants::TRUNK_API_CLIENT_RETRY_COUNT_ENV; -use display::message::{send_message, DisplayMessage, ProgressMessage}; +use display::message::{DisplayMessage, ProgressMessage, send_message}; use http::StatusCode; use tokio::time::{self, Instant}; -use tokio_retry::{strategy::ExponentialBackoff, Action, RetryIf}; +use tokio_retry::{Action, RetryIf, strategy::ExponentialBackoff}; use crate::client::{NOT_FOUND_CONTEXT, UNAUTHORIZED_CONTEXT}; @@ -26,7 +26,9 @@ const fn enforce_increment_check_progress_interval_secs( return report_slow_progress_timeout_secs; } // NOTE: This is a build time error due to `const fn` - panic!("`report_slow_progress_timeout_secs` must be an increment of `CHECK_PROGRESS_INTERVAL_SECS`") + panic!( + "`report_slow_progress_timeout_secs` must be an increment of `CHECK_PROGRESS_INTERVAL_SECS`" + ) } fn default_delay() -> std::iter::Take { @@ -199,8 +201,8 @@ where mod tests { use std::{ sync::{ - atomic::{AtomicUsize, Ordering}, Arc, Mutex, + atomic::{AtomicUsize, Ordering}, }, time::Duration, }; @@ -211,10 +213,10 @@ mod tests { use tokio::time; use super::{ - CallApi, CHECK_PROGRESS_INTERVAL_SECS, REPORT_SLOW_PROGRESS_TIMEOUT_SECS, + CHECK_PROGRESS_INTERVAL_SECS, CallApi, REPORT_SLOW_PROGRESS_TIMEOUT_SECS, RETRY_COUNT_DEFAULT, }; - use crate::client::{status_code_help, CheckNotFound, CheckUnauthorized}; + use crate::client::{CheckNotFound, CheckUnauthorized, status_code_help}; #[derive(Debug, Serialize, Clone, Deserialize, PartialEq, Eq)] struct EmptyResponse {} diff --git a/bundle/src/bundler.rs b/bundle/src/bundler.rs index 6c3d4232..cd8f651e 100644 --- a/bundle/src/bundler.rs +++ b/bundle/src/bundler.rs @@ -43,7 +43,7 @@ pub fn unzip_tarball(bundle_path: &PathBuf, unpack_dir: &PathBuf) -> anyhow::Res } impl<'a> BundlerUtil<'a> { - const ZSTD_COMPRESSION_LEVEL: i32 = 15; // This gives roughly 10x compression for text, 22 gives 11x. + const ZSTD_COMPRESSION_LEVEL: i32 = 1; // Use low compression level for faster compression/decompression. pub fn new(meta: &'a BundleMeta, bep_result: Option) -> Self { Self { meta, bep_result } @@ -521,7 +521,8 @@ mod tests { { let tar_file = std::fs::File::create(&new_bundle_path).unwrap(); - let zstd_encoder = zstd::Encoder::new(tar_file, 15).unwrap(); + let zstd_encoder = + zstd::Encoder::new(tar_file, BundlerUtil::ZSTD_COMPRESSION_LEVEL).unwrap(); let mut tar_builder = tar::Builder::new(zstd_encoder); for mut entry in entries_with_internal_bin_last { @@ -677,7 +678,8 @@ mod tests { { let tar_file = std::fs::File::create(&tarball_path).unwrap(); - let zstd_enc = zstd::Encoder::new(tar_file, 15).unwrap(); + let zstd_enc = + zstd::Encoder::new(tar_file, BundlerUtil::ZSTD_COMPRESSION_LEVEL).unwrap(); let mut tar_builder = tar::Builder::new(zstd_enc); let content = b"not a real protobuf"; @@ -709,7 +711,8 @@ mod tests { { let tar_file = std::fs::File::create(&tarball_path).unwrap(); - let zstd_enc = zstd::Encoder::new(tar_file, 15).unwrap(); + let zstd_enc = + zstd::Encoder::new(tar_file, BundlerUtil::ZSTD_COMPRESSION_LEVEL).unwrap(); let tar_builder = tar::Builder::new(zstd_enc); tar_builder.into_inner().unwrap().finish().unwrap(); } diff --git a/cli/src/test_command.rs b/cli/src/test_command.rs index 0d359a0b..af69b511 100644 --- a/cli/src/test_command.rs +++ b/cli/src/test_command.rs @@ -1,7 +1,7 @@ use std::{ env, process::{Command, Stdio}, - sync::{mpsc::Sender, Arc}, + sync::{Arc, mpsc::Sender}, time::SystemTime, }; @@ -9,16 +9,16 @@ use clap::Args; use constants::EXIT_FAILURE; use display::{ end_output::EndOutput, - message::{send_message, DisplayMessage}, + message::{DisplayMessage, send_message}, }; use superconsole::{ - style::{Attribute, Stylize}, Line, Span, + style::{Attribute, Stylize}, }; use crate::{ context::{gather_debug_props, gather_initial_test_context}, - upload_command::{run_upload, UploadArgs, UploadRunResult}, + upload_command::{UploadArgs, UploadRunResult, run_upload}, }; enum RunOutput { diff --git a/codeowners/src/codeowners.rs b/codeowners/src/codeowners.rs index d73f0ebf..ad8ec767 100644 --- a/codeowners/src/codeowners.rs +++ b/codeowners/src/codeowners.rs @@ -317,7 +317,11 @@ where U: AsRef, { let file = repo_root.as_ref().join(location).join(CODEOWNERS); - if file.is_file() { Some(file) } else { None } + if file.is_file() { + Some(file) + } else { + None + } } #[cfg(test)] diff --git a/codeowners/src/lib.rs b/codeowners/src/lib.rs index ea7d9b44..881bf561 100644 --- a/codeowners/src/lib.rs +++ b/codeowners/src/lib.rs @@ -4,9 +4,8 @@ mod gitlab; mod traits; pub use codeowners::{ - BindingsOwners, BindingsOwnersAndId, BindingsOwnersAndSource, CodeOwners, CodeOwnersFile, - Owners, OwnersSource, associate_codeowners, associate_codeowners_multithreaded, - flatten_code_owners, + associate_codeowners, associate_codeowners_multithreaded, flatten_code_owners, BindingsOwners, + BindingsOwnersAndId, BindingsOwnersAndSource, CodeOwners, CodeOwnersFile, Owners, OwnersSource, }; pub use github::{BindingsGitHubOwners, GitHubOwner, GitHubOwners}; pub use gitlab::{BindingsGitLabOwners, GitLabOwner, GitLabOwners}; diff --git a/context/src/bazel_bep/binary_parser.rs b/context/src/bazel_bep/binary_parser.rs index 6bb0b708..15e995e7 100644 --- a/context/src/bazel_bep/binary_parser.rs +++ b/context/src/bazel_bep/binary_parser.rs @@ -2,8 +2,8 @@ use std::io::Read; use std::path::PathBuf; use bazel_bep::types::build_event_stream::BuildEvent; -use prost::bytes::Buf; use prost::Message; +use prost::bytes::Buf; use crate::bazel_bep::common::BepParseResult; @@ -61,82 +61,130 @@ mod tests { let empty_errors_vec: Vec = Vec::new(); pretty_assertions::assert_eq!( - parse_result.uncached_xml_files(), - vec![ - JunitReportFileWithTestRunnerReport { - junit_path: String::from("bytestream://buildbarn2.build.trunk-staging.io:1986/blobs/37d45ccef587444393523741a3831f4a1acbeb010f74f33130ab9ba687477558/449"), - test_runner_report: Some(TestRunnerReport { - status: TestRunnerReportStatus::Passed, - start_time: DateTime::parse_from_rfc3339("2025-05-16T19:27:25.037Z").unwrap().into(), - end_time: DateTime::parse_from_rfc3339("2025-05-16T19:27:27.605Z").unwrap().into(), - label: Some("//trunk/hello_world/bazel_pnpm:test".into()) - }) - }, - JunitReportFileWithTestRunnerReport { - junit_path: String::from("bytestream://buildbarn2.build.trunk-staging.io:1986/blobs/46bbeb038d6f1447f6224a7db4d8a109e133884f2ee6ee78487ca4ce7e073de8/507"), - test_runner_report: Some(TestRunnerReport { - status: TestRunnerReportStatus::Passed, - start_time: DateTime::parse_from_rfc3339("2025-05-16T19:29:32.732Z").unwrap().into(), - end_time: DateTime::parse_from_rfc3339("2025-05-16T19:29:32.853Z").unwrap().into(), - label: Some("//trunk/hello_world/cc:hello_test".into()), - }) - }, - JunitReportFileWithTestRunnerReport { - junit_path: String::from("bytestream://buildbarn2.build.trunk-staging.io:1986/blobs/d1f48dadf5679f09ce9b9c8f4778281ab25bc1dfdddec943e1255baf468630de/451"), - test_runner_report: Some(TestRunnerReport { - status: TestRunnerReportStatus::Passed, - start_time: DateTime::parse_from_rfc3339("2025-05-16T19:32:32.180Z").unwrap().into(), - end_time: DateTime::parse_from_rfc3339("2025-05-16T19:32:34.697Z").unwrap().into(), - label: Some("//trunk/hello_world/ts_proto:test".into()), - }) - }, - JunitReportFileWithTestRunnerReport { - junit_path: String::from("bytestream://buildbarn2.build.trunk-staging.io:1986/blobs/38f1d4ce43242ed3cb08aedf1cc0c3133a8aec8e8eee61f5b84b85a5ba718bc8/1204"), - test_runner_report: Some(TestRunnerReport { - status: TestRunnerReportStatus::Passed, - start_time: DateTime::parse_from_rfc3339("2025-05-16T19:32:31.748Z").unwrap().into(), - end_time: DateTime::parse_from_rfc3339("2025-05-16T19:32:34.797Z").unwrap().into(), - label: Some("//trunk/hello_world/ts_grpc:test".into()), - }) - }, - JunitReportFileWithTestRunnerReport { - junit_path: String::from("bytestream://buildbarn2.build.trunk-staging.io:1986/blobs/ac23080b9bf5599b7781e3b62be9bf9a5b6685a8cbe76de4e9e1731a318e9283/607"), - test_runner_report: Some(TestRunnerReport { - status: TestRunnerReportStatus::Passed, - start_time: DateTime::parse_from_rfc3339("2025-05-16T19:33:01.680Z").unwrap().into(), - end_time: DateTime::parse_from_rfc3339("2025-05-16T19:33:01.806Z").unwrap().into(), - label: Some("//trunk/hello_world/cdk:lib_typecheck_test".into()), - }) - }, - JunitReportFileWithTestRunnerReport { - junit_path: String::from("bytestream://buildbarn2.build.trunk-staging.io:1986/blobs/9c1db1d25ca6a4268be4a8982784c525a4b0ca99cbc7614094ad36c56bb08f2a/463"), - test_runner_report: Some(TestRunnerReport { - status: TestRunnerReportStatus::Passed, - start_time: DateTime::parse_from_rfc3339("2025-05-16T19:32:52.714Z").unwrap().into(), - end_time: DateTime::parse_from_rfc3339("2025-05-16T19:33:17.945Z").unwrap().into(), - label: Some("//trunk/hello_world/prisma/app:test".into()), - }) - }, - JunitReportFileWithTestRunnerReport { - junit_path: String::from("bytestream://buildbarn2.build.trunk-staging.io:1986/blobs/7b3ed061a782496c7418be853caae863a9ada9618712f92346ea9e8169b8acf0/1120"), - test_runner_report: Some(TestRunnerReport { - status: TestRunnerReportStatus::Passed, - start_time: DateTime::parse_from_rfc3339("2025-05-16T19:35:16.934Z").unwrap().into(), - end_time: DateTime::parse_from_rfc3339("2025-05-16T19:35:19.361Z").unwrap().into(), - label: Some("//trunk/hello_world/cc_grpc:client_test".into()), - }) - }, - JunitReportFileWithTestRunnerReport { - junit_path: String::from("bytestream://buildbarn2.build.trunk-staging.io:1986/blobs/45ca1eed26b3cf1aafdb51829e32312d3b48452cc144aa041c946e89fa9c6cf6/175"), - test_runner_report: Some(TestRunnerReport { - status: TestRunnerReportStatus::Passed, - start_time: DateTime::parse_from_rfc3339("2025-05-16T19:35:16.929Z").unwrap().into(), - end_time: DateTime::parse_from_rfc3339("2025-05-16T19:35:19.383Z").unwrap().into(), - label: Some("//trunk/hello_world/cc_grpc:server_test".into()), - }) - } - ] - ); + parse_result.uncached_xml_files(), + vec![ + JunitReportFileWithTestRunnerReport { + junit_path: String::from( + "bytestream://buildbarn2.build.trunk-staging.io:1986/blobs/37d45ccef587444393523741a3831f4a1acbeb010f74f33130ab9ba687477558/449" + ), + test_runner_report: Some(TestRunnerReport { + status: TestRunnerReportStatus::Passed, + start_time: DateTime::parse_from_rfc3339("2025-05-16T19:27:25.037Z") + .unwrap() + .into(), + end_time: DateTime::parse_from_rfc3339("2025-05-16T19:27:27.605Z") + .unwrap() + .into(), + label: Some("//trunk/hello_world/bazel_pnpm:test".into()) + }) + }, + JunitReportFileWithTestRunnerReport { + junit_path: String::from( + "bytestream://buildbarn2.build.trunk-staging.io:1986/blobs/46bbeb038d6f1447f6224a7db4d8a109e133884f2ee6ee78487ca4ce7e073de8/507" + ), + test_runner_report: Some(TestRunnerReport { + status: TestRunnerReportStatus::Passed, + start_time: DateTime::parse_from_rfc3339("2025-05-16T19:29:32.732Z") + .unwrap() + .into(), + end_time: DateTime::parse_from_rfc3339("2025-05-16T19:29:32.853Z") + .unwrap() + .into(), + label: Some("//trunk/hello_world/cc:hello_test".into()), + }) + }, + JunitReportFileWithTestRunnerReport { + junit_path: String::from( + "bytestream://buildbarn2.build.trunk-staging.io:1986/blobs/d1f48dadf5679f09ce9b9c8f4778281ab25bc1dfdddec943e1255baf468630de/451" + ), + test_runner_report: Some(TestRunnerReport { + status: TestRunnerReportStatus::Passed, + start_time: DateTime::parse_from_rfc3339("2025-05-16T19:32:32.180Z") + .unwrap() + .into(), + end_time: DateTime::parse_from_rfc3339("2025-05-16T19:32:34.697Z") + .unwrap() + .into(), + label: Some("//trunk/hello_world/ts_proto:test".into()), + }) + }, + JunitReportFileWithTestRunnerReport { + junit_path: String::from( + "bytestream://buildbarn2.build.trunk-staging.io:1986/blobs/38f1d4ce43242ed3cb08aedf1cc0c3133a8aec8e8eee61f5b84b85a5ba718bc8/1204" + ), + test_runner_report: Some(TestRunnerReport { + status: TestRunnerReportStatus::Passed, + start_time: DateTime::parse_from_rfc3339("2025-05-16T19:32:31.748Z") + .unwrap() + .into(), + end_time: DateTime::parse_from_rfc3339("2025-05-16T19:32:34.797Z") + .unwrap() + .into(), + label: Some("//trunk/hello_world/ts_grpc:test".into()), + }) + }, + JunitReportFileWithTestRunnerReport { + junit_path: String::from( + "bytestream://buildbarn2.build.trunk-staging.io:1986/blobs/ac23080b9bf5599b7781e3b62be9bf9a5b6685a8cbe76de4e9e1731a318e9283/607" + ), + test_runner_report: Some(TestRunnerReport { + status: TestRunnerReportStatus::Passed, + start_time: DateTime::parse_from_rfc3339("2025-05-16T19:33:01.680Z") + .unwrap() + .into(), + end_time: DateTime::parse_from_rfc3339("2025-05-16T19:33:01.806Z") + .unwrap() + .into(), + label: Some("//trunk/hello_world/cdk:lib_typecheck_test".into()), + }) + }, + JunitReportFileWithTestRunnerReport { + junit_path: String::from( + "bytestream://buildbarn2.build.trunk-staging.io:1986/blobs/9c1db1d25ca6a4268be4a8982784c525a4b0ca99cbc7614094ad36c56bb08f2a/463" + ), + test_runner_report: Some(TestRunnerReport { + status: TestRunnerReportStatus::Passed, + start_time: DateTime::parse_from_rfc3339("2025-05-16T19:32:52.714Z") + .unwrap() + .into(), + end_time: DateTime::parse_from_rfc3339("2025-05-16T19:33:17.945Z") + .unwrap() + .into(), + label: Some("//trunk/hello_world/prisma/app:test".into()), + }) + }, + JunitReportFileWithTestRunnerReport { + junit_path: String::from( + "bytestream://buildbarn2.build.trunk-staging.io:1986/blobs/7b3ed061a782496c7418be853caae863a9ada9618712f92346ea9e8169b8acf0/1120" + ), + test_runner_report: Some(TestRunnerReport { + status: TestRunnerReportStatus::Passed, + start_time: DateTime::parse_from_rfc3339("2025-05-16T19:35:16.934Z") + .unwrap() + .into(), + end_time: DateTime::parse_from_rfc3339("2025-05-16T19:35:19.361Z") + .unwrap() + .into(), + label: Some("//trunk/hello_world/cc_grpc:client_test".into()), + }) + }, + JunitReportFileWithTestRunnerReport { + junit_path: String::from( + "bytestream://buildbarn2.build.trunk-staging.io:1986/blobs/45ca1eed26b3cf1aafdb51829e32312d3b48452cc144aa041c946e89fa9c6cf6/175" + ), + test_runner_report: Some(TestRunnerReport { + status: TestRunnerReportStatus::Passed, + start_time: DateTime::parse_from_rfc3339("2025-05-16T19:35:16.929Z") + .unwrap() + .into(), + end_time: DateTime::parse_from_rfc3339("2025-05-16T19:35:19.383Z") + .unwrap() + .into(), + label: Some("//trunk/hello_world/cc_grpc:server_test".into()), + }) + } + ] + ); assert_eq!(parse_result.xml_file_counts(), (8, 0)); pretty_assertions::assert_eq!(parse_result.errors, empty_errors_vec); } diff --git a/context/src/env/validator.rs b/context/src/env/validator.rs index 412796f6..5b6a3710 100644 --- a/context/src/env/validator.rs +++ b/context/src/env/validator.rs @@ -7,7 +7,7 @@ use thiserror::Error; use wasm_bindgen::prelude::*; use super::parser::{BranchClass, CIInfo}; -use crate::string_safety::{validate_field_len, FieldLen}; +use crate::string_safety::{FieldLen, validate_field_len}; pub const MAX_BRANCH_NAME_LEN: usize = 36; pub const MAX_EMAIL_LEN: usize = 254; diff --git a/context/src/meta/mod.rs b/context/src/meta/mod.rs index a7eca379..ec17ddd9 100644 --- a/context/src/meta/mod.rs +++ b/context/src/meta/mod.rs @@ -6,7 +6,7 @@ use pyo3_stub_gen::derive::gen_stub_pyclass; use wasm_bindgen::prelude::*; use crate::{ - env::parser::{clean_branch, BranchClass, CIInfo}, + env::parser::{BranchClass, CIInfo, clean_branch}, repo::BundleRepo, }; diff --git a/context/src/meta/validator.rs b/context/src/meta/validator.rs index 236febb9..3ac6461d 100644 --- a/context/src/meta/validator.rs +++ b/context/src/meta/validator.rs @@ -8,7 +8,7 @@ use wasm_bindgen::prelude::*; use super::MetaContext; use crate::env::validator::{ - validate as env_validate, EnvValidationIssue, EnvValidationIssueSubOptimal, + EnvValidationIssue, EnvValidationIssueSubOptimal, validate as env_validate, }; #[cfg_attr(feature = "pyo3", gen_stub_pyclass_enum, pyclass(eq, eq_int))] diff --git a/context/src/repo/validator.rs b/context/src/repo/validator.rs index 9129a06e..97810420 100644 --- a/context/src/repo/validator.rs +++ b/context/src/repo/validator.rs @@ -8,7 +8,7 @@ use thiserror::Error; use wasm_bindgen::prelude::*; use super::BundleRepo; -use crate::string_safety::{validate_field_len, FieldLen}; +use crate::string_safety::{FieldLen, validate_field_len}; pub const MAX_BRANCH_NAME_LEN: usize = 36; pub const MAX_EMAIL_LEN: usize = 254; diff --git a/context/tests/meta.rs b/context/tests/meta.rs index 3dee849b..dab9b52b 100644 --- a/context/tests/meta.rs +++ b/context/tests/meta.rs @@ -1,13 +1,13 @@ use context::{ env::{ - parser::{CIInfo, EnvParser}, EnvVars, + parser::{CIInfo, EnvParser}, }, meta::{ + MetaContext, validator::{ - validate, MetaValidationIssue, MetaValidationIssueInvalid, MetaValidationLevel, + MetaValidationIssue, MetaValidationIssueInvalid, MetaValidationLevel, validate, }, - MetaContext, }, repo::{BundleRepo, RepoUrlParts}, }; diff --git a/context/tests/repo.rs b/context/tests/repo.rs index 6f457f1f..c61c86bb 100644 --- a/context/tests/repo.rs +++ b/context/tests/repo.rs @@ -1,12 +1,11 @@ use chrono::{DateTime, Utc}; use context::repo::{ - self, + self, BundleRepo, RepoUrlParts, validator::{ - RepoValidationIssue, RepoValidationIssueSubOptimal, RepoValidationLevel, MAX_SHA_FIELD_LEN, + MAX_SHA_FIELD_LEN, RepoValidationIssue, RepoValidationIssueSubOptimal, RepoValidationLevel, }, - BundleRepo, RepoUrlParts, }; -use test_utils::mock_git_repo::{setup_repo_with_commit, TEST_BRANCH, TEST_ORIGIN}; +use test_utils::mock_git_repo::{TEST_BRANCH, TEST_ORIGIN, setup_repo_with_commit}; #[test] fn test_try_read_from_root() { diff --git a/display/src/message.rs b/display/src/message.rs index d7cf1a29..ec47a062 100644 --- a/display/src/message.rs +++ b/display/src/message.rs @@ -1,9 +1,9 @@ -use std::sync::{mpsc::Sender, Arc}; +use std::sync::{Arc, mpsc::Sender}; use anyhow::Result; use superconsole::{Component, Dimensions, DrawMode, Line, Lines, Span, SuperConsole}; -use crate::end_output::{display_end, EndOutput}; +use crate::end_output::{EndOutput, display_end}; pub enum DisplayMessage { Progress(Arc, String), diff --git a/display/src/render.rs b/display/src/render.rs index 856060bd..662dca8f 100644 --- a/display/src/render.rs +++ b/display/src/render.rs @@ -1,10 +1,10 @@ use std::{ - sync::mpsc::{channel, Receiver, Sender}, + sync::mpsc::{Receiver, Sender, channel}, thread::{self, JoinHandle}, }; use superconsole::{Dimensions, SuperConsole}; -use terminal_size::{terminal_size, Height, Width}; +use terminal_size::{Height, Width, terminal_size}; use crate::message::DisplayMessage; diff --git a/test_utils/src/mock_sentry.rs b/test_utils/src/mock_sentry.rs index c937d02f..76681754 100644 --- a/test_utils/src/mock_sentry.rs +++ b/test_utils/src/mock_sentry.rs @@ -1,6 +1,6 @@ use std::sync::{Arc, Mutex}; -use sentry::{protocol::Event, ClientInitGuard, Hub, Integration, Level}; +use sentry::{ClientInitGuard, Hub, Integration, Level, protocol::Event}; struct MockSentryIntegration { events: Arc>>, diff --git a/xcresult/src/xcresult.rs b/xcresult/src/xcresult.rs index 6ff44706..18335f1e 100644 --- a/xcresult/src/xcresult.rs +++ b/xcresult/src/xcresult.rs @@ -6,8 +6,8 @@ use chrono::{DateTime, Utc}; use quick_junit::{NonSuccessKind, Report, TestCase, TestCaseStatus, TestRerun, TestSuite}; use crate::types::{ - schema::{TestNode, TestNodeType, TestResult, Tests}, SWIFT_DEFAULT_TEST_SUITE_NAME, + schema::{TestNode, TestNodeType, TestResult, Tests}, }; use crate::xcresult_legacy::XCResultTestLegacy; use crate::xcrun::{xcresulttool_get_object, xcresulttool_get_test_results_tests}; @@ -135,8 +135,12 @@ impl XCResult { ) } else if matches!(test_bundle_or_test_suite.node_type, TestNodeType::TestSuite) { let test_suite = test_bundle_or_test_suite; - vec![self - .xcresult_test_suite_to_junit_test_suite(test_suite, Option::<&str>::None)] + vec![ + self.xcresult_test_suite_to_junit_test_suite( + test_suite, + Option::<&str>::None, + ), + ] } else { vec![] }