Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
Total | |
100.00% |
1 / 1 |
|
100.00% |
2 / 2 |
CRAP | |
100.00% |
4 / 4 |
ParametersSorter | |
100.00% |
1 / 1 |
|
100.00% |
2 / 2 |
2 | |
100.00% |
4 / 4 |
__construct(SerializerInterface $serializer) | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getSortedParameters(OrderInterface $order) | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
<?php | |
/** | |
* @author Krzysztof Gzocha <krzysztof.gzocha@xsolve.pl> | |
*/ | |
namespace Team3\PayU\SignatureCalculator\ParametersSorter; | |
use Team3\PayU\Order\Model\OrderInterface; | |
use Team3\PayU\Serializer\SerializerInterface; | |
/** | |
* {@inheritdoc} | |
* | |
* Class ParametersSorter | |
* @package Team3\PayU\SignatureCalculator\ParametersSorter | |
*/ | |
class ParametersSorter implements ParametersSorterInterface | |
{ | |
/** | |
* @var SerializerInterface | |
*/ | |
private $serializer; | |
/** | |
* @param SerializerInterface $serializer | |
*/ | |
public function __construct(SerializerInterface $serializer) | |
{ | |
$this->serializer = $serializer; | |
} | |
/** | |
* Will return order serializable parameters in ascending order. | |
* | |
* @param OrderInterface $order | |
* @return array | |
*/ | |
public function getSortedParameters(OrderInterface $order) | |
{ | |
$json = $this->serializer->toJson($order); | |
return $this->serializer->fromJson($json, 'array'); | |
} | |
} |