Example #1
0
        public void CreateProductVariationErrorTest()
        {
            List <string> errors         = new List <string>(); // TODO: Initialize to an appropriate value
            List <string> errorsExpected = new List <string>(); // TODO: Initialize to an appropriate value

            BLProductVariation.CreatePV(null, ref errors);
            AsynchLog.LogNow(errors);

            Assert.AreEqual(1, errors.Count);

            errors = new List <string>(); // TODO: Initialize to an appropriate value
            int    invalid_pv_id              = BLProductVariation.ReadAllPV(ref errors).Count + 1;
            int    invalid_product_id         = BLProduct.ReadAllProduct(ref errors).Count + 1;
            int    invalid_brand_id           = BLBrand.ReadAllBrand(ref errors).Count + 1;
            int    invalid_product_color_id   = BLProductColor.ReadAllProductColor(ref errors).Count + 1;
            int    invalid_product_cutting_id = BLProductCutting.ReadAllProductCutting(ref errors).Count + 1;
            char   invalid_sex             = 'Q';
            string invalid_size            = "huge";
            int    invalid_stock           = -1;
            int    invalid_price           = -1;
            char   invalid_condition       = 'f';
            int    invalid_product_type_id = BLProductType.ReadAllProductType(ref errors).Count + 1;

            ProductVariationInfo ipv = new ProductVariationInfo(invalid_pv_id, invalid_product_id, invalid_brand_id, invalid_product_cutting_id, invalid_product_color_id,
                                                                invalid_product_type_id, invalid_sex, invalid_size, invalid_stock, invalid_price, invalid_condition);


            BLProductVariation.CreatePV(ipv, ref errors);
            Assert.AreEqual(8, errors.Count);
            AsynchLog.LogNow(errors);
        }
Example #2
0
        public void CreatePVTest()
        {
            char gender    = 'M';
            char condition = 'a';

            ProductVariationInfo ProductVariationInfo = new ProductVariationInfo(1, 1, 1, 1, 1, 1, gender, "L", 1, (float)1.0, condition); // TODO: Initialize to an appropriate value
            List <string>        errors         = new List <string>();                                                                     // TODO: Initialize to an appropriate value
            List <string>        errorsExpected = new List <string>();                                                                     // TODO: Initialize to an appropriate value
            int result = BLProductVariation.CreatePV(ProductVariationInfo, ref errors);

            Assert.AreNotEqual(result, -1);
            AsynchLog.LogNow(errors);

            ProductVariationInfo pv = BLProductVariation.ReadPV(result, ref errors);

            AsynchLog.LogNow(errors);

            Assert.AreEqual(pv.product_id, ProductVariationInfo.product_id);
            Assert.AreEqual(pv.product_brand_id, ProductVariationInfo.product_brand_id);
            Assert.AreEqual(pv.product_cutting_id, ProductVariationInfo.product_cutting_id);
            Assert.AreEqual(pv.product_color_id, ProductVariationInfo.product_color_id);
            Assert.AreEqual(pv.product_type_id, ProductVariationInfo.product_type_id);
            Assert.AreEqual(pv.sex, ProductVariationInfo.sex);
            Assert.AreEqual(pv.size, ProductVariationInfo.size);
            Assert.AreEqual(pv.stock, ProductVariationInfo.stock);
            Assert.AreEqual(pv.price, ProductVariationInfo.price);
            Assert.AreEqual(pv.condition, ProductVariationInfo.condition);
            Assert.AreEqual(0, errors.Count);
        }
Example #3
0
        public void UpdateProductVariationInfoTest()
        {
            char gender    = 'M';
            char condition = 'a';

            ProductVariationInfo ProductVariationInfo = new ProductVariationInfo(1, 2, 2, 2, 2, 2, gender, "L", 2, (float)1.0, condition); // TODO: Initialize to an appropriate value
            List <string>        errors         = new List <string>();                                                                     // TODO: Initialize to an appropriate value
            List <string>        errorsExpected = new List <string>();                                                                     // TODO: Initialize to an appropriate value
            int result = BLProductVariation.UpdatePV(ProductVariationInfo, ref errors);

            AsynchLog.LogNow(errors);
            ProductVariationInfo pv = BLProductVariation.ReadPV(result, ref errors);

            AsynchLog.LogNow(errors);

            Assert.AreEqual(1, result);
            Assert.AreEqual(pv.product_variation_id, 1);
            Assert.AreEqual(pv.product_id, 2);
            Assert.AreEqual(pv.product_brand_id, 2);
            Assert.AreEqual(pv.product_cutting_id, 2);
            Assert.AreEqual(pv.product_color_id, 2);
            Assert.AreEqual(pv.product_type_id, 2);
            Assert.AreEqual(pv.sex, gender);
            Assert.AreEqual(pv.size, "L");
            Assert.AreEqual(pv.stock, 2);
            Assert.AreEqual(pv.price, (float)1.0);
            Assert.AreEqual(pv.condition, condition);
        }
