diff --git a/src/Testing/AddonTestCase.php b/src/Testing/AddonTestCase.php index f62f6643d69..edbaf6cd475 100644 --- a/src/Testing/AddonTestCase.php +++ b/src/Testing/AddonTestCase.php @@ -43,7 +43,7 @@ public function tearDown(): void { $uses = array_flip(class_uses_recursive(static::class)); - if (isset($uses[PreventSavingStacheItemsToDisk::class])) { + if (isset($uses[PreventsSavingStacheItemsToDisk::class])) { $this->deleteFakeStacheDirectory(); } @@ -97,5 +97,19 @@ protected function getEnvironmentSetUp($app) ]; $app['config']->set('statamic.users.repository', 'file'); + + $app['config']->set('statamic.stache.watcher', false); + $app['config']->set('statamic.stache.stores.taxonomies.directory', $directory.'/../tests/__fixtures__/content/taxonomies'); + $app['config']->set('statamic.stache.stores.terms.directory', $directory.'/../tests/__fixtures__/content/taxonomies'); + $app['config']->set('statamic.stache.stores.collections.directory', $directory.'/../tests/__fixtures__/content/collections'); + $app['config']->set('statamic.stache.stores.entries.directory', $directory.'/../tests/__fixtures__/content/collections'); + $app['config']->set('statamic.stache.stores.navigation.directory', $directory.'/../tests/__fixtures__/content/navigation'); + $app['config']->set('statamic.stache.stores.globals.directory', $directory.'/../tests/__fixtures__/content/globals'); + $app['config']->set('statamic.stache.stores.global-variables.directory', $directory.'/../tests/__fixtures__/content/globals'); + $app['config']->set('statamic.stache.stores.asset-containers.directory', $directory.'/../tests/__fixtures__/content/assets'); + $app['config']->set('statamic.stache.stores.nav-trees.directory', $directory.'/../tests/__fixtures__/content/structures/navigation'); + $app['config']->set('statamic.stache.stores.collection-trees.directory', $directory.'/../tests/__fixtures__/content/structures/collections'); + $app['config']->set('statamic.stache.stores.form-submissions.directory', $directory.'/../tests/__fixtures__/content/submissions'); + $app['config']->set('statamic.stache.stores.users.directory', $directory.'/../tests/__fixtures__/users'); } } diff --git a/src/Testing/Concerns/PreventsSavingStacheItemsToDisk.php b/src/Testing/Concerns/PreventsSavingStacheItemsToDisk.php index 0e921140c6f..af572acbbfc 100644 --- a/src/Testing/Concerns/PreventsSavingStacheItemsToDisk.php +++ b/src/Testing/Concerns/PreventsSavingStacheItemsToDisk.php @@ -13,8 +13,11 @@ protected function preventSavingStacheItemsToDisk(): void $this->fakeStacheDirectory = Path::tidy($this->fakeStacheDirectory); Stache::stores()->each(function ($store) { - $dir = Path::tidy(Str::before($this->fakeStacheDirectory, '/dev-null')); - $relative = Str::after(Str::after($store->directory(), $dir), '/'); + $fixturesPath = Str::before($this->fakeStacheDirectory, '/dev-null'); + $storeDirectory = '/'.Path::makeRelative($store->directory()); + + $relative = Str::after(Str::after($storeDirectory, $fixturesPath), '/'); + $store->directory($this->fakeStacheDirectory.'/'.$relative); }); }