From f0f5f084c883dc4f5b6e61603e82cd1c2092fd9d Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sun, 21 Jun 2026 13:11:49 +0900 Subject: test(tests): expand stub macros into plain test functions The per-file stub!/encode_stub!/etc. macros generated #[ignore]d test functions but obscured the individual test bodies. Expanding them inline removes the macro indirection so future ports can fill in each function directly. Co-Authored-By: Claude Opus 4.8 (1M context) --- crates/shirabe/tests/util/perforce_test.rs | 275 ++++++++++++++++++++++++----- 1 file changed, 227 insertions(+), 48 deletions(-) (limited to 'crates/shirabe/tests/util/perforce_test.rs') diff --git a/crates/shirabe/tests/util/perforce_test.rs b/crates/shirabe/tests/util/perforce_test.rs index 59b9fd8..fb517ba 100644 --- a/crates/shirabe/tests/util/perforce_test.rs +++ b/crates/shirabe/tests/util/perforce_test.rs @@ -10,51 +10,230 @@ fn set_up() { todo!() } -macro_rules! stub { - ($name:ident) => { - #[test] - #[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] - fn $name() { - todo!() - } - }; -} - -stub!(test_get_client_without_stream); -stub!(test_get_client_from_stream); -stub!(test_get_stream_without_stream); -stub!(test_get_stream_with_stream); -stub!(test_get_stream_without_label_with_stream_without_label); -stub!(test_get_stream_without_label_with_stream_with_label); -stub!(test_get_client_spec); -stub!(test_generate_p4_command); -stub!(test_query_p4_user_with_user_already_set); -stub!(test_query_p4_user_with_user_set_in_p4_variables_with_windows_os); -stub!(test_query_p4_user_with_user_set_in_p4_variables_not_windows_os); -stub!(test_query_p4_user_queries_for_user); -stub!(test_query_p4_user_stores_response_to_query_for_user_with_windows); -stub!(test_query_p4_user_stores_response_to_query_for_user_without_windows); -stub!(test_query_p4_user_escapes_injection_on_windows); -stub!(test_query_p4_user_escapes_injection_on_unix); -stub!(test_query_p4_password_with_password_already_set); -stub!(test_query_p4_password_with_password_set_in_p4_variables_with_windows_os); -stub!(test_query_p4_password_with_password_set_in_p4_variables_not_windows_os); -stub!(test_query_p4_password_queries_for_password); -stub!(test_write_p4_client_spec_without_stream); -stub!(test_write_p4_client_spec_with_stream); -stub!(test_is_logged_in); -stub!(test_get_branches_with_stream); -stub!(test_get_branches_without_stream); -stub!(test_get_tags_without_stream); -stub!(test_get_tags_with_stream); -stub!(test_check_stream_without_stream); -stub!(test_check_stream_with_stream); -stub!(test_get_composer_information_without_label_without_stream); -stub!(test_get_composer_information_with_label_without_stream); -stub!(test_get_composer_information_without_label_with_stream); -stub!(test_get_composer_information_with_label_with_stream); -stub!(test_sync_code_base_without_stream); -stub!(test_sync_code_base_with_stream); -stub!(test_check_server_exists); -stub!(test_check_server_client_error); -stub!(test_cleanup_client_spec_should_delete_client); +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_get_client_without_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_get_client_from_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_get_stream_without_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_get_stream_with_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_get_stream_without_label_with_stream_without_label() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_get_stream_without_label_with_stream_with_label() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_get_client_spec() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_generate_p4_command() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_query_p4_user_with_user_already_set() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_query_p4_user_with_user_set_in_p4_variables_with_windows_os() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_query_p4_user_with_user_set_in_p4_variables_not_windows_os() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_query_p4_user_queries_for_user() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_query_p4_user_stores_response_to_query_for_user_with_windows() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_query_p4_user_stores_response_to_query_for_user_without_windows() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_query_p4_user_escapes_injection_on_windows() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_query_p4_user_escapes_injection_on_unix() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_query_p4_password_with_password_already_set() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_query_p4_password_with_password_set_in_p4_variables_with_windows_os() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_query_p4_password_with_password_set_in_p4_variables_not_windows_os() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_query_p4_password_queries_for_password() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_write_p4_client_spec_without_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_write_p4_client_spec_with_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_is_logged_in() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_get_branches_with_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_get_branches_without_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_get_tags_without_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_get_tags_with_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_check_stream_without_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_check_stream_with_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_get_composer_information_without_label_without_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_get_composer_information_with_label_without_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_get_composer_information_without_label_with_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_get_composer_information_with_label_with_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_sync_code_base_without_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_sync_code_base_with_stream() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_check_server_exists() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_check_server_client_error() { + todo!() +} + +#[test] +#[ignore = "mocks IO/ProcessExecutor to drive Perforce; mocking is not available"] +fn test_cleanup_client_spec_should_delete_client() { + todo!() +} -- cgit v1.3.1