public void Validation_Leaving_Name_Null_or_short_causes_modelstate_not_valid()
        {
            var cd  = new CourseDesign();
            var cd2 = new CourseDesign();

            cd.CourseDesignId  = 1;
            cd2.CourseDesignId = 1;
            cd2.Name           = "123";

            var result  = Validator.TryValidateObject(cd, new ValidationContext(cd), null, true);
            var result2 = Validator.TryValidateObject(cd2, new ValidationContext(cd2), null, true);

            result.Should().BeFalse();
            result2.Should().BeFalse();
        }
        public async Task Create_shows_only_CourseDesigns_without_uid()
        {
            var cd = new CourseDesign {
                Name = "[uid] test", CourseDesignId = 7
            };

            Context.Add(cd);
            await Context.SaveChangesAsync();

            var result = await Controller.Create();

            result.As <ViewResult>().Model.As <CourseViewModel>().CourseDesigns
            .Count(x => x.Name.Substring(0, 1) == "[")
            .Should().Be(0);
        }
        public async Task Edit_removes_uid_from_name_puts_it_in_Uid_prop()
        {
            var cd = new CourseDesign()
            {
                Name = "[test] name", CourseDesignId = 7
            };

            Context.Add(cd);
            await Context.SaveChangesAsync();

            var result = await Controller.Edit(7);

            result.As <ViewResult>().Model.As <CourseDesignViewModel>().Uid.Should().Match("[test]");
            result.As <ViewResult>().Model.As <CourseDesignViewModel>().CourseDesign.Name.Should().Match("name");
        }
        public void Validation_entering_disallowed_character_in_Name_field_causes_modelstate_not_valid()
        {
            var x  = new CourseDesign();
            var x2 = new CourseDesign();
            var x3 = new CourseDesign();

            x.Name  = "[123";
            x2.Name = "123]";
            x3.Name = "12_3";

            var result  = Validator.TryValidateObject(x, new ValidationContext(x), null, true);
            var result2 = Validator.TryValidateObject(x2, new ValidationContext(x2), null, true);
            var result3 = Validator.TryValidateObject(x3, new ValidationContext(x3), null, true);

            result.Should().BeFalse();
            result2.Should().BeFalse();
            result3.Should().BeFalse();
        }
Beispiel #5
0
        public async Task RemoveCourseDesignAsync(CourseDesign courseDesign)
        {
            var uid = courseDesign.GetUid();

            if (uid != "")
            {
                foreach (var courseSeminar in courseDesign.CourseSeminars)
                {
                    foreach (var seminarDay in courseSeminar.Seminar.SeminarDays)
                    {
                        foreach (var daySubject in seminarDay.Day.DaySubjects)
                        {
                            if (daySubject.Subject.Name.Length >= uid.Length &&
                                daySubject.Subject.Name.Substring(0, uid.Length) == uid)
                            {
                                _context.Remove(daySubject.Subject);
                            }
                        }

                        if (seminarDay.Day.Name.Length >= uid.Length &&
                            seminarDay.Day.Name.Substring(0, uid.Length) == uid)
                        {
                            _context.Remove(seminarDay.Day);
                        }
                    }

                    if (courseSeminar.Seminar.Name.Length >= uid.Length &&
                        courseSeminar.Seminar.Name.Substring(0, uid.Length) == uid)
                    {
                        _context.Remove(courseSeminar.Seminar);
                    }
                }

                if (courseDesign.Name.Length >= uid.Length &&
                    courseDesign.Name.Substring(0, uid.Length) == uid)
                {
                    _context.Remove(courseDesign);
                }
            }

            _context.Remove(courseDesign);
            await _context.SaveChangesAsync();
        }
        public CourseDesignViewModel(List <Seminar> seminars, string lastPage)
        {
            CourseDesign = new CourseDesign();
            CheckList    = new List <CheckedId>();
            Seminars     = seminars;
            LastPage     = lastPage;

            foreach (var sem in seminars)
            {
                var check = new CheckedId()
                {
                    Id          = sem.SeminarId,
                    Name        = sem.Name,
                    Description = sem.Description,
                    IsSelected  = false
                };
                CheckList.Add(check);
            }
        }
        public CourseDesignViewModel(CourseDesign courseDesign, List <Seminar> seminars)
        {
            CourseDesign = courseDesign;
            CheckList    = new List <CheckedId>();
            Seminars     = seminars;

            foreach (var sem in seminars)
            {
                bool isInCourseSeminars = (CourseDesign.CourseSeminars.Any(x => x.SeminarId == sem.SeminarId));

                var check = new CheckedId()
                {
                    Id          = sem.SeminarId,
                    Name        = sem.Name,
                    Description = sem.Description,
                    IsSelected  = isInCourseSeminars
                };
                CheckList.Add(check);
            }
        }
        public async Task Edit_puts_uid_and_name_back_together_when_saving_to_context()
        {
            const string name = "[test] name";
            var          cd   = new CourseDesign {
                Name = name, CourseDesignId = 7
            };

            Context.Add(cd);
            await Context.SaveChangesAsync();

            var actionResult = await Controller.Edit(7);

            var model = actionResult.As <ViewResult>().Model.As <CourseDesignViewModel>();

            await Controller.Edit(7, model);

            var result = Context.CourseDesigns.FirstOrDefault(x => x.CourseDesignId == 7);

            result?.Name.Should().Be(name);
        }
 public CourseDesignViewModel(CourseDesign courseDesign, string lastPage)
 {
     CourseDesign = courseDesign;
     LastPage     = lastPage;
 }