Example #4
0
        public void DeleteProductVariationInfoTest()
        {
            List <string> errors = new List <string>(); // TODO: Initialize to an appropriate value

            //create a new pv
            ProductVariationInfo ProductVariationInfo = new ProductVariationInfo(1, 2, 3, 4, 5, 2, 'M', "XL", 1, (float)10.0, 'a');
            int id = DALProductVariationInfo.CreatePV(ProductVariationInfo, ref errors);

            Assert.AreEqual(0, errors.Count);
            Assert.AreNotEqual(-1, id);

            ProductVariationInfo pv = DALProductVariationInfo.ReadPVDetail(id, ref errors);

            Assert.AreEqual(pv.product_id, 5);
            Assert.AreEqual(pv.product_brand_id, 3);
            Assert.AreEqual(pv.product_cutting_id, 4);
            Assert.AreEqual(pv.product_color_id, 5);
            Assert.AreEqual(pv.product_type_id, 2);
            Assert.AreEqual(pv.sex, 'M');
            Assert.AreEqual(pv.size, "XL");
            Assert.AreEqual(pv.stock, 1);
            Assert.AreEqual(pv.price, 10.0F);
            Assert.AreEqual(pv.condition, 'a');

            List <string> errorsExpected = new List <string>(); // TODO: Initialize to an appropriate value
            int           expected       = 1;                   // TODO: Initialize to an appropriate value
            int           actual;

            actual = DALProductVariationInfo.DeleteProductVariationInfo(id, ref errors);
            pv     = DALProductVariationInfo.ReadPVDetail(id, ref errors);
            Assert.AreEqual(expected, actual);
            Assert.AreEqual('d', pv.condition);
        }
