diff --git a/.travis.yml b/.travis.yml index 4f75f77..219362b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,19 +1,19 @@ language: php -env: - global: - - COMPOSER_ROOT_VERSION=2.0.x-dev +dist: trusty matrix: include: - - php: 5.6 - env: DB=MYSQL RECIPE_VERSION=1.0.x-dev PHPCS_TEST=1 PHPUNIT_TEST=1 - - php: 7.0 - env: DB=MYSQL RECIPE_VERSION=1.1.x-dev PHPUNIT_TEST=1 - - php: 7.1 - env: DB=PGSQL RECIPE_VERSION=1.2.x-dev PHPUNIT_COVERAGE_TEST=1 - - php: 7.2 - env: DB=MYSQL RECIPE_VERSION=1.x-dev PHPUNIT_TEST=1 + - php: '5.6' + env: DB=MYSQL RECIPE_VERSION=4.3.x-dev PHPCS_TEST=1 PHPUNIT_TEST=1 + - php: '7.0' + env: DB=MYSQL RECIPE_VERSION=4.3.x-dev PHPUNIT_TEST=1 + - php: '7.1' + env: DB=PGSQL RECIPE_VERSION=4.4.x-dev PHPUNIT_COVERAGE_TEST=1 + - php: '7.2' + env: DB=MYSQL RECIPE_VERSION=4.5.x-dev PHPUNIT_TEST=1 + - php: '7.3' + env: DB=MYSQL RECIPE_VERSION=4.x-dev PHPUNIT_TEST=1 before_script: # Init PHP @@ -23,7 +23,7 @@ before_script: # Install composer dependencies - composer validate - composer require --no-update silverstripe/recipe-cms $RECIPE_VERSION - - if [[ $DB == PGSQL ]]; then composer require --no-update silverstripe/postgresql 2.1.x-dev; fi + - if [[ $DB == PGSQL ]]; then composer require --no-update silverstripe/postgresql 2.x-dev; fi - composer install --prefer-dist --no-interaction --no-progress --no-suggest --optimize-autoloader --verbose --profile script: diff --git a/src/Model/BrokenExternalLink.php b/src/Model/BrokenExternalLink.php index 366057a..d7a1bea 100644 --- a/src/Model/BrokenExternalLink.php +++ b/src/Model/BrokenExternalLink.php @@ -2,9 +2,9 @@ namespace SilverStripe\ExternalLinks\Model; +use InvalidArgumentException; +use SilverStripe\CMS\Model\SiteTree; use SilverStripe\Control\HTTPResponse; -use SilverStripe\ExternalLinks\Model\BrokenExternalPageTrack; -use SilverStripe\ExternalLinks\Model\BrokenExternalPageTrackStatus; use SilverStripe\ORM\DataObject; use SilverStripe\Security\Permission; use SilverStripe\Security\Security; @@ -12,6 +12,8 @@ use SilverStripe\Security\Security; /** * Represents a single link checked for a single run that is broken * + * @property string Link + * @property int HTTPCode * @method BrokenExternalPageTrack Track() * @method BrokenExternalPageTrackStatus Status() */ diff --git a/tests/Model/BrokenExternalLinkTest.php b/tests/Model/BrokenExternalLinkTest.php new file mode 100644 index 0000000..4160304 --- /dev/null +++ b/tests/Model/BrokenExternalLinkTest.php @@ -0,0 +1,35 @@ +HTTPCode = $httpCode; + $this->assertSame($expected, $link->getHTTPCodeDescription()); + } + + /** + * @return array[] + */ + public function httpCodeProvider() + { + return [ + [200, '200 (OK)'], + [302, '302 (Found)'], + [404, '404 (Not Found)'], + [500, '500 (Internal Server Error)'], + [789, '789 (Unknown Response Code)'], + ]; + } +}