Вход Регистрация
Файл: gapps/vendor/hamcrest/hamcrest-php/hamcrest/Hamcrest/Collection/IsTraversableWithSize.php
Строк: 18
<?php
namespace HamcrestCollection;

/*
 Copyright (c) 2009 hamcrest.org
 */
use HamcrestFeatureMatcher;
use 
HamcrestMatcher;
use 
HamcrestUtil;

/**
 * Matches if traversable size satisfies a nested matcher.
 */
class IsTraversableWithSize extends FeatureMatcher
{

    public function 
__construct(Matcher $sizeMatcher)
    {
        
parent::__construct(
            
self::TYPE_OBJECT,
            
'Traversable',
            
$sizeMatcher,
            
'a traversable with size',
            
'traversable size'
        
);
    }

    protected function 
featureValueOf($actual)
    {
        
$size 0;
        foreach (
$actual as $value) {
            
$size++;
        }

        return 
$size;
    }

    
/**
     * Does traversable size satisfy a given matcher?
     *
     * @factory
     */
    
public static function traversableWithSize($size)
    {
        return new 
self(Util::wrapValueWithIsEqual($size));
    }
}
Онлайн: 0
Реклама