Example #5
0
        public static int UpdatePV(ProductVariationInfo productVariation, ref List <string> errors)
        {
            if (productVariation == null)
            {
                errors.Add("Product Variation cannot be null");
            }

            else if (productVariation.product_variation_id <= 0 || productVariation.product_variation_id > DALProductVariationInfo.ReadPVList(ref errors).Count)
            {
                errors.Add("Invalid product variation id");
            }

            else if (productVariation.product_id <= 0 || productVariation.product_id > DALProduct.ReadProductList(ref errors).Count)
            {
                errors.Add("Invalid product_id");
            }

            else if (productVariation.product_brand_id <= 0 || productVariation.product_brand_id > DALBrand.ReadBrandList(ref errors).Count)
            {
                errors.Add("Invalid product_brand_d");
            }
            else if (productVariation.product_cutting_id <= 0 || productVariation.product_cutting_id > DALProductCutting.ReadProductCuttingList(ref errors).Count)
            {
                errors.Add("Invalid product_cutting_id");
            }
            else if (productVariation.product_color_id <= 0 || productVariation.product_color_id > DALProductColor.ReadProductColorList(ref errors).Count)
            {
                errors.Add("Invalid product_color_id");
            }
            else if (productVariation.sex != 'F' && productVariation.sex != 'M' && productVariation.sex != 'U')
            {
                errors.Add("Invalid sex");
            }
            else if (productVariation.size != "XS" && productVariation.size != "S" && productVariation.size != "M" && productVariation.size != "L" && productVariation.size != "XL" && productVariation.size != "XXL")
            {
                errors.Add("Invalid size");
            }
            else if (productVariation.stock < 0)
            {
                errors.Add("Invalid stock");
            }
            else if (productVariation.price < 0)
            {
                errors.Add("Invalid price");
            }
            else if (productVariation.condition != 'a' && productVariation.condition != 's' && productVariation.condition != 'd')
            {
                errors.Add("Invalid condition");
            }

            if (errors.Count > 0)
            {
                return(-1);
            }

            return(DALProductVariationInfo.UpdateProductVariationInfo(productVariation, ref errors));
        }
        public static List <ProductVariationInfo> ReadPVList(char condition, ref List <string> errors)
        {
            SqlConnection               conn   = new SqlConnection(connection_string);
            ProductVariationInfo        pv     = null;
            List <ProductVariationInfo> pvList = new List <ProductVariationInfo>();

            try
            {
                string strSQL = "read_all_pv_condition";

                SqlDataAdapter mySA = new SqlDataAdapter(strSQL, conn);
                mySA.SelectCommand.CommandType = CommandType.StoredProcedure;

                mySA.SelectCommand.Parameters.Add(new SqlParameter("@condition", SqlDbType.Char));

                mySA.SelectCommand.Parameters["@condition"].Value = condition;

                DataSet myDS = new DataSet();
                mySA.Fill(myDS);

                if (myDS.Tables[0].Rows.Count == 0)
                {
                    return(null);
                }

                for (int i = 0; i < myDS.Tables[0].Rows.Count; i++)
                {
                    pv = new ProductVariationInfo(int.Parse(myDS.Tables[0].Rows[i]["product_variation_id"].ToString()),
                                                  int.Parse(myDS.Tables[0].Rows[i]["product_id"].ToString()),
                                                  int.Parse(myDS.Tables[0].Rows[i]["product_brand_id"].ToString()),
                                                  int.Parse(myDS.Tables[0].Rows[i]["product_cutting_id"].ToString()),
                                                  int.Parse(myDS.Tables[0].Rows[i]["product_color_id"].ToString()),
                                                  int.Parse(myDS.Tables[0].Rows[i]["product_type_id"].ToString()),
                                                  char.Parse(myDS.Tables[0].Rows[i]["sex"].ToString()),
                                                  myDS.Tables[0].Rows[i]["size"].ToString(),
                                                  int.Parse(myDS.Tables[0].Rows[i]["stock"].ToString()),
                                                  float.Parse(myDS.Tables[0].Rows[i]["price"].ToString()),
                                                  char.Parse(myDS.Tables[0].Rows[i]["condition"].ToString()));
                    pvList.Add(pv);
                }
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.Write("THIS IS THE ERROR: " + e.ToString());
                errors.Add("Error: " + e.ToString());
            }
            finally
            {
                conn.Dispose();
                conn = null;
            }

            return(pvList);
        }
