diff options
| author | nsfisis <nsfisis@gmail.com> | 2026-06-21 12:40:10 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2026-06-21 12:40:10 +0900 |
| commit | 2b2ca914cc5f2f7fde3b6e75faabbe4913fd7264 (patch) | |
| tree | ff8bbb00238526c376f521647adc9ea9f486b84c /crates/shirabe/tests/package/dumper/array_dumper_test.rs | |
| parent | 4b92ecafd7634ad99aa432d58fbc1958d1f01270 (diff) | |
| download | php-shirabe-2b2ca914cc5f2f7fde3b6e75faabbe4913fd7264.tar.gz php-shirabe-2b2ca914cc5f2f7fde3b6e75faabbe4913fd7264.tar.zst php-shirabe-2b2ca914cc5f2f7fde3b6e75faabbe4913fd7264.zip | |
test(tests): port setUp/tearDown as set_up/tear_down with TearDown
Port PHP setUp/tearDown across the ported integration tests using
same-named set_up()/tear_down() functions and a TearDown struct whose
Drop runs tear_down(). Fixture-init setUp returns its fixtures;
tmpdir-style setUp/tearDown carry state in TearDown fields. Parts that
depend on unported infrastructure (PHPUnit mocks, Config::merge, the PHP
error handler) stay todo!() and are only wired into ignored stubs to
avoid breaking live tests.
Also fix shirabe-php-shim putenv to handle the no-'=' form (PHP unsets
the variable), which Platform::clear_env relies on for the env-clearing
tearDowns.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/tests/package/dumper/array_dumper_test.rs')
| -rw-r--r-- | crates/shirabe/tests/package/dumper/array_dumper_test.rs | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/crates/shirabe/tests/package/dumper/array_dumper_test.rs b/crates/shirabe/tests/package/dumper/array_dumper_test.rs index c89f5ed..6ed12fe 100644 --- a/crates/shirabe/tests/package/dumper/array_dumper_test.rs +++ b/crates/shirabe/tests/package/dumper/array_dumper_test.rs @@ -6,6 +6,10 @@ use shirabe::package::handle::{CompletePackageHandle, RootPackageHandle}; use shirabe_php_shim::PhpMixed; use shirabe_semver::version_parser::VersionParser; +fn set_up() -> ArrayDumper { + ArrayDumper::new() +} + fn complete_package() -> CompletePackageHandle { let norm = VersionParser.normalize("1.0.0", None).unwrap(); CompletePackageHandle::new("dummy/pkg".to_string(), norm, "1.0.0".to_string()) @@ -18,7 +22,8 @@ fn root_package() -> RootPackageHandle { #[test] fn test_required_information() { - let config = ArrayDumper::new().dump(complete_package().into()); + let dumper = set_up(); + let config = dumper.dump(complete_package().into()); let mut expected: IndexMap<String, PhpMixed> = IndexMap::new(); expected.insert( @@ -37,10 +42,11 @@ fn test_required_information() { #[test] fn test_root_package() { + let dumper = set_up(); let package = root_package(); package.set_minimum_stability("dev".to_string()); - let config = ArrayDumper::new().dump(package.into()); + let config = dumper.dump(package.into()); assert_eq!( Some(&PhpMixed::String("dev".to_string())), @@ -50,20 +56,22 @@ fn test_root_package() { #[test] fn test_dump_abandoned() { + let dumper = set_up(); let package = complete_package(); package.set_abandoned(PhpMixed::Bool(true)); - let config = ArrayDumper::new().dump(package.into()); + let config = dumper.dump(package.into()); assert_eq!(Some(&PhpMixed::Bool(true)), config.get("abandoned")); } #[test] fn test_dump_abandoned_replacement() { + let dumper = set_up(); let package = complete_package(); package.set_abandoned(PhpMixed::String("foo/bar".to_string())); - let config = ArrayDumper::new().dump(package.into()); + let config = dumper.dump(package.into()); assert_eq!( Some(&PhpMixed::String("foo/bar".to_string())), |
