public void CanRetrieveValidCombination()
        {
            IStyleRuleRepository     srr = new StyleRuleRepository();
            IClosetRepository        cr  = new ClosetRepository();
            IGarmentRepository       gr  = new GarmentRepository();
            IFashionFlavorRepository fr  = new FashionFlavorRepository();

            IOutfitEngineProcessor processor = new OutfitEngineProcessor(srr, cr);

            IOutfitEngineService service = new OutfitEngineService(gr, cr, processor, fr);

            IList <int> lst    = new List <int>();
            string      values = "457546,1358386,2144626,2570491";

            foreach (string val in values.Split(','))
            {
                lst.Add(Convert.ToInt32(val));
            }

            IList <int> lstFlavors = new List <int>();

            lstFlavors.Add(1);

            Assert.IsTrue(service.HasValidCombinations(lst, lstFlavors));
        }
Esempio n. 2
0
        public void CreateStyleRules()
        {
            IFashionFlavorRepository repFlavors   = new FashionFlavorRepository();
            IStyleRuleRepository     repStyleRule = new StyleRuleRepository();

            foreach (FashionFlavor fv in repFlavors.GetAll())
            {
                repStyleRule.SaveOrUpdate(CreateStyleRule(fv));
            }
        }
        public void CanCombine()
        {
            IStyleRuleRepository     srr = new StyleRuleRepository();
            IClosetRepository        cr  = new ClosetRepository();
            IGarmentRepository       gr  = new GarmentRepository();
            IFashionFlavorRepository fr  = new FashionFlavorRepository();

            IOutfitEngineProcessor processor = new OutfitEngineProcessor(srr, cr);

            IOutfitEngineService service = new OutfitEngineService(gr, cr, processor, fr);

            service.CreateOutfits(1);
        }
Esempio n. 4
0
        public static IOutfitEngineService CreateOutfitEngineService()
        {
            IStyleRuleRepository  srr = new StyleRuleRepository();
            IClosetRepository     cr  = new ClosetRepository();
            IIndexCreationService ois = new IndexCreationService(new ClosetRepository(), new ClosetOutfitRepository());
            IOutfitUpdaterService ous = new OutfitUpdaterService(new OutfitUpdaterRepository(),
                                                                 new PreCombinationRepository(), srr);

            IOutfitEngineProcessor processor = new OutfitEngineProcessor(srr, cr, ous, ois);


            IGarmentRepository       gr = new GarmentRepository();
            IFashionFlavorRepository fr = new FashionFlavorRepository();

            return(new OutfitEngineService(gr, cr, processor, fr));
        }
Esempio n. 5
0
        public void CanCreateBigClosetCombination(string values, int flavor1, int flavor2)
        {
            IClosetRepository        cr  = new ClosetRepository();
            IFashionFlavorRepository fr  = new FashionFlavorRepository();
            IBasicUserRepository     bur = new BasicUserRepository();

            IOutfitEngineService service = CreateOutfitEngineService();

            IList <int> lst = new List <int>();

            foreach (string val in values.Split(','))
            {
                lst.Add(Convert.ToInt32(val));
            }

            cr.DbContext.BeginTransaction();
            Closet c = cr.Get(2);

            foreach (int i in lst)
            {
                c.AddGarment(new MasterGarment(i));
            }
            cr.SaveOrUpdate(c);

            IList <UserFlavor> lstFlavors = new List <UserFlavor>();

            lstFlavors.Add(new UserFlavor(fr.Get(flavor1), 1));
            if (flavor2 != 0)
            {
                lstFlavors.Add(new UserFlavor(fr.Get(flavor2), 1));
            }

            c.User.SetFlavors(lstFlavors);

            bur.SaveOrUpdate(c.User);
            cr.DbContext.CommitTransaction();

            service.CreateOutfits(2);

            c = cr.Get(2);
            Assert.IsTrue(c.Outfits.Count > 0);
        }