Example #7
0
        public static int CreatePV(ProductVariationInfo productVariation, ref List <string> errors)
        {
            if (productVariation == null)
            {
                errors.Add("Product Variation cannot be null");
                return(-1);
            }
            System.Diagnostics.Debug.WriteLine("THIS IS THE PID:" + productVariation.product_id);
            if (productVariation.product_id <= 0 || productVariation.product_id > DALProduct.ReadProductList(ref errors).Count)
            {
                errors.Add("Invalid product_id");
            }

            if (productVariation.product_brand_id <= 0 || productVariation.product_brand_id > DALBrand.ReadBrandList(ref errors).Count)
            {
                errors.Add("Invalid product_brand_id");
            }
            if (productVariation.product_cutting_id <= 0 || productVariation.product_cutting_id > DALProductCutting.ReadProductCuttingList(ref errors).Count)
            {
                errors.Add("Invalid product_cutting_id");
            }
            if (productVariation.product_color_id <= 0 || productVariation.product_color_id > DALProductColor.ReadProductColorList(ref errors).Count)
            {
                errors.Add("Invalid product_color_id");
            }
            if (productVariation.sex != 'F' && productVariation.sex != 'M' && productVariation.sex != 'U')
            {
                errors.Add("Invalid sex");
            }
            if (productVariation.size != "XS" && productVariation.size != "S" && productVariation.size != "M" && productVariation.size != "L" && productVariation.size != "XL" && productVariation.size != "XXL")
            {
                errors.Add("Invalid size");
            }
            if (productVariation.stock < 0)
            {
                errors.Add("Invalid stock");
            }
            if (productVariation.price < 0)
            {
                errors.Add("Invalid price");
            }
            if (productVariation.condition != 'a' && productVariation.condition != 's' && productVariation.condition != 'd')
            {
                errors.Add("Invalid condition");
            }

            if (errors.Count > 0)
            {
                return(-1);
            }

            return(DALProductVariationInfo.CreatePV(productVariation, ref errors));
        }
        public static int CreatePV(ProductVariationInfo ProductVariationInfo, ref List <string> errors)
        {
            SqlConnection conn = new SqlConnection(connection_string);

            try
            {
                string strSQL = "create_pv";

                SqlDataAdapter mySA = new SqlDataAdapter(strSQL, conn);
                mySA.SelectCommand.CommandType = CommandType.StoredProcedure;
                mySA.SelectCommand.Parameters.Add(new SqlParameter("@product_id", SqlDbType.Int));
                mySA.SelectCommand.Parameters.Add(new SqlParameter("@product_brand_id", SqlDbType.Int));
                mySA.SelectCommand.Parameters.Add(new SqlParameter("@product_cutting_id", SqlDbType.Int));
                mySA.SelectCommand.Parameters.Add(new SqlParameter("@product_color_id", SqlDbType.Int));
                mySA.SelectCommand.Parameters.Add(new SqlParameter("@product_type_id", SqlDbType.Int));
                mySA.SelectCommand.Parameters.Add(new SqlParameter("@sex", SqlDbType.Char));
                mySA.SelectCommand.Parameters.Add(new SqlParameter("@size", SqlDbType.Char));
                mySA.SelectCommand.Parameters.Add(new SqlParameter("@stock", SqlDbType.Int));
                mySA.SelectCommand.Parameters.Add(new SqlParameter("@price", SqlDbType.Float));
                mySA.SelectCommand.Parameters.Add(new SqlParameter("@condition", SqlDbType.Char));

                SqlParameter pvIdParmOut = new SqlParameter("@product_variation_id_output", SqlDbType.Int);
                pvIdParmOut.Direction = ParameterDirection.Output;
                mySA.SelectCommand.Parameters.Add(pvIdParmOut);

                mySA.SelectCommand.Parameters["@product_id"].Value         = ProductVariationInfo.product_id;
                mySA.SelectCommand.Parameters["@product_brand_id"].Value   = ProductVariationInfo.product_brand_id;
                mySA.SelectCommand.Parameters["@product_cutting_id"].Value = ProductVariationInfo.product_cutting_id;
                mySA.SelectCommand.Parameters["@product_color_id"].Value   = ProductVariationInfo.product_color_id;
                mySA.SelectCommand.Parameters["@product_type_id"].Value    = ProductVariationInfo.product_type_id;
                mySA.SelectCommand.Parameters["@sex"].Value       = ProductVariationInfo.sex;
                mySA.SelectCommand.Parameters["@size"].Value      = ProductVariationInfo.size;
                mySA.SelectCommand.Parameters["@stock"].Value     = ProductVariationInfo.stock;
                mySA.SelectCommand.Parameters["@price"].Value     = ProductVariationInfo.price;
                mySA.SelectCommand.Parameters["@condition"].Value = ProductVariationInfo.condition;

                DataSet myDS = new DataSet();
                mySA.Fill(myDS);
                return((int)pvIdParmOut.Value);
            }

            catch (Exception e)
            {
                System.Diagnostics.Debug.Write("THIS IS THE ERROR: " + e.ToString());
                errors.Add("Error: " + e.ToString());
                return(-1);
            }
            finally
            {
                conn.Dispose();
                conn = null;
            }
        }
        public static ProductVariationInfo ReadPVDetail(int product_variation_id, ref List <string> errors)
        {
            SqlConnection        conn = new SqlConnection(connection_string);
            ProductVariationInfo pv   = null;

            try
            {
                string strSQL = "read_pv";

                SqlDataAdapter mySA = new SqlDataAdapter(strSQL, conn);
                mySA.SelectCommand.CommandType = CommandType.StoredProcedure;
                mySA.SelectCommand.Parameters.Add(new SqlParameter("@product_variation_id", SqlDbType.Int));

                mySA.SelectCommand.Parameters["@product_variation_id"].Value = product_variation_id;

                DataSet myDS = new DataSet();
                mySA.Fill(myDS);

                if (myDS.Tables[0].Rows.Count == 0)
                {
                    System.Diagnostics.Debug.WriteLine("REACHED");
                    return(null);
                }

                pv = new ProductVariationInfo(int.Parse(myDS.Tables[0].Rows[0]["product_variation_id"].ToString()),
                                              int.Parse(myDS.Tables[0].Rows[0]["product_id"].ToString()),
                                              int.Parse(myDS.Tables[0].Rows[0]["product_brand_id"].ToString()),
                                              int.Parse(myDS.Tables[0].Rows[0]["product_cutting_id"].ToString()),
                                              int.Parse(myDS.Tables[0].Rows[0]["product_color_id"].ToString()),
                                              int.Parse(myDS.Tables[0].Rows[0]["product_type_id"].ToString()),
                                              char.Parse(myDS.Tables[0].Rows[0]["sex"].ToString()),
                                              myDS.Tables[0].Rows[0]["size"].ToString().Replace(" ", ""),
                                              int.Parse(myDS.Tables[0].Rows[0]["stock"].ToString()),
                                              float.Parse(myDS.Tables[0].Rows[0]["price"].ToString()),
                                              char.Parse(myDS.Tables[0].Rows[0]["condition"].ToString()));
            }
            catch (Exception e)
            {
                errors.Add("Error: " + e.ToString());
                System.Diagnostics.Debug.WriteLine("THIS IS THE ERROR:" + e);
            }
            finally
            {
                conn.Dispose();
                conn = null;
            }

            return(pv);
        }
