509 Commits

Author SHA1 Message Date
Zach Borboa 12b5757c22 Implement MultiCurl::stop() 2022-03-10 18:29:48 -08:00
Zach Borboa dc4d0db091 Rename variable 2022-03-10 18:29:40 -08:00
Zach Borboa 1b64ab6e84 Add shebang to fix bash invalid option error
Error:
    ++ declare -A pids
    ./run.sh: line 55: declare: -A: invalid option
    declare: usage: declare [-afFirtx] [-p] [name[=value] ...]
2022-03-10 18:17:03 -08:00
Zach Borboa 9c03d19715 Remove some uses of function_exists() where no longer necessary 2021-11-25 11:11:32 -05:00
Zach Borboa 21564e7429 Allow test failures on future PHP releases to fail more quietly
This change allows continuous integration test failures on future PHP
releases without triggering some of the user interface warnings:
    - Red x mark instead of a green checkmark
    - Pull request merge warning:
        "Some checks were not successful
        7 successful and 1 failing checks"
2021-11-24 23:12:31 -05:00
Zach Borboa 7dae1c6b54 Update server test names 2021-11-23 23:24:54 -05:00
Theodoros-Franz Gerakitis e999cb4e25 Fix #686: Build url without using data parameter
Also for PATCH, PUT & SEARCH requests
2021-11-23 23:23:08 -05:00
Zach Borboa 31a65e2dfb Remove void return type when running tests on PHP 7.0
The void return type was implemented in PHP 7.1 and PHP 7.0 treats the
void return type as a class name.

Errors:
    1) CurlTest\CurlTest::testExtensionsLoaded
    TypeError: Return value of CurlTest\CurlTest::setUp() must be an instance of CurlTest\void, none returned

    /home/runner/work/php-curl-class/php-curl-class/tests/PHPCurlClass/PHPCurlClassTest.php:18

    2) CurlTest\CurlTest::testCaseInsensitiveArrayGet
    TypeError: Return value of CurlTest\CurlTest::setUp() must be an instance of CurlTest\void, none returned

    /home/runner/work/php-curl-class/php-curl-class/tests/PHPCurlClass/PHPCurlClassTest.php:18

    3) CurlTest\CurlTest::testCaseInsensitiveArraySet
    TypeError: Return value of CurlTest\CurlTest::setUp() must be an instance of CurlTest\void, none returned

    /home/runner/work/php-curl-class/php-curl-class/tests/PHPCurlClass/PHPCurlClassTest.php:18

    [...]
2021-11-23 21:53:32 -05:00
Zach Borboa 860645c623 Add option to skip slow tests using an environment variable
Enable the PHP_CURL_CLASS_SKIP_SLOW_TESTS flag to skip the slow tests:
    $ time ./tests/run.sh
    real	16m24.624s ←
    user	0m1.682s
    sys	0m1.645s

    $ time PHP_CURL_CLASS_SKIP_SLOW_TESTS=1 ./tests/run.sh
    real	0m47.441s ←
    user	0m20.005s
    sys	0m10.802s
