Вход Регистрация
Файл: src/vendor/phpspec/prophecy/spec/Prophecy/Doubler/Generator/ClassCreatorSpec.php
Строк: 44
<?php

namespace specProphecyDoublerGenerator;

use 
PhpSpecObjectBehavior;

class 
ClassCreatorSpec extends ObjectBehavior
{
    
/**
     * @param ProphecyDoublerGeneratorClassCodeGenerator $generator
     */
    
function let($generator)
    {
        
$this->beConstructedWith($generator);
    }

    
/**
     * @param ProphecyDoublerGeneratorNodeClassNode $class
     */
    
function it_evaluates_code_generated_by_ClassCodeGenerator($generator$class)
    {
        
$generator->generate('stdClass'$class)->shouldBeCalled()->willReturn(
            
'return 42;'
        
);

        
$this->create('stdClass'$class)->shouldReturn(42);
    }

    
/**
     * @param ProphecyDoublerGeneratorNodeClassNode $class
     */
    
function it_throws_an_exception_if_class_does_not_exist_after_evaluation($generator$class)
    {
        
$generator->generate('CustomClass'$class)->shouldBeCalled()->willReturn(
            
'return 42;'
        
);

        
$class->getParentClass()->willReturn('stdClass');
        
$class->getInterfaces()->willReturn(array('Interface1''Interface2'));

        
$this->shouldThrow('ProphecyExceptionDoublerClassCreatorException')
            ->
duringCreate('CustomClass'$class);
    }
}
Онлайн: 6
Реклама