aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/tests/repository
AgeCommit message (Collapse)Author
2026-06-21test(repository): port VCS driver tests ↵nsfisis
(Git/GitHub/GitLab/Bitbucket/Svn/Perforce/Forgejo) Svn/GitBitbucket/Perforce supports pass. GitHub::supports reaches non-strict in_array (todo!()) and Forgejo::supports uses a regex the regex crate cannot compile, so those are ignored. All API-driven cases mock the HttpDownloader (curl) / ProcessExecutor and are stubbed. setUp/tearDown not ported. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21test(repository): port PathRepositoryTest as stubsnsfisis
PathRepository does not implement RepositoryInterface and exposes no public getPackages/count/hasPackage (delegation to its inner ArrayRepository is not ported), so the cases cannot be driven; the unversioned ones also need the VersionGuesser. All stubbed. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21test: port SecurityAdvisoryPoolFilter, downloader/command/app stubsnsfisis
All ignored/todo!(): the advisory filter parses affectedVersions via a look-around regex; the Hg/Fossil/Perforce/Archive downloaders and RepositoryManager need mocked process/HttpDownloader (curl); the Validate/ Archive commands, ApplicationTest and CompletionFunctionalTest need the ApplicationTester/console harness. setUp/tearDown not ported. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21test: port ArtifactRepositoryTest and BinaryInstallerTest as stubsnsfisis
ArtifactRepository reads archives via ZipArchive/PharData (todo!()); BinaryInstaller installs and executes a real PHP binary and mocks a Package. Both stubbed. setUp/tearDown not ported. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21test: port HgDriverTest and RootAliasPackageTestnsfisis
HgDriver::supports and RootAliasPackage setRequires pass. The other Hg cases need an HgDriver instance (HttpDownloader/curl, mocked process); the other RootAliasPackage setters only update alias_of, not the alias's own copy, so those getters stay empty. All such cases ignored. setUp/tearDown not ported. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21test(repository): port FilterRepositoryTestnsfisis
All cases pass: only/exclude matching, both-filters guard, disabled child advisories, and canonical vs non-canonical loadPackages. setUp's repository fixture is inlined; teardown not ported. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21test: port IniHelperTest and RepositoryUtilsTestnsfisis
IniHelper cases reach XdebugHandler::get_all_ini_files (todo!()); RepositoryUtils filterRequiredPackages is fully modeled but building linked packages via ArrayLoader parses constraints with a look-around regex the regex crate cannot compile. Both ignored. setUp/tearDown not ported. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21test(repository): port RepositoryFactoryTestnsfisis
generateRepositoryName ported (ignored: integer index is not stringified). The manager case mocks IO/Config/HttpDownloader and uses reflection, so it is stubbed. setUp/tearDown not ported. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21test(repository): port FossilDriverTestnsfisis
Wires up the repository/vcs submodule. setUp/tearDown not ported. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21test(repository): port InstalledRepositoryTestnsfisis
testAddRepository maps the expected LogicException to #[should_panic] since InstalledRepository::add_repository guards with assert!. testFindPackagesWithReplacersAndProviders is #[ignore] because that assert omits InstalledRepositoryInterface, so adding an InstalledArrayRepository panics before the lookup runs. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21test(repository): port ArrayRepositoryTestnsfisis
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>
2026-06-21test(repository): port CompositeRepositoryTestnsfisis
Six cases pass against ArrayRepository/CompositeRepository. testFindPackage is #[ignore] because constraint string parsing relies on a look-around regex that the regex crate does not support. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21test: add empty test filesnsfisis