Вход Регистрация
Файл: gapps/vendor/phpspec/prophecy/spec/Prophecy/Argument/Token/LogicalAndTokenSpec.php
Строк: 138
<?php

namespace specProphecyArgumentToken;

use 
PhpSpecObjectBehavior;
use 
ProphecyArgument;
use 
ProphecyArgumentTokenTokenInterface;

class 
LogicalAndTokenSpec extends ObjectBehavior
{
    function 
it_implements_TokenInterface()
    {
        
$this->beConstructedWith(array());
        
$this->shouldBeAnInstanceOf('ProphecyArgumentTokenTokenInterface');
    }

    function 
it_is_not_last()
    {
        
$this->beConstructedWith(array());
        
$this->shouldNotBeLast();
    }

    function 
it_generates_string_representation_from_all_tokens_imploded(
        
TokenInterface $token1,
        
TokenInterface $token2,
        
TokenInterface $token3
    
) {
        
$token1->__toString()->willReturn('token_1');
        
$token2->__toString()->willReturn('token_2');
        
$token3->__toString()->willReturn('token_3');

        
$this->beConstructedWith(array($token1$token2$token3));
        
$this->__toString()->shouldReturn('bool(token_1 AND token_2 AND token_3)');
    }

    function 
it_wraps_non_token_arguments_into_ExactValueToken()
    {
        
$this->beConstructedWith(array(15'1985'));
        
$this->__toString()->shouldReturn("bool(exact(15) AND exact("1985"))");
    }

    function 
it_scores_the_maximum_score_from_all_scores_returned_by_tokens(TokenInterface $token1TokenInterface $token2)
    {
        
$token1->scoreArgument(1)->willReturn(10);
        
$token2->scoreArgument(1)->willReturn(5);
        
$this->beConstructedWith(array($token1$token2));
        
$this->scoreArgument(1)->shouldReturn(10);
    }

    function 
it_does_not_score_if_there_are_no_arguments_or_tokens()
    {
        
$this->beConstructedWith(array());
        
$this->scoreArgument('any')->shouldReturn(false);
    }

    function 
it_does_not_score_if_either_of_tokens_does_not_score(TokenInterface $token1TokenInterface $token2)
    {
        
$token1->scoreArgument(1)->willReturn(10);
        
$token1->scoreArgument(2)->willReturn(false);

        
$token2->scoreArgument(1)->willReturn(false);
        
$token2->scoreArgument(2)->willReturn(10);

        
$this->beConstructedWith(array($token1$token2));

        
$this->scoreArgument(1)->shouldReturn(false);
        
$this->scoreArgument(2)->shouldReturn(false);
    }
}
Онлайн: 0
Реклама