diff --git a/.coveralls.yml b/.coveralls.yml deleted file mode 100644 index 9160059..0000000 --- a/.coveralls.yml +++ /dev/null @@ -1 +0,0 @@ -service_name: travis-ci diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..ddf8b8d --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,29 @@ +name: Test +on: [push, pull_request] +jobs: + test: + name: Test PHP ${{ matrix.php-version }} + runs-on: ubuntu-latest + strategy: + matrix: + php-version: ['5.3', '5.4', '5.5', '5.6', '7.0', '7.1', '7.2', '7.3', '7.4', '8.0'] + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php-version }} + - name: PHP Version + run: php --version + - name: Composer Version + run: composer --version + - name: Install Dependencies + run: COMPOSER_MEMORY_LIMIT=-1 composer install + - name: Run Tests + run: vendor/bin/phpunit --coverage-clover ./coverage.xml + - name: Upload Coverage + if: ${{ matrix.php-version == '7.4' }} + uses: codecov/codecov-action@v1 + with: + file: ./coverage.xml diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 36d3649..0000000 --- a/.travis.yml +++ /dev/null @@ -1,40 +0,0 @@ -language: php -dist: bionic -sudo: required - -matrix: - include: - - php: 5.3 - dist: precise - - php: 5.4 - dist: trusty - - php: 5.5 - dist: trusty - - php: 5.6 - dist: trusty - - php: 7.0 - dist: xenial - - php: 7.1 - - php: 7.2 - - php: 7.3 - - php: 7.4 - env: COVERAGE=true - - php: nightly - allow_failures: - - php: nightly - -install: - - php --version - - composer install - -before_script: - - mkdir -p build/logs - -script: - - vendor/bin/phpunit --coverage-clover build/logs/clover.xml - -after_success: - - | - if [[ $COVERAGE ]]; then - travis_retry php vendor/bin/php-coveralls --config .coveralls.yml -v - fi diff --git a/FUNDING.yml b/FUNDING.yml index 8b5faa1..9396c28 100644 --- a/FUNDING.yml +++ b/FUNDING.yml @@ -1 +1 @@ -patreon: joshtronic +github: joshtronic diff --git a/LICENSE b/LICENSE index 22de71d..be2bff2 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Josh Sherman +Copyright (c) 2012-2014 Josh Sherman Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in diff --git a/composer.json b/composer.json index 87ebba0..ed5854c 100644 --- a/composer.json +++ b/composer.json @@ -1,33 +1,26 @@ { - "name": "joshtronic/php-projecthoneypot", - "description": "PHP Wrapper for Project Honey Pot", - "version": "1.0.1", - "type": "library", - "keywords": [ - "project", - "honey", - "pot", - "api", - "spam", - "spammer" - ], - "homepage": "https://github.com/joshtronic/php-projecthoneypot", - "license": "MIT", - "authors": [{ - "name": "Josh Sherman", - "email": "hello@joshtronic.com", - "homepage": "https://joshtronic.com" - }], - "require": { - "php": ">=5.3" - }, - "require-dev": { - "php-coveralls/php-coveralls": ">=1", - "phpunit/phpunit": ">=4" - }, - "autoload": { - "psr-4": { - "joshtronic\\": "src/" + "name": "joshtronic/php-projecthoneypot", + "description": "PHP Wrapper for Project Honey Pot", + "version": "1.0.0", + "type": "library", + "keywords": ["project", "honey", "pot", "api", "spam", "spammer"], + "homepage": "https://github.com/joshtronic/php-projecthoneypot", + "license": "MIT", + "authors": [{ + "name": "Josh Sherman", + "email": "hello@joshtronic.com", + "homepage": "http://joshtronic.com" + }], + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.36 || ^9.0" + }, + "autoload": { + "psr-4": {"joshtronic\\": "src/"} + }, + "autoload-dev": { + "psr-4": {"joshtronic\\Tests\\": "tests/"} } - } } diff --git a/phpunit.xml b/phpunit.xml index 6eaac53..82cbb00 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -1,6 +1,7 @@ - + tests diff --git a/src/ProjectHoneyPot.php b/src/ProjectHoneyPot.php index a546b1b..a82b243 100644 --- a/src/ProjectHoneyPot.php +++ b/src/ProjectHoneyPot.php @@ -9,7 +9,7 @@ * Redistribution of these files must retain the above copyright notice. * * @author Josh Sherman - * @copyright Copyright 2012, 2013, 2014, 2015, 2016, 2017, 2018 Josh Sherman + * @copyright Copyright 2012-2015, Josh Sherman * @license http://www.opensource.org/licenses/mit-license.html * @link https://github.com/joshtronic/php-projecthoneypot * @link http://www.projecthoneypot.org/httpbl_configure.php @@ -122,7 +122,7 @@ class ProjectHoneyPot /** * DNS Get Record * - * Wrapper method for dns_get_record() to allow fo easy mocking of the + * Wrapper method for dns_get_record() to allow for easy mocking of the * results in our tests. Takes an already reversed IP address and does a * DNS lookup for A records against the http:BL API. * diff --git a/tests/ProjectHoneyPotTest.php b/tests/ProjectHoneyPotTest.php index bc8011a..9c5e103 100644 --- a/tests/ProjectHoneyPotTest.php +++ b/tests/ProjectHoneyPotTest.php @@ -1,34 +1,22 @@ assertSame('You must specify a valid API key.', $e->getMessage()); + } } public function testInvalidIP() { - $object = new joshtronic\ProjectHoneyPot('foobarfoobar'); + $object = new ProjectHoneyPot('foobarfoobar'); $this->assertEquals( array('error' => 'Invalid IP address.'), @@ -38,32 +26,28 @@ class ProjectHoneyPotTest extends PHPUnit_Framework_TestCase public function testMissingResults() { - $mock = $this->$createMock( - 'joshtronic\ProjectHoneyPot', - array('dns_get_record'), - array('foobarfoobar') - ); + $mock = $this->getMockBuilder('joshtronic\\ProjectHoneyPot') + ->setConstructorArgs(array('foobarfoobar')) + ->setMethods(array('dns_get_record')) + ->getMock(); - $mock - ->expects($this->once()) - ->method('dns_get_record') - ->will($this->returnValue('foo')); + $mock->expects($this->once()) + ->method('dns_get_record') + ->will($this->returnValue('foo')); $this->assertFalse($mock->query('1.2.3.4')); } public function testCategory0() { - $mock = $this->$createMock( - 'joshtronic\ProjectHoneyPot', - array('dns_get_record'), - array('foobarfoobar') - ); + $mock = $this->getMockBuilder('joshtronic\\ProjectHoneyPot') + ->setConstructorArgs(array('foobarfoobar')) + ->setMethods(array('dns_get_record')) + ->getMock(); - $mock - ->expects($this->once()) - ->method('dns_get_record') - ->will($this->returnValue(array(array('ip' => '127.0.0.0')))); + $mock->expects($this->once()) + ->method('dns_get_record') + ->will($this->returnValue(array(array('ip' => '127.0.0.0')))); $results = $mock->query('1.2.3.4'); @@ -72,16 +56,14 @@ class ProjectHoneyPotTest extends PHPUnit_Framework_TestCase public function testCategory1() { - $mock = $this->$createMock( - 'joshtronic\ProjectHoneyPot', - array('dns_get_record'), - array('foobarfoobar') - ); + $mock = $this->getMockBuilder('joshtronic\\ProjectHoneyPot') + ->setConstructorArgs(array('foobarfoobar')) + ->setMethods(array('dns_get_record')) + ->getMock(); - $mock - ->expects($this->once()) - ->method('dns_get_record') - ->will($this->returnValue(array(array('ip' => '127.0.0.1')))); + $mock->expects($this->once()) + ->method('dns_get_record') + ->will($this->returnValue(array(array('ip' => '127.0.0.1')))); $results = $mock->query('1.2.3.4'); @@ -90,16 +72,14 @@ class ProjectHoneyPotTest extends PHPUnit_Framework_TestCase public function testCategory2() { - $mock = $this->$createMock( - 'joshtronic\ProjectHoneyPot', - array('dns_get_record'), - array('foobarfoobar') - ); + $mock = $this->getMockBuilder('joshtronic\\ProjectHoneyPot') + ->setConstructorArgs(array('foobarfoobar')) + ->setMethods(array('dns_get_record')) + ->getMock(); - $mock - ->expects($this->once()) - ->method('dns_get_record') - ->will($this->returnValue(array(array('ip' => '127.0.0.2')))); + $mock->expects($this->once()) + ->method('dns_get_record') + ->will($this->returnValue(array(array('ip' => '127.0.0.2')))); $results = $mock->query('1.2.3.4'); @@ -108,16 +88,14 @@ class ProjectHoneyPotTest extends PHPUnit_Framework_TestCase public function testCategory3() { - $mock = $this->$createMock( - 'joshtronic\ProjectHoneyPot', - array('dns_get_record'), - array('foobarfoobar') - ); + $mock = $this->getMockBuilder('joshtronic\\ProjectHoneyPot') + ->setConstructorArgs(array('foobarfoobar')) + ->setMethods(array('dns_get_record')) + ->getMock(); - $mock - ->expects($this->once()) - ->method('dns_get_record') - ->will($this->returnValue(array(array('ip' => '127.0.0.3')))); + $mock->expects($this->once()) + ->method('dns_get_record') + ->will($this->returnValue(array(array('ip' => '127.0.0.3')))); $results = $mock->query('1.2.3.4'); @@ -129,16 +107,14 @@ class ProjectHoneyPotTest extends PHPUnit_Framework_TestCase public function testCategory4() { - $mock = $this->$createMock( - 'joshtronic\ProjectHoneyPot', - array('dns_get_record'), - array('foobarfoobar') - ); + $mock = $this->getMockBuilder('joshtronic\\ProjectHoneyPot') + ->setConstructorArgs(array('foobarfoobar')) + ->setMethods(array('dns_get_record')) + ->getMock(); - $mock - ->expects($this->once()) - ->method('dns_get_record') - ->will($this->returnValue(array(array('ip' => '127.0.0.4')))); + $mock->expects($this->once()) + ->method('dns_get_record') + ->will($this->returnValue(array(array('ip' => '127.0.0.4')))); $results = $mock->query('1.2.3.4'); @@ -150,16 +126,14 @@ class ProjectHoneyPotTest extends PHPUnit_Framework_TestCase public function testCategory5() { - $mock = $this->$createMock( - 'joshtronic\ProjectHoneyPot', - array('dns_get_record'), - array('foobarfoobar') - ); + $mock = $this->getMockBuilder('joshtronic\\ProjectHoneyPot') + ->setConstructorArgs(array('foobarfoobar')) + ->setMethods(array('dns_get_record')) + ->getMock(); - $mock - ->expects($this->once()) - ->method('dns_get_record') - ->will($this->returnValue(array(array('ip' => '127.0.0.5')))); + $mock->expects($this->once()) + ->method('dns_get_record') + ->will($this->returnValue(array(array('ip' => '127.0.0.5')))); $results = $mock->query('1.2.3.4'); @@ -171,16 +145,14 @@ class ProjectHoneyPotTest extends PHPUnit_Framework_TestCase public function testCategory6() { - $mock = $this->$createMock( - 'joshtronic\ProjectHoneyPot', - array('dns_get_record'), - array('foobarfoobar') - ); + $mock = $this->getMockBuilder('joshtronic\\ProjectHoneyPot') + ->setConstructorArgs(array('foobarfoobar')) + ->setMethods(array('dns_get_record')) + ->getMock(); - $mock - ->expects($this->once()) - ->method('dns_get_record') - ->will($this->returnValue(array(array('ip' => '127.0.0.6')))); + $mock->expects($this->once()) + ->method('dns_get_record') + ->will($this->returnValue(array(array('ip' => '127.0.0.6')))); $results = $mock->query('1.2.3.4'); @@ -192,16 +164,14 @@ class ProjectHoneyPotTest extends PHPUnit_Framework_TestCase public function testCategory7() { - $mock = $this->$createMock( - 'joshtronic\ProjectHoneyPot', - array('dns_get_record'), - array('foobarfoobar') - ); + $mock = $this->getMockBuilder('joshtronic\\ProjectHoneyPot') + ->setConstructorArgs(array('foobarfoobar')) + ->setMethods(array('dns_get_record')) + ->getMock(); - $mock - ->expects($this->once()) - ->method('dns_get_record') - ->will($this->returnValue(array(array('ip' => '127.0.0.7')))); + $mock->expects($this->once()) + ->method('dns_get_record') + ->will($this->returnValue(array(array('ip' => '127.0.0.7')))); $results = $mock->query('1.2.3.4'); @@ -213,16 +183,14 @@ class ProjectHoneyPotTest extends PHPUnit_Framework_TestCase public function testCategoryDefault() { - $mock = $this->$createMock( - 'joshtronic\ProjectHoneyPot', - array('dns_get_record'), - array('foobarfoobar') - ); + $mock = $this->getMockBuilder('joshtronic\\ProjectHoneyPot') + ->setConstructorArgs(array('foobarfoobar')) + ->setMethods(array('dns_get_record')) + ->getMock(); - $mock - ->expects($this->once()) - ->method('dns_get_record') - ->will($this->returnValue(array(array('ip' => '127.0.0.255')))); + $mock->expects($this->once()) + ->method('dns_get_record') + ->will($this->returnValue(array(array('ip' => '127.0.0.255')))); $results = $mock->query('1.2.3.4'); @@ -234,16 +202,14 @@ class ProjectHoneyPotTest extends PHPUnit_Framework_TestCase public function testWithout127() { - $mock = $this->$createMock( - 'joshtronic\ProjectHoneyPot', - array('dns_get_record'), - array('foobarfoobar') - ); + $mock = $this->getMockBuilder('joshtronic\\ProjectHoneyPot') + ->setConstructorArgs(array('foobarfoobar')) + ->setMethods(array('dns_get_record')) + ->getMock(); - $mock - ->expects($this->once()) - ->method('dns_get_record') - ->will($this->returnValue(array(array('ip' => '1.0.0.0')))); + $mock->expects($this->once()) + ->method('dns_get_record') + ->will($this->returnValue(array(array('ip' => '1.0.0.0')))); $this->assertFalse($mock->query('1.2.3.4')); } @@ -251,9 +217,11 @@ class ProjectHoneyPotTest extends PHPUnit_Framework_TestCase // Doesn't serve much purpose aside from helping achieve 100% coverage public function testDnsGetRecord() { - $object = new joshtronic\ProjectHoneyPot('foobarfoobar'); + $object = new ProjectHoneyPot('foobarfoobar'); - $object->dns_get_record('1.2.3.4'); + $result = $object->dns_get_record('1.2.3.4'); + + $this->assertEquals(array(), $result); } }