public static IEnumerable <object[]> GetTestTotalData()
        {
            ProductCollection productCollection = new ProductCollection();

            productCollection.AddProduct(new Product("", new Price(12.5f)), 2);
            productCollection.AddProduct(new Product("", new Price(33)), 10);
            yield return(new object[] { productCollection, 355 });
        }
    //private void Rolling(float offSet, NotifyInfo info)
    //{
    //    foreach (GameObject go in Containers)
    //    {
    //        var rectTrans = go.GetComponent<RectTransform>();
    //        //var offSet = lastPos.y - currentPos.y;
    //        var curPos = new Vector3(rectTrans.localPosition.x, rectTrans.localPosition.y, rectTrans.localPosition.z);
    //        curPos.y -= offSet;
    //        if (curPos.y > 0)
    //        {
    //            curPos.y -= containerHeight * Containers.Count;
    //            //Debug.Log("Move to bottom");
    //            //var text = go.transform.Find("ProductName").GetComponent<Text>();
    //            try
    //            {
    //                int i = pc.GetCount(currentCate) + (int)(info.RollingDis / containerHeight) - Containers.Count - 1;

    //                //go.GetComponent<GreenDexContainer>().PIUpdate(pc.GetProduct(i));
    //                go.GetComponent<GreenDexContainer>().PIUpdate(pc.GetProduct(i, currentCate));
    //            }
    //            catch (System.Exception ex)
    //            {
    //                Debug.Log(totalDisRollingDis);
    //                Debug.Log(ex.StackTrace);
    //            }
    //        }
    //        if (curPos.y < -Containers.Count * containerHeight)
    //        {
    //            curPos.y += Containers.Count * containerHeight;
    //            try
    //            {
    //                int i = pc.GetCount(currentCate) - (int)(-info.RollingDis / containerHeight) /*- Containers.Count*/ - 1;
    //                //go.GetComponent<GreenDexContainer>().PIUpdate(pc.GetProduct(i);
    //                go.GetComponent<GreenDexContainer>().PIUpdate(pc.GetProduct(i, currentCate));
    //            }
    //            catch (System.Exception ex)
    //            {
    //                Debug.Log(totalDisRollingDis);
    //                Debug.Log(ex.StackTrace);
    //            }
    //        }
    //        rectTrans.localPosition = curPos;
    //    }
    //}

    /// <summary>
    /// * Add Scanned product to PC(Product Collection)
    /// </summary>
    /// <param name="name">prodcut name</param>
    /// <param name="pos">location where the product is scanned</param>
    public void PCAdd(string name, string pos)
    {
        pc.AddProduct(name, pos);
    }