diff options
| author | nsfisis <nsfisis@gmail.com> | 2026-06-21 03:15:07 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2026-06-21 03:15:07 +0900 |
| commit | d9eb06c836e1faa759225a9653181b1dcd38a52d (patch) | |
| tree | 2e1d0485b831ed3818b61aaa4ed55492ec0c4e28 /crates/shirabe/tests/common | |
| parent | 73ae931f8e31b3769253a166d0d66e7c3bde502c (diff) | |
| download | php-shirabe-d9eb06c836e1faa759225a9653181b1dcd38a52d.tar.gz php-shirabe-d9eb06c836e1faa759225a9653181b1dcd38a52d.tar.zst php-shirabe-d9eb06c836e1faa759225a9653181b1dcd38a52d.zip | |
test(repository): port ArrayRepositoryTest
Seven cases pass against ArrayRepository. testAutomaticallyAddAliased...
is #[ignore] because AliasPackage::get_unique_name returns the aliased
package's unique name rather than the alias's own version, so has_package
cannot find the alias version. Adds a shared get_alias_package helper to
the test TestCase, building the alias via from_rc_unchecked since the
public handle API exposes link/alias construction only indirectly.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/tests/common')
| -rw-r--r-- | crates/shirabe/tests/common/test_case.rs | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/crates/shirabe/tests/common/test_case.rs b/crates/shirabe/tests/common/test_case.rs index 4a54195..6fe1358 100644 --- a/crates/shirabe/tests/common/test_case.rs +++ b/crates/shirabe/tests/common/test_case.rs @@ -4,7 +4,9 @@ //! `#[path = "../common/test_case.rs"] mod test_case;`. #![allow(dead_code)] -use shirabe::package::handle::{CompletePackageHandle, PackageInterfaceHandle}; +use shirabe::package::handle::{ + CompleteAliasPackageHandle, CompletePackageHandle, PackageInterfaceHandle, +}; use shirabe_semver::constraint::{AnyConstraint, SimpleConstraint}; use shirabe_semver::version_parser::VersionParser; @@ -14,6 +16,13 @@ pub fn get_package(name: &str, version: &str) -> PackageInterfaceHandle { CompletePackageHandle::new(name.to_string(), norm_version, version.to_string()).into() } +/// ref: TestCase::getAliasPackage (default class CompleteAliasPackage) +pub fn get_alias_package(package: &PackageInterfaceHandle, version: &str) -> PackageInterfaceHandle { + let norm_version = VersionParser.normalize(version, None).unwrap(); + let complete = CompletePackageHandle::from_rc_unchecked(package.as_rc().clone()); + CompleteAliasPackageHandle::new(complete, norm_version, version.to_string()).into() +} + /// ref: TestCase::getVersionConstraint pub fn get_version_constraint(operator: &str, version: &str) -> AnyConstraint { let normalized = VersionParser.normalize(version, None).unwrap(); |
