public function testToArray()
 {
     $collection = new AttributeCollection();
     $attribute1 = new Attribute('name1', 'value1');
     $collection->add($attribute1);
     $attribute2 = new Attribute('name2', 'value2');
     $collection->add($attribute2);
     $expected = ['name1' => 'value1', 'name2' => 'value2'];
     $this->assertEquals($expected, $collection->toArray());
 }
 public function testToArray()
 {
     $productData = new AttributeCollection();
     $productAttribute1 = new Attribute('attribute_one', 'value_one');
     $productAttribute2 = new Attribute('attribute_two', 'value_two');
     $productData->add($productAttribute1);
     $productData->add($productAttribute2);
     $product = new Product();
     $product->setSellerSku('MOB123456');
     $product->setProductData($productData);
     $product->setParentSku('ABC998877');
     $product->setStatus(StatusEnum::ACTIVE());
     $product->setName('Product Name');
     $product->setVariation('VariationX');
     $product->setPrimaryCategory(1);
     $product->setCategories('1,2,3');
     $product->setDescription('Product description goes here...');
     $product->setBrand('Major Brand');
     $product->setPrice(129.99);
     $product->setSalePrice(99.98999999999999);
     $product->setSaleStartDate(\DateTime::createFromFormat('Y-m-d H:i:s', '2015-01-01 10:00:00'));
     $product->setSaleEndDate(\DateTime::createFromFormat('Y-m-d H:i:s', '2015-01-10 23:59:59'));
     $product->setTaxClass(TaxClassEnum::DEFAULT_CLASS());
     $product->setShipmentType(ShipmentTypeEnum::DROPSHIPPING());
     $product->setProductId('78900112233');
     $product->setCondition(ConditionEnum::NEW_PRODUCT());
     $product->setQuantity(1);
     $product->setShopSku('12345SHOP');
     $product->setBrowseNodes('browse_nodes');
     $expected = ['SellerSku' => 'MOB123456', 'ParentSku' => 'ABC998877', 'Status' => 'active', 'Name' => 'Product Name', 'Variation' => 'VariationX', 'PrimaryCategory' => '1', 'Categories' => '1,2,3', 'Description' => 'Product description goes here...', 'Brand' => 'Major Brand', 'Price' => '129.99', 'SalePrice' => '99.99', 'SaleStartDate' => '2015-01-01T10:00:00+0000', 'SaleEndDate' => '2015-01-10T23:59:59+0000', 'TaxClass' => 'default', 'ShipmentType' => 'dropshipping', 'ProductId' => '78900112233', 'Condition' => 'new', 'ProductData' => ['attribute_one' => 'value_one', 'attribute_two' => 'value_two'], 'Quantity' => 1, 'ShopSku' => '12345SHOP', 'BrowseNodes' => 'browse_nodes'];
     $this->assertEquals($expected, $product->toArray());
 }