Code Coverage
 
Classes and Traits
Functions and Methods
Lines
Total
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
3 / 3
CRAP
100.00% covered (success)
100.00%
5 / 5
RecursiveTransformerStrategy
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
3 / 3
3
100.00% covered (success)
100.00%
5 / 5
 __construct( UserOrderTransformerInterface $transformer )
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
2 / 2
 transform( OrderInterface $order, ExtractorResult $extractorResult )
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
2 / 2
 supports($propertyName)
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
1 / 1
<?php
/**
 * @author Krzysztof Gzocha <krzysztof.gzocha@xsolve.pl>
 */
namespace Team3\PayU\Order\Transformer\UserOrder\Strategy;
use Team3\PayU\Order\Model\OrderInterface;
use Team3\PayU\Order\Transformer\UserOrder\TransformerProperties;
use Team3\PayU\PropertyExtractor\ExtractorResult;
use Team3\PayU\Order\Transformer\UserOrder\UserOrderTransformerInterface;
class RecursiveTransformerStrategy implements UserOrderTransformerStrategyInterface
{
    /**
     * @var UserOrderTransformerInterface
     */
    private $transformer;
    /**
     * @inheritdoc
     */
    public function __construct(
        UserOrderTransformerInterface $transformer
    ) {
        $this->transformer = $transformer;
    }
    /**
     * @inheritdoc
     */
    public function transform(
        OrderInterface $order,
        ExtractorResult $extractorResult
    ) {
        $this->transformer->transform($order, $extractorResult->getValue());
    }
    /**
     * @inheritdoc
     */
    public function supports($propertyName)
    {
        return TransformerProperties::RECURSIVE === $propertyName;
    }
}