Example #10
0
        public void ProductVariationUpdateErrorTest()
        {
            List <string> errors        = new List <string>(); // TODO: Initialize to an appropriate value
            int           invalid_pv_id = BLProductVariation.ReadAllPV(ref errors).Count + 1;

            char gender    = 'M';
            char condition = 'a';

            ProductVariationInfo ProductVariationInfo1 = new ProductVariationInfo(invalid_pv_id, 2, 2, 2, 2, 2, gender, "L", 2, (float)1.0, condition); // TODO: Initialize to an appropriate value

            ProductVariationInfo ProductVariationInfo2 = new ProductVariationInfo(-1, 2, 2, 2, 2, 2, gender, "L", 2, (float)1.0, condition);            // TODO: Initialize to an appropriate value

            BLProductVariation.UpdatePV(ProductVariationInfo1, ref errors);
            Assert.AreEqual(1, errors.Count);
            BLProductVariation.UpdatePV(ProductVariationInfo2, ref errors);
            Assert.AreEqual(2, errors.Count);
            AsynchLog.LogNow(errors);
        }
Example #11
0
        public void DeleteProductVariationInfoTest()
        {
            char gender    = 'M';
            char condition = 'a';

            List <string>        errors               = new List <string>();                                                               // TODO: Initialize to an appropriate value
            List <string>        errorsExpected       = new List <string>();                                                               // TODO: Initialize to an appropriate value
            ProductVariationInfo ProductVariationInfo = new ProductVariationInfo(1, 1, 1, 1, 1, 1, gender, "L", 1, (float)1.0, condition); // TODO: Initialize to an appropriate value
            int result = BLProductVariation.CreatePV(ProductVariationInfo, ref errors);

            AsynchLog.LogNow(errors);
            int t = BLProductVariation.DeletePV(result, ref errors);

            AsynchLog.LogNow(errors);

            ProductVariationInfo pv = BLProductVariation.ReadPV(result, ref errors);

            AsynchLog.LogNow(errors);
            Assert.AreEqual('d', pv.condition);
        }
Example #12
0
        public void ProductVariationDeleteErrorTest()
        {
            List <string> errors = new List <string>(); // TODO: Initialize to an appropriate value
            //int invalid_pv_id = BLProductVariation.ReadAllPV(ref errors).Count + 1;

            //create PV, should have no errors
            char gender    = 'M';
            char condition = 'a';
            ProductVariationInfo ProductVariationInfo = new ProductVariationInfo(1, 1, 1, 1, 1, 1, gender, "L", 1, (float)1.0, condition);
            int id_created = BLProductVariation.CreatePV(ProductVariationInfo, ref errors);

            Assert.AreEqual(0, errors.Count);
            Console.WriteLine("id: " + id_created);
            //should delete without error
            BLProductVariation.DeletePV(id_created, ref errors);
            Assert.AreEqual(0, errors.Count);


            //BLProductVariation.DeletePV(invalid_pv_id, ref errors);
            Assert.AreEqual(0, errors.Count);
            BLProductVariation.DeletePV(-1, ref errors);
            Assert.AreEqual(1, errors.Count);
            AsynchLog.LogNow(errors);
        }
 public int UpdatePV(ProductVariationInfo ProductVariation, ref List <string> errors)
 {
     return(BLProductVariation.UpdatePV(ProductVariation, ref errors));
 }