Ejemplo n.º 1
0
        public async Task AddTeamMemberAsync(AdminTeamMemberBindingModel teamMember)
        {
            var model = this.Mapper.Map <TeamMember>(teamMember);
            await DbContext.TeamMembers.AddAsync(model);

            await DbContext.SaveChangesAsync();
        }
Ejemplo n.º 2
0
        public async Task TeamMemberEditAsync(AdminTeamMemberBindingModel teamMember, int modelId)
        {
            var model = DbContext.TeamMembers.FirstOrDefault(i => i.Id == modelId);

            Mapper.Map(teamMember, model);
            DbContext.TeamMembers.Update(model);
            await DbContext.SaveChangesAsync();
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> TeamMemberEdit(int id, AdminTeamMemberBindingModel model)
        {
            if (!ModelState.IsValid)
            {
                RedirectToAction("EditTeamMember");
            }
            await _aboutService.TeamMemberEditAsync(model, id);

            return(RedirectToAction("TeamMembers"));
        }
Ejemplo n.º 4
0
        public async Task <IActionResult> AddTeamMember(AdminTeamMemberBindingModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View());
            }
            await _aboutService.AddTeamMemberAsync(model);

            return(RedirectToAction("TeamMembers"));
        }
Ejemplo n.º 5
0
        public void TeamMemberEditAsyncShouldEditTeamMemberCorrectly()
        {
            var options = new DbContextOptionsBuilder <IntillegioContext>()
                          .UseInMemoryDatabase(databaseName: "Edit_TeamMember_Db")
                          .Options;

            var dbContext = new IntillegioContext(options);

            var service = new AboutService(dbContext, null);

            var teamMember = new TeamMember
            {
                Name        = "Jack Semper	",
                Id          = 1,
                PhoneNumber = "(+123) 123 456 789",
                Email       = "*****@*****.**",
                Position    = "Majority Owner",
            };

            dbContext.TeamMembers.Add(teamMember);
            dbContext.SaveChanges();

            var adminTeamMemberBindingModel = new AdminTeamMemberBindingModel()
            {
                Name        = "Jack Ripper	",
                Id          = 1,
                PhoneNumber = "(+123) 123 456 879",
                Email       = "*****@*****.**",
                Position    = "Minority Owner",
            };

            var mapper = new Mock <IMapper>();

            mapper.Setup(m => m.Map <TeamMember>(adminTeamMemberBindingModel))
            .Returns(teamMember);

            var id = dbContext.TeamMembers.LastOrDefault().Id;

            service.TeamMemberEditAsync(adminTeamMemberBindingModel, id);

            var teamMemberEdited = dbContext
                                   .TeamMembers
                                   .FirstOrDefault(artwork => artwork.Id == id);

            Assert.Equal(adminTeamMemberBindingModel.Name, teamMemberEdited.Name);
            Assert.Equal(adminTeamMemberBindingModel.Id, teamMemberEdited.Id);
            Assert.Equal(adminTeamMemberBindingModel.PhoneNumber, teamMemberEdited.PhoneNumber);
            Assert.Equal(adminTeamMemberBindingModel.Email, teamMemberEdited.Email);
            Assert.Equal(adminTeamMemberBindingModel.Position, teamMemberEdited.Position);
        }
Ejemplo n.º 6
0
        public void AddTeamMemberAsyncShouldReturnTeamMemberCorrectly()
        {
            var options = new DbContextOptionsBuilder <IntillegioContext>()
                          .UseInMemoryDatabase(databaseName: "Add_TeamMember_Db")
                          .Options;

            var dbContext = new IntillegioContext(options);

            var teamMemberBindingModel = new AdminTeamMemberBindingModel
            {
                Name         = "Jack Semper",
                Position     = "Majority Owner",
                About        = "Born and raised in Pretoria, South Africa, Jack moved to Canada when he was 17 to attend Queen\'s University.",
                PhoneNumber  = "(+123) 123 456 789",
                Email        = "*****@*****.**",
                Image350X290 = "http://specthemes.com/redbiz/redbiz-5/img/team/team-05.jpg",
                Facebook     = "https://www.facebook.com/baianodesalvadorBA",
                Twitter      = "https://twitter.com/jpsemper",
                Instagram    = "https://www.instagram.com/tennillejack/",
                Skype        = "AnnSmith",
                Linkedin     = "https://www.linkedin.com/company/semper/"
            };

            var mapper = new Mock <IMapper>();

            mapper.Setup(m => m.Map <TeamMember>(teamMemberBindingModel))
            .Returns(new TeamMember
            {
                Name         = "Jack Semper",
                Position     = "Majority Owner",
                About        = "Born and raised in Pretoria, South Africa, Jack moved to Canada when he was 17 to attend Queen\'s University.",
                PhoneNumber  = "(+123) 123 456 789",
                Email        = "*****@*****.**",
                Image350X290 = "http://specthemes.com/redbiz/redbiz-5/img/team/team-05.jpg",
                Facebook     = "https://www.facebook.com/baianodesalvadorBA",
                Twitter      = "https://twitter.com/jpsemper",
                Instagram    = "https://www.instagram.com/tennillejack/",
                Skype        = "AnnSmith",
                Linkedin     = "https://www.linkedin.com/company/semper/"
            });

            var service = new AboutService(dbContext, mapper.Object);

            service.AddTeamMemberAsync(teamMemberBindingModel);
            Assert.True(dbContext.TeamMembers.Any(n => n.Name == teamMemberBindingModel.Name));
            Assert.True(dbContext.TeamMembers.Any(a => a.Position == teamMemberBindingModel.Position));
            Assert.True(dbContext.TeamMembers.Any(b => b.About == teamMemberBindingModel.About));
            Assert.True(dbContext.TeamMembers.Any(c => c.Facebook == teamMemberBindingModel.Facebook));
        }