From c23769f3f446ed718ee88cf6b4f43c3b147eff71 Mon Sep 17 00:00:00 2001 From: phenaproxima <phenaproxima@205645.no-reply.drupal.org> Date: Wed, 21 Sep 2022 19:40:36 +0000 Subject: [PATCH] Issue #3310997 by phenaproxima: Remove fake-site fixture from Automatic Updates --- .../tests/fixtures/fake_site/composer.json | 9 ++++- .../fake_site/vendor/composer/installed.json | 8 +++++ tests/fixtures/fake-site/composer.json | 15 -------- tests/fixtures/fake-site/composer.lock | 28 --------------- .../fake-site/files/private/ignore.txt | 1 - .../fake-site/files/public/ignore.txt | 1 - tests/fixtures/fake-site/files/staged.txt | 1 - .../fake-site/sites/default/services.yml | 2 -- .../sites/default/settings.local.php | 6 ---- .../fake-site/sites/default/settings.php | 6 ---- .../fake-site/sites/default/staged.txt | 1 - .../fake-site/sites/simpletest/ignore.txt | 1 - .../fake-site/vendor/composer/installed.json | 35 ------------------- .../fake-site/vendor/composer/installed.php | 10 ------ .../AutomaticUpdatesFunctionalTestBase.php | 2 +- tests/src/Kernel/CronUpdaterTest.php | 10 +++--- tests/src/Kernel/UpdaterTest.php | 5 --- 17 files changed, 23 insertions(+), 118 deletions(-) delete mode 100644 tests/fixtures/fake-site/composer.json delete mode 100644 tests/fixtures/fake-site/composer.lock delete mode 100644 tests/fixtures/fake-site/files/private/ignore.txt delete mode 100644 tests/fixtures/fake-site/files/public/ignore.txt delete mode 100644 tests/fixtures/fake-site/files/staged.txt delete mode 100644 tests/fixtures/fake-site/sites/default/services.yml delete mode 100644 tests/fixtures/fake-site/sites/default/settings.local.php delete mode 100644 tests/fixtures/fake-site/sites/default/settings.php delete mode 100644 tests/fixtures/fake-site/sites/default/staged.txt delete mode 100644 tests/fixtures/fake-site/sites/simpletest/ignore.txt delete mode 100644 tests/fixtures/fake-site/vendor/composer/installed.json delete mode 100644 tests/fixtures/fake-site/vendor/composer/installed.php diff --git a/package_manager/tests/fixtures/fake_site/composer.json b/package_manager/tests/fixtures/fake_site/composer.json index 0967ef424b..13d086d70d 100644 --- a/package_manager/tests/fixtures/fake_site/composer.json +++ b/package_manager/tests/fixtures/fake_site/composer.json @@ -1 +1,8 @@ -{} +{ + "require": { + "drupal/core-recommended": "9.8.0" + }, + "require-dev": { + "drupal/core-dev": "^9" + } +} diff --git a/package_manager/tests/fixtures/fake_site/vendor/composer/installed.json b/package_manager/tests/fixtures/fake_site/vendor/composer/installed.json index bc3f936e44..dd37230ed6 100644 --- a/package_manager/tests/fixtures/fake_site/vendor/composer/installed.json +++ b/package_manager/tests/fixtures/fake_site/vendor/composer/installed.json @@ -11,6 +11,14 @@ } } } + }, + { + "name": "drupal/core-recommended", + "version": "9.8.0" + }, + { + "name": "drupal/core-dev", + "version": "9.8.0" } ] } diff --git a/tests/fixtures/fake-site/composer.json b/tests/fixtures/fake-site/composer.json deleted file mode 100644 index ed5b67b7c8..0000000000 --- a/tests/fixtures/fake-site/composer.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "require": { - "drupal/test-distribution": "*" - }, - "require-dev": { - "drupal/core-dev": "^9" - }, - "extra": { - "_comment": [ - "This is a fake composer.json simulating a site which requires a distribution.", - "The required core packages are determined by scanning the lock file.", - "The required dev packages are determined by looking at the require-dev section of this file." - ] - } -} diff --git a/tests/fixtures/fake-site/composer.lock b/tests/fixtures/fake-site/composer.lock deleted file mode 100644 index 05715cda77..0000000000 --- a/tests/fixtures/fake-site/composer.lock +++ /dev/null @@ -1,28 +0,0 @@ -{ - "packages": [ - { - "name": "drupal/test-distribution", - "version": "1.0.0", - "require": { - "drupal/core-recommended": "*" - } - }, - { - "name": "drupal/core-recommended", - "version": "9.8.0", - "require": { - "drupal/core": "9.8.0" - } - }, - { - "name": "drupal/core", - "version": "9.8.0" - } - ], - "packages-dev": [ - { - "name": "drupal/core-dev", - "version": "9.8.0" - } - ] -} diff --git a/tests/fixtures/fake-site/files/private/ignore.txt b/tests/fixtures/fake-site/files/private/ignore.txt deleted file mode 100644 index 4f9da38be5..0000000000 --- a/tests/fixtures/fake-site/files/private/ignore.txt +++ /dev/null @@ -1 +0,0 @@ -This private file should never be staged. diff --git a/tests/fixtures/fake-site/files/public/ignore.txt b/tests/fixtures/fake-site/files/public/ignore.txt deleted file mode 100644 index ab6a7649fa..0000000000 --- a/tests/fixtures/fake-site/files/public/ignore.txt +++ /dev/null @@ -1 +0,0 @@ -This public file should never be staged. diff --git a/tests/fixtures/fake-site/files/staged.txt b/tests/fixtures/fake-site/files/staged.txt deleted file mode 100644 index 0087269e33..0000000000 --- a/tests/fixtures/fake-site/files/staged.txt +++ /dev/null @@ -1 +0,0 @@ -This file should be staged. diff --git a/tests/fixtures/fake-site/sites/default/services.yml b/tests/fixtures/fake-site/sites/default/services.yml deleted file mode 100644 index ea9529af01..0000000000 --- a/tests/fixtures/fake-site/sites/default/services.yml +++ /dev/null @@ -1,2 +0,0 @@ -# A fake services file that should never be staged. -services: {} diff --git a/tests/fixtures/fake-site/sites/default/settings.local.php b/tests/fixtures/fake-site/sites/default/settings.local.php deleted file mode 100644 index e54016a9d2..0000000000 --- a/tests/fixtures/fake-site/sites/default/settings.local.php +++ /dev/null @@ -1,6 +0,0 @@ -<?php - -/** - * @file - * A fake local settings file that should never be staged. - */ diff --git a/tests/fixtures/fake-site/sites/default/settings.php b/tests/fixtures/fake-site/sites/default/settings.php deleted file mode 100644 index 9b995731d1..0000000000 --- a/tests/fixtures/fake-site/sites/default/settings.php +++ /dev/null @@ -1,6 +0,0 @@ -<?php - -/** - * @file - * A fake settings file that should never be staged. - */ diff --git a/tests/fixtures/fake-site/sites/default/staged.txt b/tests/fixtures/fake-site/sites/default/staged.txt deleted file mode 100644 index 0087269e33..0000000000 --- a/tests/fixtures/fake-site/sites/default/staged.txt +++ /dev/null @@ -1 +0,0 @@ -This file should be staged. diff --git a/tests/fixtures/fake-site/sites/simpletest/ignore.txt b/tests/fixtures/fake-site/sites/simpletest/ignore.txt deleted file mode 100644 index e4525907f2..0000000000 --- a/tests/fixtures/fake-site/sites/simpletest/ignore.txt +++ /dev/null @@ -1 +0,0 @@ -This file should not be staged. diff --git a/tests/fixtures/fake-site/vendor/composer/installed.json b/tests/fixtures/fake-site/vendor/composer/installed.json deleted file mode 100644 index 75bdd28cd5..0000000000 --- a/tests/fixtures/fake-site/vendor/composer/installed.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "packages": [ - { - "name": "drupal/test-distribution", - "version": "1.0.0", - "require": { - "drupal/core-recommended": "*" - } - }, - { - "name": "drupal/core-recommended", - "version": "9.8.0", - "require": { - "drupal/core": "9.8.0" - } - }, - { - "name": "drupal/core", - "version": "9.8.0", - "extra": { - "drupal-scaffold": { - "file-mapping": {} - } - } - }, - { - "name": "drupal/core-dev", - "version": "9.8.0" - } - ], - "dev": true, - "dev-package-names": [ - "drupal/core-dev" - ] -} diff --git a/tests/fixtures/fake-site/vendor/composer/installed.php b/tests/fixtures/fake-site/vendor/composer/installed.php deleted file mode 100644 index 52ff3f53b1..0000000000 --- a/tests/fixtures/fake-site/vendor/composer/installed.php +++ /dev/null @@ -1,10 +0,0 @@ -<?php - -/** - * @file - * Simulates that no packages are installed. - */ - -return [ - 'versions' => [], -]; diff --git a/tests/src/Functional/AutomaticUpdatesFunctionalTestBase.php b/tests/src/Functional/AutomaticUpdatesFunctionalTestBase.php index 0ced3170d1..9a043e65df 100644 --- a/tests/src/Functional/AutomaticUpdatesFunctionalTestBase.php +++ b/tests/src/Functional/AutomaticUpdatesFunctionalTestBase.php @@ -47,7 +47,7 @@ abstract class AutomaticUpdatesFunctionalTestBase extends BrowserTestBase { protected function setUp(): void { parent::setUp(); $this->disableValidators($this->disableValidators); - $this->useFixtureDirectoryAsActive(__DIR__ . '/../../fixtures/fake-site'); + $this->useFixtureDirectoryAsActive(__DIR__ . '/../../../package_manager/tests/fixtures/fake_site'); } /** diff --git a/tests/src/Kernel/CronUpdaterTest.php b/tests/src/Kernel/CronUpdaterTest.php index 814edca99f..9d438aee3d 100644 --- a/tests/src/Kernel/CronUpdaterTest.php +++ b/tests/src/Kernel/CronUpdaterTest.php @@ -197,10 +197,12 @@ class CronUpdaterTest extends AutomaticUpdatesKernelTestBase { $will_update = (int) $will_update; $this->assertCount($will_update, $this->container->get('package_manager.beginner')->getInvocationArguments()); - // If updates happen, then there will be two calls to the stager: one to - // change the constraints in composer.json, and another to actually update - // the installed dependencies. - $this->assertCount($will_update * 2, $this->container->get('package_manager.stager')->getInvocationArguments()); + // If updates happen, there will be at least two calls to the stager: one + // to change the runtime constraints in composer.json, and another to + // actually update the installed dependencies. If there are any core + // dev requirements (such as `drupal/core-dev`), the stager will also be + // called to update the dev constraints in composer.json. + $this->assertGreaterThanOrEqual($will_update * 2, $this->container->get('package_manager.stager')->getInvocationArguments()); $this->assertCount($will_update, $this->container->get('package_manager.committer')->getInvocationArguments()); } diff --git a/tests/src/Kernel/UpdaterTest.php b/tests/src/Kernel/UpdaterTest.php index 2d2b5d9245..d131a5041b 100644 --- a/tests/src/Kernel/UpdaterTest.php +++ b/tests/src/Kernel/UpdaterTest.php @@ -49,11 +49,6 @@ class UpdaterTest extends AutomaticUpdatesKernelTestBase { $user = $this->createUser([], NULL, TRUE, ['uid' => 2]); $this->setCurrentUser($user); - // Point to a fake site which requires Drupal core via a distribution. The - // lock file should be scanned to determine the core packages, which should - // result in drupal/core-recommended being updated. - $this->createVirtualProject(__DIR__ . '/../../fixtures/fake-site'); - $id = $this->container->get('automatic_updates.updater')->begin([ 'drupal' => '9.8.1', ]); -- GitLab