2021-11-23 20:37:33 -05:00
Zach Borboa 92a8f3bbe2 Fix #686: Build url without using data parameter 2021-11-20 23:43:44 -05:00
Zach Borboa 2973f50df8 Determine request method using helper method 2021-11-20 23:13:10 -05:00
Zach Borboa 3d9acedb66 Correct the post/redirect/get logic when using MultiCurl::addPost() 2021-11-20 22:17:32 -05:00
Zach Borboa 0c8eab3083 Fix empty request headers value 2021-11-20 15:43:36 -05:00
Zach Borboa bd85374938 Add PHPCompatibility ruleset to coding standards check 2021-09-21 15:28:48 -04:00
Zach Borboa a4d91d28ba Run check coding standard commands from the project root directory 2021-09-21 15:21:21 -04:00
Zach Borboa 5c0a351e41 Unify continuous integration and run scripts more closely 2021-09-21 10:42:56 -04:00
Zach Borboa a4f4223b98 Implement Curl::setStop() for stopping requests early
Use Curl::setStop() to stop requests early without downloading
the full response.
2021-09-15 05:49:25 -04:00
Zach Borboa a8714527e6 Increase tolerance of request start time 2021-08-19 20:18:04 -04:00
Zach Borboa eadd466f66 Fix parsing schemeless url 2021-08-07 17:48:47 -04:00
Zach Borboa 25e9126f77 Make Url::parseUrl() and Url::percentEncodeChars() static functions. 2021-08-06 21:01:02 -04:00
Zach Borboa 620bf40691 Move ArrayUtil tests under ArrayUtilTest 2021-07-26 21:48:17 -04:00
Zach Borboa c51b175748 Increase amount of time drift allowed
(noisy neighbors?)
2021-07-26 20:44:33 -04:00
Zach Borboa cd825550b2 Fix Curl::downloadFileName not being correctly set 2021-07-26 20:17:14 -04:00
Zach Borboa 285b4f02e6 Update tests to more closely match one another 2021-07-26 10:29:24 -04:00
Zach Borboa 7af4a8d383 Fix some errors caused by using strict types 2021-07-26 10:08:44 -04:00
Zach Borboa bb1a190071 Use strict types 2021-07-26 00:48:18 -04:00
Zach Borboa 6ceabf7293 Clean up 2021-07-26 00:35:01 -04:00
Zach Borboa 1226bb1a6c Implement option to capture output of Curl::diagnose() 2021-07-20 23:28:20 -04:00
Zach Borboa 7348de72f3 Clean up 2021-07-20 23:10:20 -04:00
Zach Borboa 18e76855c2 Fix assertion 2021-07-20 23:01:40 -04:00
Zach Borboa 2a899465c4 Add method to run basic request diagnostics 2021-07-18 21:56:03 -04:00
Zach Borboa 250421927f Add additional Curl::set* and MultiCurl::set* helper methods 2021-06-17 11:14:29 -04:00
Zach Borboa b06af57cb3 Clean up 2021-06-11 08:24:40 -04:00
Zach Borboa 8d62a97719 Unify continuous integration and run scripts more closely 2021-06-11 00:19:33 -04:00
Zach Borboa 2c5fe57d60 Fix missing rsync error: "sh: 2: rsync: not found" 2021-06-09 21:38:21 -04:00
Zach Borboa fe829855cb Fix #670: Add additional checks before attempting to close curl handles 2021-06-09 20:58:33 -04:00
Zach Borboa 1f96291b04 Run test script when testing inside containers 2021-06-09 20:25:47 -04:00
Zach Borboa 3305e9c0b1 Rename continuous integration script 2021-03-29 10:08:46 -04:00
Zach Borboa a315b541be Consolidate continuous integration scripts
Merge before_script.sh into script.sh
2021-03-29 09:59:19 -04:00
Zach Borboa 64df98c50f Match number of servers started 2021-03-28 23:44:25 -04:00
Zach Borboa 3a095e7780 Remove version check as all tested versions use the built-in development server 2021-03-28 23:14:29 -04:00
Zach Borboa 0031da7477 Remove environmental variable no longer needed
All the tests now make use of PHP's built-in web server and the variable
is no longer needed to determine if the development server is being
used.
2021-03-26 00:03:46 -04:00
Zach Borboa 034b483c47 Move PHPUnit shims to test script 2021-03-24 08:41:30 -04:00
Zach Borboa 5d3e80aeeb Fix path to PHPUnit binary 2021-03-24 01:27:07 -04:00
Zach Borboa 922ff9bdc8 Fix tests running with older versions of PHPUnit 2021-03-23 23:08:08 -04:00
Zach Borboa 06ca377f64 Add support for using relative urls with MultiCurl::add*() methods
This change allows setting a base url with MultiCurl and adding requests
using relative paths.

Fixes #628.
2021-03-23 11:03:39 -04:00
Zach Borboa b88fd76ffc Move Curl::buildUrl() to Url::buildUrl() 2021-03-23 10:02:11 -04:00
Zach Borboa 57bfcb4e1a Clean up 2021-03-22 22:55:46 -04:00
Zach Borboa 4c20e12f5b Exclude website files from long lines check 2021-03-20 09:48:38 -04:00
Zach Borboa 7884ca4628 Remove flag for debugging 2021-03-19 21:54:40 -04:00