public void Initialize()
        {
            EfStorage storage = new EfStorage(new EfStorageDbInitializerTest());

            storage.Database.Initialize(true);

            userRegistrationModel = new UserRegistrationModel()
            {
                Email    = "*****@*****.**",
                Password = "******"
            };

            userRegistrationModel.Save();

            userModel = new UserModel(userRegistrationModel.Id);

            businessTripsRepository = new BusinessTripsRepository();

            businessTripModel = new BusinessTripModel
            {
                Id           = Guid.NewGuid(),
                EndingDate   = DateTime.Now,
                StartingDate = DateTime.Now,
                User         = userModel
            };

            businessTripsRepository.SaveChanges();
        }
コード例 #2
0
        public ActionResult Reject(Guid businessTripId)
        {
            var businessTripModel = new BusinessTripModel(businessTripId);

            businessTripModel.ChangeStatus(BusinessTripStatus.Rejected);

            return(View("StatusChangedSuccessfully"));
        }
コード例 #3
0
 public UserBusinessTripViewModel(BusinessTripModel businessTripModel)
 {
     StartingDate = businessTripModel.StartingDate;
     EndingDate   = businessTripModel.EndingDate;
     Id           = businessTripModel.Id;
     Location     = businessTripModel.ClientLocation;
     Accomodation = businessTripModel.Accomodation;
     Status       = businessTripModel.Status;
 }
        public void Add_ElementIsFoundInStorageByHisId()
        {
            businessTripsRepository.Add(businessTripModel);
            businessTripsRepository.SaveChanges();

            var actual = new BusinessTripModel(businessTripsRepository.GetById(businessTripModel.Id));

            Assert.AreEqual(businessTripModel.Id, actual.Id);
        }
コード例 #5
0
        public ActionResult GetDetails(Guid businessTripId)
        {
            BusinessTripModel businessTripModel = new BusinessTripModel(businessTripId);

            if (IsOwnBusinessTrip(businessTripModel.User.Id) || User.IsInRole("HR"))
            {
                return(View("Details", businessTripModel));
            }

            return(RedirectToAction("GetUserBusinessTrips"));
        }
コード例 #6
0
        public ActionResult Cancel(Guid businessTripId)
        {
            BusinessTripModel businessTripModel = new BusinessTripModel(businessTripId);

            if (businessTripModel.Status == BusinessTripStatus.Accepted)
            {
                Email userEmail = new Email();
                userEmail.SendCancelBusinessTripEmail(businessTripModel.Id);
            }

            businessTripModel.ChangeStatus(BusinessTripStatus.Canceled);

            return(GetUserBusinessTrips());
        }
コード例 #7
0
        public ActionResult Submit(BusinessTripModel businessTripModel)
        {
            if (!ModelState.IsValid)
            {
                return(View("Submit"));
            }

            businessTripModel.User = new UserModel(GetUserIdFromCookie());
            businessTripModel.Save();

            var email = new Email();

            email.SendBusinessTripRegistrationEmail(businessTripModel.Id);

            return(View("RegisteredSuccessfully"));
        }
        public void Accept_BusinessTripIdInStorage_ReturnsStatusChangedSuccessfullyView()
        {
            var businessTripRepository = new BusinessTripsRepository();

            var userRegistrationModel = new UserRegistrationModel();

            userRegistrationModel.Save();

            var businessTripModel = new BusinessTripModel
            {
                User         = new UserModel(userRegistrationModel.Id),
                StartingDate = DateTime.Now,
                EndingDate   = DateTime.Now
            };

            businessTripRepository.Add(businessTripModel);
            businessTripRepository.SaveChanges();

            var result = controller.Accept(businessTripModel.Id) as ViewResult;

            Assert.IsNotNull(result);
            Assert.AreEqual("StatusChangedSuccessfully", result.ViewName);
        }
        public void Add_ElementsAreFoundInStorageByUser()
        {
            for (int i = 0; i < 10; i++)
            {
                businessTripModel = new BusinessTripModel
                {
                    Id           = Guid.NewGuid(),
                    EndingDate   = DateTime.Now,
                    StartingDate = DateTime.Now,
                    User         = userModel
                };

                businessTripsRepository.Add(businessTripModel);
            }

            businessTripsRepository.SaveChanges();

            var actual = businessTripsRepository.GetByUser(userRegistrationModel.Id).Select(e => new BusinessTripModel(e));

            foreach (var tripModel in actual)
            {
                Assert.AreEqual(userRegistrationModel.Id, tripModel.User.Id);
            }
        }
コード例 #10
0
 public void Add(BusinessTripModel businessTripModel)
 {
     storage.Add(businessTripModel.ToEntity());
 }