function testVariant() { $decoder = new XmlDecoder(); $variant = $decoder->decodeVariant($this->getXml()->variant[0]); $this->assertEquals('3vbdae456tc0', $variant->getUid()); $this->assertEquals('CB19604108-BLACK-E75', $variant->getCode()); $this->assertEquals('75E', $variant->getName()); $this->assertEquals(new \DateTime('2016-03-21 15:17:29'), $variant->getUpdated()); $this->assertEquals(Availability::IN_STOCK, $variant->getAvailability()->getCode()); $this->assertEquals(0, $variant->getAvailability()->getHours()); $this->assertEquals(1, $variant->getAvailability()->getQuantity()); $this->assertEquals('ihned k odeslání', $variant->getAvailability()->getText()); $this->assertEquals('1ldzlxumqjwk', $variant->getImages()[0]->getUid()); $this->assertEquals('https://cdn.shopapi.cz/img/orig/c/7/b9/c7b955ce143370c5e9895ef9ab2d5c76.jpg', $variant->getImages()[0]->getUrl()); $this->assertEquals(420, $variant->getPrice()); $this->assertEquals(635, $variant->getPriceRetail()); $this->assertEquals('b9i9ssr4lxk4', $variant->getAttributes()[0]->getAttribute()->getUid()); $this->assertEquals('Barva', $variant->getAttributes()[0]->getAttribute()->getName()); $this->assertEquals(['bílá', 'modrá', 'ocelová'], $variant->getAttributes()[0]->getValues()); }