Inheritance: UserActivity
コード例 #1
0
        public void CheckIfFullfiledRequirementTest_ShouldCheckListWhichAlredyContainThisMedalAndReturnEmptyMedalList()
        {
            //Arrange
            SpontaneousUserModel userModelWithMedal = new SpontaneousUserModel()
            {
                UserMedalsList = new List<UserMedal>()
            };
            userModelWithMedal.UserMedalsList.Add(new WelcomeUserMedal());
            UserActivity userActivity = new PageViewActivity("TestPage");

            //Act
            MedalRequirementsChecker medalChecker = new PlatefulMedalRequirementChecker();
            List<UserMedal> userModelWithMedalResult = medalChecker.ObtainMedalBecauseOfActivity(userModelWithMedal, userActivity);

            //Assert
            Assert.AreEqual(userModelWithMedalResult.Count, 0);
        }
コード例 #2
0
        public void CheckIfFullfiledRequirementTest_ShouldCheckListWithoutThisMedalAndRequirementForThisMedalNotAchieved_MustReturnNotEmptyMedalList()
        {
            //Arrange
            SpontaneousUserModel userModelWithOutMedal = new SpontaneousUserModel()
            {
                UserActivityList = new List<UserActivity>(),
                UserMedalsList = new List<UserMedal>()
            };
            //Requirement = 3
            //for (int i = 0; i < 2; i++)
            //{
            //    userModelWithOutMedal.UserActivityList.Add(new PageViewActivity("TestPage"));
            //}
            UserActivity userActivity = new PageViewActivity("TestPage");

            //Act
            MedalRequirementsChecker medalChecker = new PlatefulMedalRequirementChecker();
            List<UserMedal> userModelWithMedalResult = medalChecker.ObtainMedalBecauseOfActivity(userModelWithOutMedal, userActivity);

            //Assert
            Assert.AreEqual(userModelWithMedalResult.Count, 0);
        }
コード例 #3
0
        public void CheckIfFullfiledRequirementTest_ShouldCheckListWithOtherMedalAndReturnNotEmptyMedalList()
        {
            //Arrange
            SpontaneousUserModel userModelWithOtherMedal = new SpontaneousUserModel()
            {
                UserActivityList = new List<UserActivity>(),
                UserMedalsList = new List<UserMedal>()
            };
            for (int i = 0; i < 3; i++)
            {
                userModelWithOtherMedal.UserActivityList.Add(new PageViewActivity("TestPage"));
            }
            userModelWithOtherMedal.UserMedalsList.Add(new AddRestaurantMedal());
            UserActivity userActivity = new PageViewActivity("TestPage");

            //Act
            MedalRequirementsChecker medalChecker = new PlatefulMedalRequirementChecker();
            List<UserMedal> userModelWithOtherMedalResult = medalChecker.ObtainMedalBecauseOfActivity(userModelWithOtherMedal, userActivity);

            //Assert
            Assert.AreNotEqual(userModelWithOtherMedalResult.Count, 0);
        }
