aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/tests/downloader/git_downloader_test.rs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-06-21 05:09:56 +0900
committernsfisis <nsfisis@gmail.com>2026-06-21 05:09:56 +0900
commit25f96cab45f5da4fba2ef0486a0b0bc8f7ca87b0 (patch)
tree0974de4f5e7a19415f2bcda9adc34cb95263b2e9 /crates/shirabe/tests/downloader/git_downloader_test.rs
parentb07f3a9f51d7ce5ea8ee4dc45da7fe9a55b7f1d4 (diff)
downloadphp-shirabe-25f96cab45f5da4fba2ef0486a0b0bc8f7ca87b0.tar.gz
php-shirabe-25f96cab45f5da4fba2ef0486a0b0bc8f7ca87b0.tar.zst
php-shirabe-25f96cab45f5da4fba2ef0486a0b0bc8f7ca87b0.zip
test: port downloader/installer/io/json/event-dispatcher/functional stubs
All ignored: these mock IO/HttpDownloader (curl)/ProcessExecutor/installers, use ZipArchive/JsonManipulator todo!()s, need Symfony console or schema validation, reflect into ClassLoader, or run end-to-end install/functional fixtures. Wires up the event_dispatcher test target. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/tests/downloader/git_downloader_test.rs')
-rw-r--r--crates/shirabe/tests/downloader/git_downloader_test.rs29
1 files changed, 29 insertions, 0 deletions
diff --git a/crates/shirabe/tests/downloader/git_downloader_test.rs b/crates/shirabe/tests/downloader/git_downloader_test.rs
index 3c30177..c332b5d 100644
--- a/crates/shirabe/tests/downloader/git_downloader_test.rs
+++ b/crates/shirabe/tests/downloader/git_downloader_test.rs
@@ -1 +1,30 @@
//! ref: composer/tests/Composer/Test/Downloader/GitDownloaderTest.php
+
+// These construct a GitDownloader with a mocked IO/Config and a mocked ProcessExecutor to
+// feed git command output; mocking is not available, and a real HttpDownloader reaches
+// curl_multi_init (todo!()).
+macro_rules! stub {
+ ($name:ident) => {
+ #[test]
+ #[ignore = "mocks ProcessExecutor/IO and needs an HttpDownloader (curl_multi_init todo!())"]
+ fn $name() {
+ todo!()
+ }
+ };
+}
+
+stub!(test_download_for_package_without_source_reference);
+stub!(test_download);
+stub!(test_download_with_cache);
+stub!(test_download_uses_various_protocols_and_sets_push_url_for_github);
+stub!(test_download_and_set_push_url_use_custom_various_protocols_for_github);
+stub!(test_download_throws_runtime_exception_if_git_command_fails);
+stub!(test_updatefor_package_without_source_reference);
+stub!(test_update);
+stub!(test_update_with_new_repo_url);
+stub!(test_update_throws_runtime_exception_if_git_command_fails);
+stub!(test_update_doesnt_throws_runtime_exception_if_git_command_fails_at_first_but_is_able_to_recover);
+stub!(test_downgrade_shows_appropriate_message);
+stub!(test_not_using_downgrading_with_references);
+stub!(test_remove);
+stub!(test_get_installation_source);