예제 #1
0
        public void CreatePhoneOrderEmptyInput()
        {
            PhoneOrderService phoneOrderService           = new PhoneOrderService();
            PhoneOrderEntity  phoneOrderEntityFromFactory = new PhoneOrderEntity();
            MemoryStream      ms = new MemoryStream();
            StreamWriter      sw = new StreamWriter(ms);
            String            response;

            Mock <PhoneOrderRepository> mockPhoneOrderRepository = mockFactory.CreateMock <PhoneOrderRepository>();

            mockPhoneOrderRepository.Expects.One.Method(x => x.InsertPhoneOrder(null)).WithAnyArguments();
            phoneOrderService.SetPrivateField("phoneOrderRepository", mockPhoneOrderRepository.MockObject);
            Mock <PhoneOrderEntityFactory> mockPhoneOrderEntityFactory = mockFactory.CreateMock <PhoneOrderEntityFactory>();

            mockPhoneOrderEntityFactory.Expects.One.Method(y => y.GetInstance()).WillReturn(phoneOrderEntityFromFactory);
            phoneOrderService.SetPrivateField("phoneOrderEntityFactory", mockPhoneOrderEntityFactory.MockObject);

            sw.Write(".");
            sw.Flush();
            ms.Position = 0;
            response    = phoneOrderService.CreatePhoneOrder(ms);

            sw.Close();
            ms.Close();

            Assert.AreEqual("{\"result\":\"Done\",\"count\":0,\"orders\":null}", response);
        }
예제 #2
0
        public void PlacedOn()
        {
            var      p            = new PhoneOrderEntity();
            DateTime initialValue = DateTime.UtcNow;

            p.PlacedOn = initialValue;

            Assert.AreEqual(initialValue, p.PlacedOn);
        }
예제 #3
0
        public void Status()
        {
            var p = new PhoneOrderEntity();
            const PhoneOrderEntity.ApprovalStatus initialValue = PhoneOrderEntity.ApprovalStatus.Open;

            p.Status = initialValue;

            Assert.AreEqual(initialValue, p.Status);
        }
예제 #4
0
        public void Id()
        {
            var  p            = new PhoneOrderEntity();
            Guid initialValue = Guid.NewGuid();

            p.Id = initialValue;

            Assert.AreEqual(initialValue, p.Id);
        }
예제 #5
0
        public void Phone()
        {
            var          p            = new PhoneOrderEntity();
            const String initialValue = "909-555-5555";

            p.Phone = initialValue;

            Assert.AreEqual(initialValue, p.Phone);
        }
예제 #6
0
        public void ZipCode()
        {
            var          p            = new PhoneOrderEntity();
            const UInt32 initialValue = 19773;

            p.Zipcode = initialValue;

            Assert.AreEqual(initialValue, p.Zipcode);
        }
예제 #7
0
        public void City()
        {
            var          p            = new PhoneOrderEntity();
            const String initialValue = "San Dimas";

            p.City = initialValue;

            Assert.AreEqual(initialValue, p.City);
        }
예제 #8
0
        public void Street()
        {
            var          p            = new PhoneOrderEntity();
            const String initialValue = "555 Fun Street";

            p.Street = initialValue;

            Assert.AreEqual(initialValue, p.Street);
        }
예제 #9
0
        public void LastName()
        {
            var          p            = new PhoneOrderEntity();
            const String initialValue = "Test";

            p.LastName = initialValue;

            Assert.AreEqual(initialValue, p.LastName);
        }
예제 #10
0
        public virtual bool UpdateStatus(ChangeStatusRequestDTO request)
        {
            IQueryable <PhoneOrderEntity> orders = PhoneOrders.Where(x => x.Id == request.Id);

            if (orders.Count() != 1)
            {
                return(false);
            }
            PhoneOrderEntity order = orders.First();

            order.Status = request.Status;
            PhoneOrders.Update(order);
            return(true);
        }
예제 #11
0
        public String CreateDefaultOrder()
        {
            ResponseDTO responseDTO = new ResponseDTO();

            phoneOrderEntityFactory.GenerateId();
            phoneOrderEntityFactory.SetName("John", "Smith");
            phoneOrderEntityFactory.SetStreet("356 Rosewood");
            phoneOrderEntityFactory.SetCity("Happyville");
            phoneOrderEntityFactory.SetZipcode(31415);
            phoneOrderEntityFactory.SetPhoneNumber("555-5555");
            phoneOrderEntityFactory.SetStatus(PhoneOrderEntity.ApprovalStatus.Open);
            phoneOrderEntityFactory.SetPlacedOnDate(DateTime.Now);
            PhoneOrderEntity defaultOrder = phoneOrderEntityFactory.GetInstance();

            phoneOrderRepository.InsertPhoneOrder(defaultOrder);

            responseDTO.Result = "Done";

            return(JsonConvert.SerializeObject(responseDTO));
        }
예제 #12
0
        public void UpdateOrderStatusFailed()
        {
            PhoneOrderService phoneOrderService           = new PhoneOrderService();
            PhoneOrderEntity  phoneOrderEntityFromFactory = new PhoneOrderEntity();
            MemoryStream      ms = new MemoryStream();
            StreamWriter      sw = new StreamWriter(ms);
            String            response;

            Mock <PhoneOrderRepository> mockPhoneOrderRepository = mockFactory.CreateMock <PhoneOrderRepository>();

            mockPhoneOrderRepository.Expects.One.Method(x => x.UpdateStatus(null)).WithAnyArguments().WillReturn(false);
            phoneOrderService.SetPrivateField("phoneOrderRepository", mockPhoneOrderRepository.MockObject);

            sw.Write("{\"status\":1, \"id\":\"00000000-0000-0000-0000-000000000000\"}");
            sw.Flush();
            ms.Position = 0;

            response = phoneOrderService.UpdateOrderStatus(ms);

            sw.Close();
            ms.Close();

            Assert.AreEqual("{\"result\":\"Incomplete\",\"count\":0,\"orders\":null}", response);
        }
예제 #13
0
 public virtual void InsertPhoneOrder(PhoneOrderEntity order)
 {
     PhoneOrders.Insert(order);
 }