Example #1
0
        public void CanSetChatCallWithCorrectRating()
        {
            var autoRating = new ContactAutoRating();

            var contactToAutorate = new Contact
            {
                Id       = 1,
                LeadType = "Chat",
            };

            autoRating.SetAutoRating(contactToAutorate);
            Assert.AreEqual(5, contactToAutorate.AutoRatingScore);
        }
        public ActionResult SetAutoRating()
        {
            var contactAutoRating = new ContactAutoRating();
            var contactRepository = new Repository <Contact>(db => context.Lead, context);

            foreach (var contact in contactRepository.Where(c => c.Property.All(cp => cp.Type != "AutoRatingScore")).Take(100))
            {
                contactAutoRating.SetAutoRating(contact);
            }
            contactRepository.SaveChanges();
            var autoRatingInDb = contactRepository.Where(c => c.Property.Any(cp => cp.Type == "AutoRatingScore")).Count();

            return(Content("Ok, number of auto rating so far:" + autoRatingInDb, "application/json"));
        }
Example #3
0
        public void PhoneCallWithStatusInvalidSetDefaultRating()
        {
            var autoRating = new ContactAutoRating();

            var contactToAutorate = new Contact
            {
                Id       = 1,
                LeadType = "Phone",
            };

            autoRating.SetAutoRating(contactToAutorate);
            Assert.AreEqual(2, contactToAutorate.AutoRatingScore);

            contactToAutorate.SetPropertyValue("Status", "busy");
            autoRating.SetAutoRating(contactToAutorate);
            Assert.AreEqual(1, contactToAutorate.AutoRatingScore);
        }
Example #4
0
        public void CanSetPhoneCallWithCorrectRating()
        {
            var autoRating = new ContactAutoRating();

            var contactToAutorate = new Contact
            {
                Id       = 1,
                LeadType = "Phone",
            };

            contactToAutorate.Property.Add(new ContactProperty("Status", "completed"));
            autoRating.SetAutoRating(contactToAutorate);
            Assert.AreEqual(2, contactToAutorate.AutoRatingScore);

            contactToAutorate.SetPropertyValue("Duration", "10");
            autoRating.SetAutoRating(contactToAutorate);
            Assert.AreEqual(1, contactToAutorate.AutoRatingScore);

            contactToAutorate.SetPropertyValue("Duration", "30");
            autoRating.SetAutoRating(contactToAutorate);
            Assert.AreEqual(2, contactToAutorate.AutoRatingScore);

            contactToAutorate.SetPropertyValue("Duration", "90");
            autoRating.SetAutoRating(contactToAutorate);
            Assert.AreEqual(3, contactToAutorate.AutoRatingScore);

            contactToAutorate.SetPropertyValue("Duration", "180");
            autoRating.SetAutoRating(contactToAutorate);
            Assert.AreEqual(4, contactToAutorate.AutoRatingScore);

            contactToAutorate.SetPropertyValue("Duration", "300");
            autoRating.SetAutoRating(contactToAutorate);
            Assert.AreEqual(5, contactToAutorate.AutoRatingScore);

            contactToAutorate.SetPropertyValue("Duration", "500");
            autoRating.SetAutoRating(contactToAutorate);
            Assert.AreEqual(5, contactToAutorate.AutoRatingScore);
        }
Example #5
0
 public void CanCreate()
 {
     var autoRating = new ContactAutoRating();
 }