Exemplo n.º 1
0
 public void Then_New_Project_page_will_be_filled_with_default_values()
 {
     _projectInputViewModel = ((_newProjectPage as ViewResult).Model as ProjectInputViewModel);
     Assert.That(_projectInputViewModel.StartDate, Is.LessThan(DateTime.Now));
     Assert.That(_projectInputViewModel.AvaiableOwners, Is.Not.Empty);
     Assert.That(_projectInputViewModel.AvaiableParticipants, Is.Not.Empty);
     Assert.That(_projectInputViewModel.EndDate, Is.Null);
     Assert.That(_projectInputViewModel.Name, Is.Null.Or.Empty);
 }
Exemplo n.º 2
0
 public void SetupContext()
 {
     var projectController = new ProjectController(Session);
     _viewModel = new ProjectInputViewModel
     {
         Name = "Sample project name",
         StartDate = DateTime.Now,
     };
     AddActionResult = projectController.Add(_viewModel);
 }
Exemplo n.º 3
0
 public void Given_I_filled_New_Project_page_as_follows(string name, string startDate)
 {
     _projectInputViewModel = ((_newProjectPage as ViewResult).Model as ProjectInputViewModel);
     _projectInputViewModel.Name = name.Trim();
     DateTime dateTime;
     if (DateTime.TryParse(startDate.Trim(), out dateTime))
     {
         _projectInputViewModel.StartDate = dateTime;
     }
 }
Exemplo n.º 4
0
        public ActionResult Add(ProjectInputViewModel newProject)
        {
            newProject = CreateUpdateProjectInput(newProject);

            if (ModelState.IsValid)
            {
                using (var tx = Session.BeginTransaction())
                {
                    var projectModel = newProject.Map<Project>();
                    Session.Save(projectModel);
                    tx.Commit();
                }
                return RedirectToAction("Index");
            }

            return View(newProject);
        }
Exemplo n.º 5
0
        public void GivenIFilledNewProjectPageAsFollows(Table table)
        {
            _projectInputViewModel = ((_newProjectPage as ViewResult).Model as ProjectInputViewModel);

            Func<Table, string, string> findRowValue = (searchTable, fieldName) =>
            {
                return
                    searchTable.Rows.Where(x => x["Field"] == fieldName).Select(x => x["Value"]).FirstOrDefault();
            };

            var projectName      = findRowValue(table, "Name");
            var projectStartDate = findRowValue(table, "StartDate");

            if (!string.IsNullOrWhiteSpace(projectName))
            {
                _projectInputViewModel.Name = projectName;
            }

            DateTime dateTime;
            if (DateTime.TryParse(projectStartDate, out dateTime))
            {
                _projectInputViewModel.StartDate = dateTime;
            }
        }
Exemplo n.º 6
0
        public ActionResult Edit(ProjectInputViewModel projectInput)
        {
            projectInput = CreateUpdateProjectInput(projectInput);

            if (ModelState.IsValid)
            {
                using (var tx = Session.BeginTransaction())
                {
                    var projectModel = projectInput.Map<Project>();
                    Session.Update(projectModel);
                    tx.Commit();
                    Session.Flush();
                }
                return RedirectToAction("Index");
            }

            return View(projectInput);
        }
Exemplo n.º 7
0
        private ProjectInputViewModel CreateUpdateProjectInput(ProjectInputViewModel newProject = null)
        {
            if (newProject == null)
            {
                newProject = new ProjectInputViewModel();
            }

            var avaiableOwners = Session.Query<User>().ToList();
            var avaiableParticipants = Session.Query<User>().ToList();

            newProject.AvaiableOwners = avaiableOwners.Select(x => new ListItem
            {
                Id         = x.Id,
                IsSelected = false,
                Value      = string.Format("{0} {1}", x.FirstName, x.LastName),
            });

            newProject.AvaiableParticipants = avaiableParticipants.Select(x => new ListItem
            {
                Id         = x.Id,
                IsSelected = newProject.SelectedParticipants.Any(y => y == x.Id),
                Value      = string.Format("{0} {1}", x.FirstName, x.LastName),
            });
            return newProject;
        }
Exemplo n.º 8
0
 public void ThenNewProjectPageWillBeFilledWithDefaultValues()
 {
     _projectInputViewModel = ((_newProjectPage as ViewResult).Model as ProjectInputViewModel);
     Assert.That(_projectInputViewModel.StartDate, Is.LessThan(DateTime.Now));
     Assert.That(_projectInputViewModel.AvaiableOwners, Is.Not.Empty);
     Assert.That(_projectInputViewModel.AvaiableParticipants, Is.Not.Empty);
     Assert.That(_projectInputViewModel.EndDate, Is.Null);
     Assert.That(_projectInputViewModel.Name, Is.Null.Or.Empty);
 }