/** * @test */ public function it_is_iterable() { $coupon1 = new Coupon(); $coupon1->setCouponCode('coupon-code-1'); $this->coupons->addCoupon($coupon1); $coupon2 = new Coupon(); $coupon2->setCouponCode('coupon-code-2'); $this->coupons->addCoupon($coupon2); $this->assertSame(array('coupon-code-1' => $coupon1, 'coupon-code-2' => $coupon2), iterator_to_array($this->coupons)); }
public function deserialize($rawData, $format) { Assertion::same('json', $format, 'No other format is supported'); $coupons = json_decode($rawData, true); $dto = new Coupons(); foreach ($coupons as $couponArray) { $dto->addCoupon($this->createCouponFromArray($couponArray)); } return $dto; }