Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2.4 bug 4847 #4852

Closed
wants to merge 162 commits into from
Closed

2.4 bug 4847 #4852

wants to merge 162 commits into from

Conversation

quantum-x
Copy link
Contributor

PHP's parse_url fails on specific relative URLs.
If the absolute URL is passed, it parses as expected.
PHP Known bug: https://bugs.php.net/bug.php?id=70942
Discussion thread: #4847

Code example:

$I->amOnPage('/units/view/1/page:2');

Behaviour before:

1) AdminDevicesCest: Check i can see a particular device and all its scans
 Test  tests/rServices/AdminDevicesCest.php:checkUnitScans

  [InvalidArgumentException] Invalid URI /units/view/1/page:2

Behavior after:

 I am on page "/units/view/1/page:2"
  [Request Headers] []
  [Page] /units/view/1/page:2
  [Response] 200

Internal Testing

Before patch

Unit Tests (10) ----------------------------------------------------------------------------------------------------------------
✔ UriTest: Url merge (0.00s)
✔ UriTest: Append anchor (0.00s)
✔ UriTest: Merge urls when base uri ends with slash but uri path has no leading slash (0.00s)
✔ UriTest: Append path (0.00s)
✔ UriTest: Merge urls when base uri has no trailing slash and uri path has no leading slash (0.00s)
✔ UriTest: Merging path (0.00s)
✔ UriTest: Append path removes query string and anchor (0.00s)
E UriTest: Merging non parsing path (0.00s)
--------------------------------------------------------------------------------------------------------------------------------

After patch:

Unit Tests (10) ----------------------------------------------------------------------------------------------------------------
✔ UriTest: Merging scheme (0.00s)
✔ UriTest: Append anchor (0.00s)
✔ UriTest: Merge urls when base uri has no trailing slash and uri path has no leading slash (0.00s)
✔ UriTest: Append path (0.00s)
✔ UriTest: Merging path (0.00s)
✔ UriTest: Append empty path (0.00s)
✔ UriTest: Append path removes query string and anchor (0.00s)
✔ UriTest: Url merge (0.00s)
✔ UriTest: Merge urls when base uri ends with slash but uri path has no leading slash (0.00s)
✔ UriTest: Merging non parsing path (0.00s)
--------------------------------------------------------------------------------------------------------------------------------

Best efforts made to ensure the style matches the project - please accept my apologies if it doesn't.

SamMousa and others added 30 commits September 5, 2017 13:20
* [Db] Add doc for updateInDatabase

* [Db] Add insertInDatabase

* Add test for insertInDatabase

* Fix test

* Fix again

* Add test ro check if insert is not deleted

* insertInDatabase only accessible from helper

* insertInDatabase only accessible by helper

* Fix
* composer.json: Guzzle 6.3.0

- require guzzle 6.3.0 for NTLM support

* REST.php: amNTLMAuthenticated

- add function amNTLMAuthenticated() to support guzzle NTLM auth option

* REST.md: amNTLMAuthenticated Documentation

- add amNTLMAuthenticated to REST docs

* Revert "composer.json: Guzzle 6.3.0"

This reverts commit c76e3d7.

* Revert "REST.md: amNTLMAuthenticated Documentation"

This reverts commit 9071204.

* REST.php: amNTLMAuthenticated

- Add comment that this function requires Guzzle >=6.3.0
- Throw ModuleException if functional module

* REST.php: amNTLMAuthenticated

- Throw ModuleException when guzzle version is too old

* REST.php: amNTLMAuthencticated

- improve version comparison

* REST.php: amNTLMAuthenticated Guzzle Version

- use version_compare

* REST.php: amNTLMAuthenticated - Check Guzzle Client

- throw ModuleException if `\GuzzleHttp\Client::VERSION` is not defined

* REST.php: amNTLMAuthenticated Doc Block

- add example usage to doc block
…on#4471)

* Specify failed group name to save tests for Run Failed Ext

* Set default fail group at options array

* Add some tests for named fail group

* Refactored param for extension to 'override' feature

* Fix for PR: use default value from codeception.yml if not overriden

* Add check for empty value, fix tests

* Code style fix

* fix tests
…ion#4487)

* [WebDriver] Add deleteAllCookies before loadSessionSnapshot

* Update WebDriver.php
In order to be compatible with different versions of sebastian/diff
* [Travis] run tests on PHP 7.2

* Fixed the only broken test on PHP 7.2

count(): Parameter must be an array or an object that implements Countable

* [Travis] Don't test Yii2 on PHP 7.2
Because PhpStorm displayed typehinst as `\_generated\AMQPMessage`
`_generated` namespace is used in generated action files.
* prefer yii stable builds

* skip mongo tests on PHP 5.4

* removing mongodb for php 5.4

* added no-update flag

* skipping mongo test if mongo is not installed
* Header Enhancements

* Doc Updates for HaveHttpHeader
* Updating Cest generator to allow for actors with different namespace from suite or main configuration's namespace.

* Fixing indents

* Adding suite_namespace setting

* Renaming test
Updated changelog, updated docs, updated tested Laravel project in travis
Style, spelling, and grammar improvements. Have also corrected the
example filename for suite config templates (previously ".suite" was
missing).
…ance-test-doc

Fixing link on Acceptance Testing doc
DavertMik and others added 27 commits February 26, 2018 20:30
* changed build process for phar

* Switched to use phpunit-wrapper

* loading shim

* fixed REST

* Switched to use phpunit-wrapper

* Fixed tests

* Switched to use phpunit-wrapper

* Fixed zend expressive - to not install dev deps

* Switched to use phpunit-wrapper

* no dev dependencies for project

* Fixed laravel event tests

* fixed Laravel event mocking

* Removed PHP 5.4 and PHP 5.5 tests from Travis CI
…tion#4813)

* call after hook for Cest after every test (PASSED or FAILED)

* call after in finally block to prevent multiple calls
* Add clear field method

* clearField + fillField documentation

I add the clearField documentation and changed the fillField documentation.

* add testClearField method

* revert changes

* add comment block to clearField method

* changed dontSee to dontSeeInField

* add module amOnPage to testClearField method
…3408) (Codeception#4743)

* Adds support for custom formatting of argument output (Codeception#3408)

* Tweaks for PSR-2 (new line at EOF) (Codeception#3408)

* Fixes test to add support for older versions of PHPUnit

* Adding support for FormattedOutput arguments to WebDriver (Codeception#3408)
* Make clean resursive (Codeception/Codeception Codeception#4685)

* Correct formatting
* changed build process for phar

* prepareing 2.3.9 release

* added travis.yml
Fix the bug when output dir is not exist and run Clean command.
* Make working running test with particular data set by index
Example: codecept run tests/acceptance/FirstCest.php:frontpageWorks#0

* return null if not descriptive
PHP's parse_url fails on specific relative URLs.
If the absolute URL is passed, it parses as expected.
PHP Known bug: https://bugs.php.net/bug.php?id=70942
Discussion thread: Codeception#4847
@Naktibalda
Copy link
Member

@quantum-x please don't touch master branch, it won't be released until the next year.

@Naktibalda Naktibalda closed this Mar 7, 2018
@quantum-x
Copy link
Contributor Author

@Naktibalda .. Sorry, misread the contribution guide.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet