Browse Source

DX: During deployment, run all smoke tests and don't allow to skip phar-related ones

Dariusz Ruminski 7 years ago
parent
commit
386a67e891
3 changed files with 7 additions and 2 deletions
  1. 1 1
      .travis.yml
  2. 1 0
      phpunit.xml.dist
  3. 5 1
      tests/Smoke/PharTest.php

+ 1 - 1
.travis.yml

@@ -149,7 +149,7 @@ jobs:
             php: 7.1
             install: ./dev-tools/build.sh
             script:
-                - vendor/bin/phpunit tests/Smoke/PharTest.php
+                - PHP_CS_FIXER_TEST_ALLOW_SKIPPING_PHAR_TESTS=0 vendor/bin/phpunit tests/Smoke/
             deploy:
                 provider: releases
                 api_key:

+ 1 - 0
phpunit.xml.dist

@@ -49,5 +49,6 @@
         <ini name="zend.enable_gc" value="0"/>
         <ini name="memory_limit" value="1G"/>
         <env name="SKIP_LINT_TEST_CASES" value="0"/>
+        <env name="PHP_CS_FIXER_TEST_ALLOW_SKIPPING_PHAR_TESTS" value="1"/>
     </php>
 </phpunit>

+ 5 - 1
tests/Smoke/PharTest.php

@@ -41,7 +41,11 @@ final class PharTest extends TestCase
         self::$pharPath = self::$pharCwd.'/'.self::$pharName;
 
         if (!file_exists(self::$pharPath)) {
-            static::markTestSkipped('No phar file available.');
+            if (getenv('PHP_CS_FIXER_TEST_ALLOW_SKIPPING_PHAR_TESTS')) {
+                self::markTestSkipped('No phar file available.');
+            }
+
+            self::fail('No phar file available. Failing as test is obligatory because of `PHP_CS_FIXER_TEST_ALLOW_SKIPPING_PHAR_TESTS=0`.');
         }
     }