diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index 76b1488c..c78208af 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -26,46 +26,41 @@ jobs: - name: Install Hyde shell: bash - run: | - if [ "${{ github.ref }}" == "refs/heads/master" ]; then - git clone -b master https://github.com/hydephp/hyde.git - else - git clone -b develop https://github.com/hydephp/hyde.git - fi + run: git clone -b master https://github.com/hydephp/develop.git --depth 1 runner - - name: Copy over framework source code + - name: Copy over framework code shell: bash run: | - mkdir -p ./hyde/packages/hyde/framework/src + rm -rf ./runner/packages/framework/src + rm -rf ./runner/packages/framework/tests + mkdir -p ./runner/packages/framework/src + mkdir -p ./runner/packages/framework/tests - # Since we can't use rsync on Windows, we need to copy the files to a temporary directory and then copy them back if [ "${{ matrix.os }}" == "windows-latest" ]; then + # For Windows, copy to temp then back to preserve structure mkdir ../temp cp -r ./ ../temp - rm -rf ../temp/hyde - cp -r ../temp/. ./hyde/packages/hyde/framework/src + rm -rf ../temp/runner + cp -r ../temp/src/. ./runner/packages/framework/src + cp -r ../temp/tests/. ./runner/packages/framework/tests else - rsync -a --exclude=hyde ./. ./hyde/packages/hyde/framework/src + # For Unix systems, use rsync + rsync -a --exclude=runner ./src/. ./runner/packages/framework/src + rsync -a --exclude=runner ./tests/. ./runner/packages/framework/tests fi - - name: Update composer.json to load framework from local source - run: | - cd hyde - composer config repositories.framework path ./packages/hyde/framework - composer require hyde/testing:dev-master hyde/framework:dev-develop - - - name: Download test runner configuration - run: cd hyde && curl https://raw.githubusercontent.com/hydephp/develop/master/packages/hyde/phpunit.xml.dist -o phpunit.xml.dist + - name: Install dependencies + run: cd runner && composer install - name: Set environment to testing - run: cd hyde && echo "ENV=testing" > .env + run: cd runner && echo "ENV=testing" > .env - name: Execute tests (Unit and Feature tests) via PHPUnit/Pest - run: cd hyde && vendor/bin/pest --log-junit report.xml + run: cd runner && vendor/bin/pest --log-junit report.xml env: ENV: testing - name: Ping statistics server with test results run: | - cd hyde + cd runner curl https://raw.githubusercontent.com/hydephp/develop/6e9d17f31879f4ccda13a3fec4029c9663bccec0/monorepo/scripts/ping-openanalytics-testrunner.php -o ping.php php ping.php "Framework CI Matrix" ${{ secrets.OPENANALYTICS_TOKEN }} diff --git a/tests/Unit/AssetServiceUnitTest.php b/tests/Unit/AssetServiceUnitTest.php index 9267b471..e9f4809b 100644 --- a/tests/Unit/AssetServiceUnitTest.php +++ b/tests/Unit/AssetServiceUnitTest.php @@ -17,7 +17,7 @@ class AssetServiceUnitTest extends UnitTestCase { protected function setUp(): void { - self::needsKernel(); + self::setupKernel(); self::mockConfig(); } diff --git a/tests/Unit/BaseFoundationCollectionTest.php b/tests/Unit/BaseFoundationCollectionTest.php index 9fb8edb7..0f11bb3b 100644 --- a/tests/Unit/BaseFoundationCollectionTest.php +++ b/tests/Unit/BaseFoundationCollectionTest.php @@ -17,7 +17,7 @@ class BaseFoundationCollectionTest extends UnitTestCase { public function testInit() { - $this->needsKernel(); + $this->setupKernel(); $booted = BaseFoundationCollectionTestClass::init(HydeKernel::getInstance())->boot(); diff --git a/tests/Unit/BreadcrumbsComponentTest.php b/tests/Unit/BreadcrumbsComponentTest.php index 154fddbf..e2553930 100644 --- a/tests/Unit/BreadcrumbsComponentTest.php +++ b/tests/Unit/BreadcrumbsComponentTest.php @@ -23,7 +23,7 @@ class BreadcrumbsComponentTest extends UnitTestCase { protected function setUp(): void { - self::needsKernel(); + self::setupKernel(); self::mockConfig(); } diff --git a/tests/Unit/BuildTaskUnitTest.php b/tests/Unit/BuildTaskUnitTest.php index 4b484cf2..be9aec94 100644 --- a/tests/Unit/BuildTaskUnitTest.php +++ b/tests/Unit/BuildTaskUnitTest.php @@ -153,7 +153,7 @@ public function testCanWriteToOutput() public function testCreatedSiteFile() { - self::needsKernel(); + self::setupKernel(); $task = new BufferedTestBuildTask(); @@ -164,7 +164,7 @@ public function testCreatedSiteFile() public function testCreatedSiteFileWithAbsolutePath() { - self::needsKernel(); + self::setupKernel(); $task = new BufferedTestBuildTask(); diff --git a/tests/Unit/HtmlTestingSupportMetaTest.php b/tests/Unit/HtmlTestingSupportMetaTest.php index 5b6ec6f4..491400cd 100644 --- a/tests/Unit/HtmlTestingSupportMetaTest.php +++ b/tests/Unit/HtmlTestingSupportMetaTest.php @@ -33,7 +33,7 @@ protected function setUp(): void { parent::setUp(); - self::needsKernel(); + self::setupKernel(); $this->html ??= file_get_contents(Hyde::vendorPath('resources/views/homepages/welcome.blade.php')); } diff --git a/tests/Unit/NavItemTest.php b/tests/Unit/NavItemTest.php index 379fbf58..94811a94 100644 --- a/tests/Unit/NavItemTest.php +++ b/tests/Unit/NavItemTest.php @@ -25,13 +25,8 @@ */ class NavItemTest extends UnitTestCase { - public static function setUpBeforeClass(): void - { - self::$hasSetUpKernel = false; - - self::needsKernel(); - self::mockConfig(); - } + protected static bool $needsKernel = true; + protected static bool $needsConfig = true; protected function setUp(): void { diff --git a/tests/Unit/NavigationDataFactoryUnitTest.php b/tests/Unit/NavigationDataFactoryUnitTest.php index 8074f2ef..6833cacd 100644 --- a/tests/Unit/NavigationDataFactoryUnitTest.php +++ b/tests/Unit/NavigationDataFactoryUnitTest.php @@ -19,7 +19,7 @@ class NavigationDataFactoryUnitTest extends UnitTestCase { protected function setUp(): void { - self::needsKernel(); + self::setupKernel(); self::mockConfig(); } diff --git a/tests/Unit/Pages/BladePageUnitTest.php b/tests/Unit/Pages/BladePageUnitTest.php index fe1834b0..f15f4292 100644 --- a/tests/Unit/Pages/BladePageUnitTest.php +++ b/tests/Unit/Pages/BladePageUnitTest.php @@ -179,4 +179,9 @@ public function testMatter() { $this->assertInstanceOf(FrontMatter::class, (new BladePage('foo'))->matter()); } + + public function testGetCanonicalUrl() + { + $this->markTestSkipped('Not yet implemented'); + } } diff --git a/tests/Unit/Pages/DocumentationPageUnitTest.php b/tests/Unit/Pages/DocumentationPageUnitTest.php index 4017fcf6..b1ea51dd 100644 --- a/tests/Unit/Pages/DocumentationPageUnitTest.php +++ b/tests/Unit/Pages/DocumentationPageUnitTest.php @@ -202,4 +202,9 @@ public function testSave() $this->assertFileExists('_docs/foo.md'); Filesystem::unlink('_docs/foo.md'); } + + public function testGetCanonicalUrl() + { + $this->markTestSkipped('Not yet implemented'); + } } diff --git a/tests/Unit/Pages/HtmlPageUnitTest.php b/tests/Unit/Pages/HtmlPageUnitTest.php index f5f299fd..ac9f12cd 100644 --- a/tests/Unit/Pages/HtmlPageUnitTest.php +++ b/tests/Unit/Pages/HtmlPageUnitTest.php @@ -217,4 +217,9 @@ public function testMatter() { $this->assertInstanceOf(FrontMatter::class, (new HtmlPage('404'))->matter()); } + + public function testGetCanonicalUrl() + { + $this->markTestSkipped('Not yet implemented'); + } } diff --git a/tests/Unit/Pages/InMemoryPageUnitTest.php b/tests/Unit/Pages/InMemoryPageUnitTest.php index b2a9c2e6..6c913084 100644 --- a/tests/Unit/Pages/InMemoryPageUnitTest.php +++ b/tests/Unit/Pages/InMemoryPageUnitTest.php @@ -221,4 +221,9 @@ public function testMatter() { $this->assertInstanceOf(FrontMatter::class, (new InMemoryPage('404'))->matter()); } + + public function testGetCanonicalUrl() + { + $this->markTestSkipped('Not yet implemented'); + } } diff --git a/tests/Unit/Pages/MarkdownPageUnitTest.php b/tests/Unit/Pages/MarkdownPageUnitTest.php index 42a51565..1c04e970 100644 --- a/tests/Unit/Pages/MarkdownPageUnitTest.php +++ b/tests/Unit/Pages/MarkdownPageUnitTest.php @@ -230,4 +230,9 @@ public function testSave() $this->assertFileExists('_pages/foo.md'); Filesystem::unlink('_pages/foo.md'); } + + public function testGetCanonicalUrl() + { + $this->markTestSkipped('Not yet implemented'); + } } diff --git a/tests/Unit/Pages/MarkdownPostUnitTest.php b/tests/Unit/Pages/MarkdownPostUnitTest.php index 4ed8dfbe..ade5e74b 100644 --- a/tests/Unit/Pages/MarkdownPostUnitTest.php +++ b/tests/Unit/Pages/MarkdownPostUnitTest.php @@ -230,4 +230,9 @@ public function testSave() $this->assertFileExists('_posts/foo.md'); Filesystem::unlink('_posts/foo.md'); } + + public function testGetCanonicalUrl() + { + $this->markTestSkipped('Not yet implemented'); + } } diff --git a/tests/Unit/UnixsumTest.php b/tests/Unit/UnixsumTest.php index 968c1d0d..0a001538 100644 --- a/tests/Unit/UnixsumTest.php +++ b/tests/Unit/UnixsumTest.php @@ -63,7 +63,7 @@ public function testMethodReturnsSameValueForStringWithMixedEndOfLineSequences() public function testMethodReturnsSameValueWhenLoadedFromFileUsingShorthand() { - self::needsKernel(); + self::setupKernel(); $string = "foo\nbar\r\nbaz\r\n";