annotate vendor/phpspec/prophecy/spec/Prophecy/Argument/Token/ArrayCountTokenSpec.php @ 0:4c8ae668cc8c

Initial import (non-working)
author Chris Cannam
date Wed, 29 Nov 2017 16:09:58 +0000
parents
children
rev   line source
Chris@0 1 <?php
Chris@0 2
Chris@0 3 namespace spec\Prophecy\Argument\Token;
Chris@0 4
Chris@0 5 use PhpSpec\ObjectBehavior;
Chris@0 6
Chris@0 7 class ArrayCountTokenSpec extends ObjectBehavior
Chris@0 8 {
Chris@0 9 function let()
Chris@0 10 {
Chris@0 11 $this->beConstructedWith(2);
Chris@0 12 }
Chris@0 13
Chris@0 14 function it_implements_TokenInterface()
Chris@0 15 {
Chris@0 16 $this->shouldBeAnInstanceOf('Prophecy\Argument\Token\TokenInterface');
Chris@0 17 }
Chris@0 18
Chris@0 19 function it_is_not_last()
Chris@0 20 {
Chris@0 21 $this->shouldNotBeLast();
Chris@0 22 }
Chris@0 23
Chris@0 24 function it_scores_6_if_argument_array_has_proper_count()
Chris@0 25 {
Chris@0 26 $this->scoreArgument(array(1,2))->shouldReturn(6);
Chris@0 27 }
Chris@0 28
Chris@0 29 function it_scores_6_if_argument_countable_object_has_proper_count(\Countable $countable)
Chris@0 30 {
Chris@0 31 $countable->count()->willReturn(2);
Chris@0 32 $this->scoreArgument($countable)->shouldReturn(6);
Chris@0 33 }
Chris@0 34
Chris@0 35 function it_does_not_score_if_argument_is_neither_array_nor_countable_object()
Chris@0 36 {
Chris@0 37 $this->scoreArgument('string')->shouldBe(false);
Chris@0 38 $this->scoreArgument(5)->shouldBe(false);
Chris@0 39 $this->scoreArgument(new \stdClass)->shouldBe(false);
Chris@0 40 }
Chris@0 41
Chris@0 42 function it_does_not_score_if_argument_array_has_wrong_count()
Chris@0 43 {
Chris@0 44 $this->scoreArgument(array(1))->shouldReturn(false);
Chris@0 45 }
Chris@0 46
Chris@0 47 function it_does_not_score_if_argument_countable_object_has_wrong_count(\Countable $countable)
Chris@0 48 {
Chris@0 49 $countable->count()->willReturn(3);
Chris@0 50 $this->scoreArgument($countable)->shouldReturn(false);
Chris@0 51 }
Chris@0 52
Chris@0 53 function it_has_simple_string_representation()
Chris@0 54 {
Chris@0 55 $this->__toString()->shouldBe('count(2)');
Chris@0 56 }
Chris@0 57
Chris@0 58 }