phptravis-cirespect-validation

PHP Respect Validation Pull Request Fails Travis, Why?


I have updated the grammar in PHP's Respect Validation, but the Travis CI fails each time, even though I have only deleted a few chars using the Github editor, then submitted changes as Pull Request. https://travis-ci.org/Respect/Validation/builds/155072854

Any suggestions as to why this is happening?


Solution

  • Open one platform build (called also job), for example PHP 5.6 one and you will find out what are the errors:

    There were 7 failures:
    1) Respect\Validation\Rules\EqualsTest::testShouldThrowTheProperExceptionWhenFailure
    Failed asserting that exception message '"24" must equal 42' contains '"24" must be equals 42'.
    2) Respect\Validation\Rules\KeyValueTest::testShouldCheckWhenDefinedValuesDoesNotMatch
    Failed asserting that exception message 'foo must equal "bar"' contains 'foo must be equals "bar"'.
    3) /home/travis/build/Respect/Validation/tests/integration/rules/equals_2.phpt
    Failed asserting that format description matches text.
    --- Expected
    +++ Actual
    @@ @@
    -"test 1234" must be equals "test 123"
    +"test 1234" must equal "test 123"
    4) /home/travis/build/Respect/Validation/tests/integration/rules/equals_3.phpt
    Failed asserting that format description matches text.
    --- Expected
    +++ Actual
    @@ @@
    -- "test 1234" must be equals "test 123"
    +- "test 1234" must equal "test 123"
    5) /home/travis/build/Respect/Validation/tests/integration/rules/equals_4.phpt
    Failed asserting that format description matches text.
    --- Expected
    +++ Actual
    @@ @@
    -"test 123" must not be equals "test 123"
    +"test 123" must not equal "test 123"
    6) /home/travis/build/Respect/Validation/tests/integration/rules/equals_5.phpt
    Failed asserting that format description matches text.
    --- Expected
    +++ Actual
    @@ @@
    -- "test 123" must not be equals "test 123"
    +- "test 123" must not equal "test 123"
    7) /home/travis/build/Respect/Validation/tests/integration/rules/keyValue_2.phpt
    Failed asserting that format description matches text.
    --- Expected
    +++ Actual
    @@ @@
    -password must be equals "password_confirmation"
    +password must equal "password_confirmation"
    

    It seems you replace in a default template equals with equal and this generates failures. There are unit tests that check that behavior is always the same. If you want to create a PR to an open source project, often you should also update or create tests.

    If you want you can locally launch test and check it's all ok. Take a look to the "Running Tests" section (on which I contributed) in the official documentation for more information on how to launch tests.

    Install dependencies

    composer install
    

    Launch tests

    On Linux

    vendor/bin/phpunit
    

    On Windows

    vendor\bin\phpunit