Grouped products cannot be purchased - they are wrappers for other products.
Author: WooThemes
Inheritance: extends WC_Product
 function test_sync_parent_products_transients()
 {
     global $woocommerce_wpml, $pagenow;
     $pagenow = 'post-new.php';
     add_action('save_post', array($woocommerce_wpml->products, 'sync_post_action'), 110, 2);
     $parent_product = WCML_Helper::add_product('Parent Product EN', 'en');
     $child = array('post_title' => 'Child Product EN', 'post_status' => 'publish', 'post_parent' => $parent_product->product_id);
     $child_product = WCML_Helper::add_product($child, 'en');
     $parent_product_es = WCML_Helper::add_product('Parent Product ES', 'es', $parent_product->trid);
     $child_es = array('post_title' => 'Child Product ES', 'post_status' => 'publish', 'post_parent' => $parent_product_es->product_id);
     $child_product_es = WCML_Helper::add_product($child_es, 'es', $child_product->trid);
     $grouped_es = new WC_Product_Grouped($parent_product_es->product_id);
     $this->assertEquals(array($child_product_es->product_id), $grouped_es->get_children());
     // Setting the child status to private should reset the children list transient for translated parent
     $child = array('ID' => $child_product->product_id, 'post_title' => 'Child Product EN MADE PRIVATE', 'post_status' => 'private');
     WCML_Helper::update_product($child);
     // FORCE status on translated child - should be synced autoamtically
     $child_es = array('ID' => $child_product_es->product_id, 'post_title' => 'Child Product ES MADE PRIVATE', 'post_status' => 'private');
     WCML_Helper::update_product($child_es);
     $grouped_es = new WC_Product_Grouped($parent_product_es->product_id);
     //need to reinstantiate
     $this->assertEquals(array(), $grouped_es->get_children());
 }
Beispiel #2
0
 /**
  * Test updating an grouped product.
  *
  * @since 2.7.0
  */
 function test_grouped_product_update()
 {
     $product = WC_Helper_Product::create_grouped_product();
     $simple_product = WC_Helper_Product::create_simple_product();
     $this->assertEquals('Dummy Grouped Product', $product->get_name());
     $this->assertEquals(2, count($product->get_children()));
     $children = $product->get_children();
     $children[] = $simple_product->get_id();
     $product->set_children($children);
     $product->set_name('Dummy Grouped Product 2');
     $product->save();
     // Reread from database
     $product = new WC_Product_Grouped($product->get_id());
     $this->assertEquals(3, count($product->get_children()));
     $this->assertEquals('Dummy Grouped Product 2', $product->get_name());
 }