コード例 #4
0
ファイル: CouponsTests.cs プロジェクト: pashkov/Spontaneous
        public void GetCouponForMedal_Should_ResiveUserDataAndFindNearestCouponAccordinlyToActivityLocation()
        {
            CouponType tempCoupon1 = new CouponType()
            {
                Description = "קפה + מאפה ב15% הנחה במסעדת Nelly's Kitchen. למימוש יש להראות את המסך במסעדה. לפרטי המסעדה לחץ על המדליה",
                ValidFrom = new DateTime(0),
                ValidUntil = DateTime.UtcNow.AddHours(1),
                RestaurantsIDs = new List<string>() { "11111" },
                LocationsList = new List<Location>() { new Location(1,1) }
            };
            CouponType tempCoupon2 = new CouponType()
            {
                Description = "מנה ראשונה במתנה בהזמנת עיקרית במסעדת BG99. למימוש יש להראות את המסך במסעדה. לפרטי המסעדה לחץ על המדליה",
                ValidFrom = new DateTime(0),
                ValidUntil = DateTime.UtcNow.AddHours(1),
                RestaurantsIDs = new List<string>() { "22222" },
                LocationsList = new List<Location>() { new Location(0,0) }
            };
            CouponType tempCoupon3 = new CouponType()
            {
                Description = "קפה + מאפה ב15% הנחה במסעדתאכול כפי יכולתך רק ב89 שקל במסעדת קולומבוס",
                ValidFrom = new DateTime(0),
                ValidUntil = DateTime.UtcNow.AddHours(1),
                RestaurantsIDs = new List<string>() { "33333" },
                LocationsList = new List<Location>() { new Location(1,1) }
            };
            CouponType tempCoupon4 = new CouponType()
            {
                Description = "1+1 על כל בירה מהחבית במסעדת Red Burger Bar, כל יום עד שעה 19:00.",
                RestaurantsIDs = new List<string>() { "44444" },
                ValidFrom = DateTime.UtcNow,
                ValidUntil = new DateTime(2014, 1, 31),
                LocationsList = new List<Location>() { new Location(1,1) }
            };
            CouponType tempCoupon5 = new CouponType()
            {
                Description = "1+1 על סטייק אנטריקוט, בהזמנה מנה עיקרית ושתייה, במסעדת Red Burger Bar.",
                RestaurantsIDs = new List<string>() { "55555" },
                ValidFrom = DateTime.UtcNow,
                ValidUntil = new DateTime(2014, 1, 31),
                LocationsList = new List<Location>() { new Location(32.067141, 34.804314) }
            };
            CouponType tempCoupon6 = new CouponType()
            {
                Description = "מנת ילד חינם בהזמנה מנה עיקרית למבוגר במסעדת Palamida, ביום שישי 12:00-16:00",
                RestaurantsIDs = new List<string>() { "66666" },
                ValidFrom = DateTime.UtcNow,
                ValidUntil = new DateTime(2014, 1, 31),
                LocationsList = new List<Location>() { new Location(0, 1) }
            };
            CouponType tempCoupon7 = new CouponType()
            {
                Description = "ארוחה זוגית ב- 200 שח הארוחה כוללת: - 2 כוסות יין הבית - 2 מרק + לחם הבית - מיקס פירות ים, במסעדת Palamida.",
                RestaurantsIDs = new List<string>() { "77777" },
                ValidFrom = DateTime.UtcNow,
                ValidUntil = new DateTime(2014, 1, 31),
                LocationsList = new List<Location>() { new Location(1, 1) }
            };
            string savedCouponId1 = serviceLayer.AddCouponToDB(tempCoupon1);
            string savedCouponId2 = serviceLayer.AddCouponToDB(tempCoupon2);
            string savedCouponId3 = serviceLayer.AddCouponToDB(tempCoupon3);
            string savedCouponId4 = serviceLayer.AddCouponToDB(tempCoupon4);
            string savedCouponId5 = serviceLayer.AddCouponToDB(tempCoupon5);
            string savedCouponId6 = serviceLayer.AddCouponToDB(tempCoupon6);
            string savedCouponId7 = serviceLayer.AddCouponToDB(tempCoupon7);

            UserActivity activity1 = new PageViewActivity("test") { ActivityLocation = new Location(1, 1) };
            UserActivity activity2 = new PageViewActivity("test") { ActivityLocation = new Location(32.067141, 34.804314) };

            SpontaneousUserModel userModel = new SpontaneousUserModel()
            {
                UserMedalsList = new List<UserMedal>()
            };
            userModel.UserMedalsList.Add(new WelcomeUserMedal() { Coupon = tempCoupon1 });
            userModel.UserMedalsList.Add(new RestaurantAdviserMedal() { Coupon = tempCoupon2 });
            userModel.UserMedalsList.Add(new WelcomeUserMedal() { Coupon = tempCoupon3 });
            userModel.UserMedalsList.Add(new RestaurantAdviserMedal() { Coupon = tempCoupon4 });

            //Act
            CouponType coupon1 = serviceLayer.GetCoupon(userModel, activity1);
            CouponType coupon2 = serviceLayer.GetCoupon(userModel, activity2);

            // clean DB from temp coupons
            serviceLayer.DeleteCoupon(savedCouponId1);
            serviceLayer.DeleteCoupon(savedCouponId2);
            serviceLayer.DeleteCoupon(savedCouponId3);
            serviceLayer.DeleteCoupon(savedCouponId4);
            serviceLayer.DeleteCoupon(savedCouponId5);
            serviceLayer.DeleteCoupon(savedCouponId6);
            serviceLayer.DeleteCoupon(savedCouponId7);

            //Assert
            Assert.IsNotNull(coupon1);
            //Assert.AreNotEqual(coupon.Id, tempCoupon1.Id);

            Assert.AreNotEqual(coupon1.Id.ToString(), savedCouponId1);
            Assert.AreNotEqual(coupon1.Id.ToString(), savedCouponId2);
            Assert.AreNotEqual(coupon1.Id.ToString(), savedCouponId3);
            Assert.AreNotEqual(coupon1.Id.ToString(), savedCouponId4);
            Assert.AreNotEqual(coupon1.Id.ToString(), savedCouponId5);
            Assert.AreNotEqual(coupon1.Id.ToString(), savedCouponId6);
            Assert.AreEqual(coupon1.Id.ToString(), savedCouponId7);
            Assert.AreEqual(coupon1.Description, tempCoupon7.Description);
        }
コード例 #5
0
        public void RestaurantAdviserCheckIfFullfiledRequirementTest_ShouldCheckListWithoutThisMedalAndCalledWithWrongActivityType_MustReturnEmptyMedalList()
        {
            //Arrange
            SpontaneousUserModel userModel = new SpontaneousUserModel()
            {
                UserActivityList = new List<UserActivity>(),
                UserMedalsList = new List<UserMedal>()
            };
            UserActivity userActivity = new PageViewActivity("TestPage");

            //Act
            RestaurantAdviserChecker restaurantAdviserChecker = new RestaurantAdviserChecker();

            UserMedal userMedalResult = restaurantAdviserChecker.CheckIfFullfiledRequirement(userModel, userActivity);

            //Assert
            Assert.IsNull(userMedalResult);
        }