diff options
| author | nsfisis <nsfisis@gmail.com> | 2026-06-21 00:51:34 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2026-06-21 00:51:34 +0900 |
| commit | 7bea9042a79d3cbfe31cc2595e8b8c6a3788ba15 (patch) | |
| tree | 3ed5b522c21f8fd80249f02751e46264537620f7 /crates/shirabe/tests/filter | |
| parent | a01e3a45d1b183ee7fe9ca45543b0663d5995faa (diff) | |
| download | php-shirabe-7bea9042a79d3cbfe31cc2595e8b8c6a3788ba15.tar.gz php-shirabe-7bea9042a79d3cbfe31cc2595e8b8c6a3788ba15.tar.zst php-shirabe-7bea9042a79d3cbfe31cc2595e8b8c6a3788ba15.zip | |
test: port small leaf tests (config, filters, platform, formatter)
Port DefaultConfigTest, IgnoreAll/IgnoreNothingPlatformRequirementFilterTest,
PlatformTest, GitExcludeFilterTest, and HtmlOutputFormatterTest. Each PHP
Test/<Subdir>/ maps to a single integration-test binary via tests/<dir>/main.rs
(the target is named after the directory) whose #[test] functions are collected
from the module tree.
Tests that exercise unported library behavior (regex backreferences,
Preg::split, env expansion) are marked #[ignore].
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/tests/filter')
4 files changed, 52 insertions, 0 deletions
diff --git a/crates/shirabe/tests/filter/main.rs b/crates/shirabe/tests/filter/main.rs new file mode 100644 index 0000000..6bcb099 --- /dev/null +++ b/crates/shirabe/tests/filter/main.rs @@ -0,0 +1 @@ +mod platform_requirement_filter; diff --git a/crates/shirabe/tests/filter/platform_requirement_filter/ignore_all_platform_requirement_filter_test.rs b/crates/shirabe/tests/filter/platform_requirement_filter/ignore_all_platform_requirement_filter_test.rs index cd34d0e..cd01dce 100644 --- a/crates/shirabe/tests/filter/platform_requirement_filter/ignore_all_platform_requirement_filter_test.rs +++ b/crates/shirabe/tests/filter/platform_requirement_filter/ignore_all_platform_requirement_filter_test.rs @@ -1 +1,27 @@ //! ref: composer/tests/Composer/Test/Filter/PlatformRequirementFilter/IgnoreAllPlatformRequirementFilterTest.php + +use shirabe::filter::platform_requirement_filter::{ + IgnoreAllPlatformRequirementFilter, PlatformRequirementFilterInterface, +}; + +#[test] +fn test_is_ignored() { + for (req, expect_ignored) in data_is_ignored() { + let platform_requirement_filter = IgnoreAllPlatformRequirementFilter; + + assert_eq!(expect_ignored, platform_requirement_filter.is_ignored(req)); + assert_eq!( + expect_ignored, + platform_requirement_filter.is_upper_bound_ignored(req) + ); + } +} + +fn data_is_ignored() -> Vec<(&'static str, bool)> { + vec![ + // 'php is ignored' + ("php", true), + // 'monolog/monolog is not ignored' + ("monolog/monolog", false), + ] +} diff --git a/crates/shirabe/tests/filter/platform_requirement_filter/ignore_nothing_platform_requirement_filter_test.rs b/crates/shirabe/tests/filter/platform_requirement_filter/ignore_nothing_platform_requirement_filter_test.rs index d7c23e7..5ca444c 100644 --- a/crates/shirabe/tests/filter/platform_requirement_filter/ignore_nothing_platform_requirement_filter_test.rs +++ b/crates/shirabe/tests/filter/platform_requirement_filter/ignore_nothing_platform_requirement_filter_test.rs @@ -1 +1,24 @@ //! ref: composer/tests/Composer/Test/Filter/PlatformRequirementFilter/IgnoreNothingPlatformRequirementFilterTest.php + +use shirabe::filter::platform_requirement_filter::{ + IgnoreNothingPlatformRequirementFilter, PlatformRequirementFilterInterface, +}; + +#[test] +fn test_is_ignored() { + for req in data_is_ignored() { + let platform_requirement_filter = IgnoreNothingPlatformRequirementFilter; + + assert!(!platform_requirement_filter.is_ignored(req)); + assert!(!platform_requirement_filter.is_upper_bound_ignored(req)); + } +} + +fn data_is_ignored() -> Vec<&'static str> { + vec![ + // 'php is not ignored' + "php", + // 'monolog/monolog is not ignored' + "monolog/monolog", + ] +} diff --git a/crates/shirabe/tests/filter/platform_requirement_filter/mod.rs b/crates/shirabe/tests/filter/platform_requirement_filter/mod.rs new file mode 100644 index 0000000..1199c1c --- /dev/null +++ b/crates/shirabe/tests/filter/platform_requirement_filter/mod.rs @@ -0,0 +1,2 @@ +mod ignore_all_platform_requirement_filter_test; +mod ignore_nothing_platform_requirement_filter_test; |
