diff --git a/.travis.yml b/.travis.yml index ff331d4..a25eeb1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,14 +4,21 @@ php: - 5.3 - 5.4 - 5.5 + - 5.6 + - 7.0 - hhvm matrix: allow_failures: + - php: 7.0 - php: hhvm -before_script: - - COMPOSER_ROOT_VERSION=dev-master composer --prefer-source --dev --no-interaction install +before_install: + - if [ "$TRAVIS_PHP_VERSION" != "hhvm" ]; then phpenv config-rm xdebug.ini; fi + - composer selfupdate + +install: + - COMPOSER_ROOT_VERSION=dev-master composer --prefer-source --no-interaction install script: - bin/phpspec run --format=pretty diff --git a/spec/PUGX/Poser/BadgeSpec.php b/spec/PUGX/Poser/BadgeSpec.php index 8a48662..67895fd 100644 --- a/spec/PUGX/Poser/BadgeSpec.php +++ b/spec/PUGX/Poser/BadgeSpec.php @@ -60,4 +60,14 @@ function it_should_be_constructed_by_fromURI_factory_method_escaping_correctly_w throw new Exception(sprintf("from[%s] wants[%s] having[%s]\n", $input, $assertInput, (string) $it)); } } + + function it_should_validate_available_color_schemes() + { + $colorSchemes = \PUGX\Poser\Badge::getColorNamesAvailable(); + + foreach ($colorSchemes as $colorScheme) { + $this->beConstructedWith('a', 'b', $colorScheme, 'svg'); + $this->getHexColor()->shouldBeString(); + } + } } diff --git a/spec/PUGX/Poser/PoserSpec.php b/spec/PUGX/Poser/PoserSpec.php index cd00d9f..a91bb3f 100644 --- a/spec/PUGX/Poser/PoserSpec.php +++ b/spec/PUGX/Poser/PoserSpec.php @@ -40,9 +40,7 @@ function it_should_be_able_to_generate_an_svg_image_from_URI() public function getMatchers() { return array( - 'beAValidSVGImageContaining' => function($object, $subject, $status) - { - + 'beAValidSVGImageContaining' => function($object, $subject, $status) { $regex = '/^$/'; $matches = array(); diff --git a/spec/PUGX/Poser/Render/SvgFlatRenderSpec.php b/spec/PUGX/Poser/Render/SvgFlatRenderSpec.php index 181c4bb..3f79d2e 100644 --- a/spec/PUGX/Poser/Render/SvgFlatRenderSpec.php +++ b/spec/PUGX/Poser/Render/SvgFlatRenderSpec.php @@ -2,17 +2,16 @@ namespace spec\PUGX\Poser\Render; -use PhpSpec\Exception\Exception; use PhpSpec\ObjectBehavior; use Prophecy\Argument; use PUGX\Poser\Badge; -use PUGX\Poser\Calculator\GDTextSizeCalculator; use PUGX\Poser\Calculator\TextSizeCalculatorInterface; class SvgFlatRenderSpec extends ObjectBehavior { - function let(TextSizeCalculatorInterface $calculator) + function let($calculator) { + $calculator->beADoubleOf('\PUGX\Poser\Calculator\TextSizeCalculatorInterface'); $calculator->calculateWidth(Argument::any())->willReturn(20); $this->beConstructedWith($calculator); } @@ -66,4 +65,4 @@ function it_should_render_a_license_mit_exactly_like_this_svg() } -} \ No newline at end of file +} diff --git a/spec/PUGX/Poser/Render/SvgFlatSquareRenderSpec.php b/spec/PUGX/Poser/Render/SvgFlatSquareRenderSpec.php index d16b007..6abc733 100644 --- a/spec/PUGX/Poser/Render/SvgFlatSquareRenderSpec.php +++ b/spec/PUGX/Poser/Render/SvgFlatSquareRenderSpec.php @@ -2,17 +2,15 @@ namespace spec\PUGX\Poser\Render; -use PhpSpec\Exception\Exception; use PhpSpec\ObjectBehavior; use Prophecy\Argument; use PUGX\Poser\Badge; -use PUGX\Poser\Calculator\GDTextSizeCalculator; -use PUGX\Poser\Calculator\TextSizeCalculatorInterface; class SvgFlatSquareRenderSpec extends ObjectBehavior { - function let(TextSizeCalculatorInterface $calculator) + function let($calculator) { + $calculator->beADoubleOf('\PUGX\Poser\Calculator\TextSizeCalculatorInterface'); $calculator->calculateWidth(Argument::any())->willReturn(20); $this->beConstructedWith($calculator); } @@ -64,6 +62,4 @@ function it_should_render_a_license_mit_exactly_like_this_svg() $badge = Badge::fromURI('license-MIT-blue.svg'); $this->render($badge)->__toString()->shouldBeLike($template); } - - } diff --git a/spec/PUGX/Poser/Render/SvgRenderSpec.php b/spec/PUGX/Poser/Render/SvgRenderSpec.php index d813024..2793036 100644 --- a/spec/PUGX/Poser/Render/SvgRenderSpec.php +++ b/spec/PUGX/Poser/Render/SvgRenderSpec.php @@ -2,16 +2,15 @@ namespace spec\PUGX\Poser\Render; -use PhpSpec\Exception\Exception; use PhpSpec\ObjectBehavior; use Prophecy\Argument; use PUGX\Poser\Badge; -use PUGX\Poser\Calculator\TextSizeCalculatorInterface; class SvgRenderSpec extends ObjectBehavior { - function let(TextSizeCalculatorInterface $calculator) + function let($calculator) { + $calculator->beADoubleOf('\PUGX\Poser\Calculator\TextSizeCalculatorInterface'); $calculator->calculateWidth(Argument::any())->willReturn(20); $this->beConstructedWith($calculator); } @@ -34,4 +33,4 @@ public function getMatchers() } ); } -} \ No newline at end of file +} diff --git a/src/Badge.php b/src/Badge.php index 8c502bd..c14845b 100644 --- a/src/Badge.php +++ b/src/Badge.php @@ -6,14 +6,14 @@ class Badge { CONST DEFAULT_FORMAT = 'svg'; private static $colorScheme = array( - "brightgreen" => "4c1", + "brightgreen" => "44cc11", "green" => "97CA00", "yellow" => "dfb317", "yellowgreen" => "a4a61d", "orange" => "fe7d37", "red" => "e05d44", "blue" => "007ec6", - "grey" => "555", + "grey" => "555555", "lightgray" => "9f9f9f" );