Example #1
0
        public void AddCoach_DeleteCoach_GetCoach_IsNotFound(string firstName, string surname, string email, string phoneNumber)
        {
            var trackingLogsService = new Mock <ITrackingLogsService>();

            trackingLogsService.Setup(service => service.SendEvent(
                                          It.IsAny <TrackingLogEvent>())).Returns(ServiceResponse.Success());

            var sut = new CoachService(new FakeCoachRepository(), trackingLogsService.Object);

            sut.EnsureInitialized("DummyURL", "0001");

            var coach = new Coach()
            {
                FirstName   = firstName,
                Surname     = surname,
                Email       = email,
                PhoneNumber = phoneNumber
            };

            var addedCoach = sut.AddCoach(coach).ResponseDTO;

            sut.DeleteCoach(addedCoach.Id);
            var getCoach = sut.GetCoach(addedCoach.Id);

            getCoach.Should().Match <ServiceResponse>(response => !response.IsSuccess && response.ErrorDetails.Code == 404);
        }
        public IHttpActionResult Get()
        {
            CoachService coachService = CreateCoachService();
            var          coach        = coachService.GetCoach();

            return(Ok(coach));
        }
Example #3
0
        public void AddCoach_GetCoachList_IsFiguringOnList(string firstName, string surname, string email, string phoneNumber)
        {
            var trackingLogsService = new Mock <ITrackingLogsService>();

            trackingLogsService.Setup(service => service.SendEvent(
                                          It.IsAny <TrackingLogEvent>())).Returns(ServiceResponse.Success());

            var sut = new CoachService(new FakeCoachRepository(), trackingLogsService.Object);

            sut.EnsureInitialized("DummyURL", "0001");

            var coach = new Coach()
            {
                FirstName   = firstName,
                Surname     = surname,
                Email       = email,
                PhoneNumber = phoneNumber
            };

            var addedCoach        = sut.AddCoach(coach).ResponseDTO;
            var obtainedCoachList = sut.GetCoachList().ResponseDTO;
            var obtainedCoach     = obtainedCoachList.FirstOrDefault(c => c.Id == addedCoach.Id);

            obtainedCoach.Should().NotBeNull().And.Match <Coach>(c =>
                                                                 c.FirstName == firstName && c.Surname == surname &&
                                                                 c.Email == email && c.PhoneNumber == phoneNumber);
        }
Example #4
0
        public void AddCoach_DeleteCoach_GetCoachList_IsNotFiguringOnList(string firstName, string surname, string email, string phoneNumber)
        {
            var trackingLogsService = new Mock <ITrackingLogsService>();

            trackingLogsService.Setup(service => service.SendEvent(
                                          It.IsAny <TrackingLogEvent>())).Returns(ServiceResponse.Success());

            var sut = new CoachService(new FakeCoachRepository(), trackingLogsService.Object);

            sut.EnsureInitialized("DummyURL", "0001");

            var coach = new Coach()
            {
                FirstName   = firstName,
                Surname     = surname,
                Email       = email,
                PhoneNumber = phoneNumber
            };

            var addedCoach = sut.AddCoach(coach).ResponseDTO;

            sut.DeleteCoach(addedCoach.Id);
            var getCoachList = sut.GetCoachList().ResponseDTO;

            //getCoachList.Should().Match<List<Coach>>(response => response.Count==0);
            getCoachList.Should().NotContain(addedCoach);
        }
Example #5
0
 public Program(XmlService xmlService, PlayerService playerService, CoachService coachService, TeamService teamService)
 {
     _xmlService    = xmlService;
     _playerService = playerService;
     _coachService  = coachService;
     _teamService   = teamService;
 }
        public async Task GetAllTest()
        {
            var coach1 = new Coach()
            {
                Id = 1, Name = "test coach 1", Email = "*****@*****.**"
            };
            var coach2 = new Coach()
            {
                Id = 2, Name = "test coach 2", Email = "*****@*****.**"
            };
            var coaches = new List <Coach> {
                coach1, coach2
            };

            var fakeRepositoryMock = new Mock <ICoachRepository>();

            fakeRepositoryMock.Setup(x => x.GetAll()).ReturnsAsync(coaches);

            var coachService = new CoachService(fakeRepositoryMock.Object);

            var resultCoaches = await coachService.GetAll();

            Assert.Collection(resultCoaches, coach =>
            {
                Assert.Equal("test coach 1", coach.Name);
            },
                              coach =>
            {
                Assert.Equal("test coach 2", coach.Name);
            });
        }
        public async Task UpdateAndSaveTest()
        {
            var coach1 = new Coach()
            {
                Id = 1, Name = "test coach 1", Email = "*****@*****.**"
            };
            var coach2 = new Coach()
            {
                Id = 2, Name = "test coach 2", Email = "*****@*****.**"
            };
            var coaches = new List <Coach> {
                coach1, coach2
            };

            var newCoach2 = new Coach()
            {
                Id = 2, Name = "new test coach 2", Email = "*****@*****.**"
            };

            var fakeRepositoryMock = new Mock <ICoachRepository>();

            fakeRepositoryMock.Setup(x => x.Update(It.IsAny <Coach>())).Callback <Coach>(arg => coaches[1] = arg);

            var coachService = new CoachService(fakeRepositoryMock.Object);

            await coachService.UpdateAndSave(newCoach2);

            Assert.Equal("new test coach 2", coaches[1].Name);
        }
        public async Task DeleteAndSaveTest()
        {
            var coach1 = new Coach()
            {
                Id = 1, Name = "test coach 1", Email = "*****@*****.**"
            };
            var coach2 = new Coach()
            {
                Id = 2, Name = "test coach 2", Email = "*****@*****.**"
            };
            var coaches = new List <Coach> {
                coach1, coach2
            };

            var fakeRepositoryMock = new Mock <ICoachRepository>();

            fakeRepositoryMock.Setup(x => x.Delete(It.IsAny <long>())).Callback <long>(arg => coaches.RemoveAt(1));

            var coachService = new CoachService(fakeRepositoryMock.Object);

            await coachService.DeleteAndSave(coach2.Id);

            Assert.Single(coaches);
            Assert.Equal("*****@*****.**", coaches[0].Email);
        }
Example #9
0
        public void UpdateCoach_IsDataMatching(string firstName, string surname, string email, string phoneNumber)
        {
            var coachRepositoryMock = new Mock <ICoachRepository>();
            var coach = new Coach()
            {
                FirstName   = firstName,
                Surname     = surname,
                Email       = email,
                PhoneNumber = phoneNumber
            };

            coachRepositoryMock.Setup(repository => repository.UpdateCoach(coach))
            .Returns(coach);


            var trackingLogsService = new Mock <ITrackingLogsService>();

            trackingLogsService.Setup(service => service.SendEvent(
                                          It.IsAny <TrackingLogEvent>())).Returns(ServiceResponse.Success());

            var sut = new CoachService(coachRepositoryMock.Object, trackingLogsService.Object);

            sut.EnsureInitialized("DummyURL", "0001");

            sut.UpdateCoach(coach).Should().Match <ServiceResponse <Coach> >(response =>
                                                                             response.ResponseDTO.FirstName == firstName && response.ResponseDTO.Surname == surname &&
                                                                             response.ResponseDTO.Email == email && response.ResponseDTO.PhoneNumber == phoneNumber
                                                                             );
        }
        public async Task AddAndSaveTest()
        {
            var coach1 = new Coach()
            {
                Id = 1, Name = "test coach 1", Email = "*****@*****.**"
            };
            var coach2 = new Coach()
            {
                Id = 2, Name = "test coach 2", Email = "*****@*****.**"
            };
            var coaches = new List <Coach> {
                coach1, coach2
            };

            var coach3 = new Coach()
            {
                Id = 3, Name = "test coach 3", Email = "*****@*****.**"
            };

            var fakeRepositoryMock = new Mock <ICoachRepository>();

            fakeRepositoryMock.Setup(x => x.Add(It.IsAny <Coach>())).Callback <Coach>(arg => coaches.Add(arg));

            var coachService = new CoachService(fakeRepositoryMock.Object);

            await coachService.AddAndSave(coach3);


            Assert.Equal(3, coaches.Count);
        }
Example #11
0
        private ICoachService CreateCoachService()
        {
            var userId  = Guid.Parse(User.Identity.GetUserId());
            var service = new CoachService(userId);

            return(service);
        }
Example #12
0
        public void UpdateCoach_GetLatestLogs_IsEventSaved()
        {
            //mocking repos
            var fakeCoachRep = new FakeCoachRepository();
            var newCoach     = fakeCoachRep.InsertCoach(new Coach());
            var fakeLogRep   = new FakeTrackingLogEventRepository();

            //systems under test ( tracking side)
            var trackingService    = new TrackingService(fakeLogRep);
            var trackingController = new TrackingController(trackingService);

            _fixture.InitTrackingController(trackingController);

            //system under test ( main app side)
            var trackingLogsService = new TrackingLogsService(_fixture.Configuration, _fixture.FakeHttpService);
            var coachService        = new CoachService(fakeCoachRep, trackingLogsService);

            //testing and assertions
            var updateCoachResponse = coachService.UpdateCoach(newCoach);

            updateCoachResponse.Should().Match <ServiceResponse <Coach> >(response => response.IsSuccess);
            var logListResponse = trackingLogsService.GetLatestLogs();

            logListResponse.Should().Match <ServiceResponse <List <TrackingLogEvent> > >(response => response.IsSuccess);

            logListResponse.ResponseDTO.Should()
            .Contain(eventLog => eventLog.EventTypeId == TrackingLogEventType.CoachUpdated);
        }
        // GET: Coach
        public ActionResult Index()
        {
            var UserID  = Guid.Parse(User.Identity.GetUserId());
            var service = new CoachService(UserID);
            var model   = service.GetAllCoaches();

            return(View(model));
        }
Example #14
0
        public void Setup()
        {
            coachSet = new Mock <DbSet <Coach> >();

            mockContext = new Mock <BookmakerContext>();
            mockContext.Setup(m => m.Coaches).Returns(coachSet.Object);

            coachService = new CoachService(mockContext.Object);
        }
        public void ExistsTest()
        {
            var fakeRepositoryMock = new Mock <ICoachRepository>();

            fakeRepositoryMock.Setup(x => x.CoachExists(It.IsAny <long>())).Returns(true);

            var coachService = new CoachService(fakeRepositoryMock.Object);

            bool result = coachService.CoachExists(1);

            Assert.True(result);
        }
Example #16
0
        public void GetCoach_IsSuccess()
        {
            var coachRepositoryMock = new Mock <ICoachRepository>();

            coachRepositoryMock.Setup(repository => repository.GetCoachById(It.IsAny <int>())).Returns(new Coach());
            var trackingLogsService = new Mock <ITrackingLogsService>();

            trackingLogsService.Setup(service => service.SendEvent(
                                          It.IsAny <TrackingLogEvent>())).Returns(ServiceResponse.Success());

            var sut = new CoachService(coachRepositoryMock.Object, trackingLogsService.Object);

            sut.EnsureInitialized("DummyURL", "0001");

            sut.GetCoach(1).Should().Match(response => response.As <ServiceResponse>().IsSuccess);
        }
Example #17
0
        public void AddCoach_IsAdded()
        {
            var coachRepositoryMock = new Mock <ICoachRepository>();
            var coach = new Coach();

            coachRepositoryMock.Setup(repository => repository.InsertCoach(coach)).Returns(coach);
            var trackingLogsService = new Mock <ITrackingLogsService>();

            trackingLogsService.Setup(service => service.SendEvent(
                                          It.IsAny <TrackingLogEvent>())).Returns(ServiceResponse.Success());

            var sut = new CoachService(coachRepositoryMock.Object, trackingLogsService.Object);

            sut.EnsureInitialized("DummyURL", "0001");

            sut.AddCoach(coach);
            coachRepositoryMock.Verify(repository => repository.InsertCoach(coach));
        }
Example #18
0
        protected void CoachList()
        {
            ICoachInterface coachInterface = new CoachService();
            var             lst            = coachInterface.GetCoachList().Select(x => new { x.CoachName, x.ID }).ToList();
            DataTable       dt             = ToDataTable(lst);

            if (dt != null && dt.Rows.Count > 0)
            {
                CoachID.DataSource     = dt;
                CoachID.DataTextField  = "CoachName";
                CoachID.DataValueField = "ID";
                CoachID.DataBind();
            }
            else
            {
                CoachID.DataBind();
            }
        }
Example #19
0
        public void GetCoach_IsCorrectId(int coachId)
        {
            var coachRepositoryMock = new Mock <ICoachRepository>();

            coachRepositoryMock.Setup(repository => repository.GetCoachById(coachId)).Returns(new Coach()
            {
                Id = coachId
            });
            var trackingLogsService = new Mock <ITrackingLogsService>();

            trackingLogsService.Setup(service => service.SendEvent(
                                          It.IsAny <TrackingLogEvent>())).Returns(ServiceResponse.Success());

            var sut = new CoachService(coachRepositoryMock.Object, trackingLogsService.Object);

            sut.EnsureInitialized("DummyURL", "0001");

            sut.GetCoach(coachId).Should().BeOfType <ServiceResponse <Coach> >()
            .And.Match(response => response.As <ServiceResponse <Coach> >().ResponseDTO.Id == coachId);
        }
Example #20
0
        public void AddCoach_IsNewIdReceived()
        {
            var coachRepositoryMock = new FakeCoachRepository();

            var trackingLogsService = new Mock <ITrackingLogsService>();

            trackingLogsService.Setup(service => service.SendEvent(
                                          It.IsAny <TrackingLogEvent>())).Returns(ServiceResponse.Success());

            var sut = new CoachService(coachRepositoryMock, trackingLogsService.Object);

            sut.EnsureInitialized("DummyURL", "0001");

            var coachResponse  = sut.AddCoach(new Coach());
            var coach2Response = sut.AddCoach(new Coach());

            coach2Response.Should().Match <ServiceResponse <Coach> >(response =>
                                                                     response.ResponseDTO.Id != 0 && coachResponse.ResponseDTO.Id != 0 &&
                                                                     response.ResponseDTO.Id != coachResponse.ResponseDTO.Id);
        }
        public async Task GetByIdTest()
        {
            var coach1 = new Coach()
            {
                Id = 1, Name = "test coach 1", Email = "*****@*****.**"
            };
            var coach2 = new Coach()
            {
                Id = 2, Name = "test coach 2", Email = "*****@*****.**"
            };

            var fakeRepositoryMock = new Mock <ICoachRepository>();

            fakeRepositoryMock.Setup(x => x.GetByID(1)).ReturnsAsync(coach1);

            var coachService = new CoachService(fakeRepositoryMock.Object);

            var result = await coachService.GetById(1);

            Assert.Equal("test coach 1", result.Name);
        }
Example #22
0
        public void GetCoachesShouldReturnList()
        {
            //Arrange
            List <CoachDTO> list = new List <CoachDTO>();

            list.Add(new CoachDTO {
                Id = 1, FirstName = "ff", LastName = "jj", WorkExperience = 2
            });
            list.Add(new CoachDTO {
                Id = 2, FirstName = "ll", LastName = "kk", WorkExperience = 3
            });


            string jsonString = JsonSerializer.Serialize(list);

            List <Coach> temp = new List <Coach>();

            temp.Add(new Coach {
                Id = 1, FirstName = "ff", LastName = "jj", WorkExperience = 2
            });
            temp.Add(new Coach {
                Id = 2, FirstName = "ll", LastName = "kk", WorkExperience = 3
            });

            var mock         = new Mock <ICoachManager <Coach> >();
            var getCustomers = new CoachService(mock.Object);

            mock.Setup(x => x.GetList()).Returns(temp);


            //Act
            var    result      = getCustomers.SelectCoaches();
            string jsonString2 = JsonSerializer.Serialize(result);


            //Assert
            Assert.AreEqual(jsonString, jsonString2);
        }
Example #23
0
        public void GetCoachList_IsCorrectCoachCount(int coachCount)
        {
            var coachList = new List <Coach>();

            for (int i = 0; i < coachCount; i++)
            {
                coachList.Add(new Coach());
            }
            var coachRepositoryMock = new Mock <ICoachRepository>();

            coachRepositoryMock.Setup(repository => repository.GetCoaches()).Returns(coachList);
            var trackingLogsService = new Mock <ITrackingLogsService>();

            trackingLogsService.Setup(service => service.SendEvent(
                                          It.IsAny <TrackingLogEvent>())).Returns(ServiceResponse.Success());

            var sut = new CoachService(coachRepositoryMock.Object, trackingLogsService.Object);

            sut.EnsureInitialized("DummyURL", "0001");

            sut.GetCoachList().Should().BeOfType <ServiceResponse <List <Coach> > >()
            .And.Match(response => response.As <ServiceResponse <List <Coach> > >().ResponseDTO.Count == coachCount);
        }
        //會員檢視
        public ActionResult MemberServiceDetail(int OrderId = 5)
        {
            int[] types = new int[] { 1, 2, 3, 4, 6 };
            if (LoginState)
            {
                User member = GetMemberInfo();

                CoachService reserve = ReserveService.Instance.SearchService(member.MemberId, member.State)
                                       .Where(c => c.OrderId.Equals(OrderId)).FirstOrDefault();
                var           status = ShareService.Instance.GetReserveStatus().Where(c => types.Contains(c.ID)).ToList();
                ServiceDetail model  = new ServiceDetail()
                {
                    Service = reserve,
                    Status  = status
                };

                return(View(model));
            }
            else
            {
                return(RedirectToAction("Login", "Home"));
            }
        }
 //教練檢視
 public ActionResult CoachServiceDatail(int OrderId = 5)
 {
     int[]    status   = new int[] { 1, 2, 3, 4, 6 };//DB定義的Status ID
     string[] disabled = new string[] { "3", "6" };
     if (LoginState)
     {
         User         member  = GetMemberInfo();
         CoachService reserve = ReserveService.Instance.SearchService(member.MemberId, member.State)
                                .Where(c => c.OrderId.Equals(OrderId)).FirstOrDefault();
         var statusList = ReserveService.Instance.OrderStatusList(reserve.StatusId, status);
         statusList.Where(c => c.Value == "3").FirstOrDefault().Disabled = true;
         var model = new ServiceDetailModel()
         {
             StatusList = new SelectList(statusList, "Value", "Text", reserve.StatusId, disabled),
             Service    = reserve
         };
         return(View(model));
     }
     else
     {
         return(RedirectToAction("Login", "Home"));
     }
 }
Example #26
0
        public void AddCoach_UpdateCoach_IsSuccess(string firstName, string surname, string email, string phoneNumber)
        {
            var trackingLogsService = new Mock <ITrackingLogsService>();

            trackingLogsService.Setup(service => service.SendEvent(
                                          It.IsAny <TrackingLogEvent>())).Returns(ServiceResponse.Success());

            var sut = new CoachService(new FakeCoachRepository(), trackingLogsService.Object);

            sut.EnsureInitialized("DummyURL", "0001");

            var coach = new Coach()
            {
                FirstName   = firstName,
                Surname     = surname,
                Email       = email,
                PhoneNumber = phoneNumber
            };

            var addedCoach     = sut.AddCoach(coach).ResponseDTO;
            var updateResponse = sut.UpdateCoach(addedCoach);

            updateResponse.Should().Match <ServiceResponse <Coach> >(response => response.IsSuccess);
        }
Example #27
0
 public CoachController(IConfiguration configuration, CoachService coachService, UserService userService) : base(userService)
 {
     _configuration = configuration;
     _coachService  = coachService;
 }
Example #28
0
 public CoachesController(IUnitOfWork <Coach> uow, IHostEnvironment _hosting, ILogger <CoachesController> logger)
 {
     _repository   = new CoachService(uow);
     this._hosting = _hosting;
     this.logger   = logger;
 }
Example #29
0
 public CoachController(DanceStudioContext context, CoachService coachService)
 {
     _context      = context;
     _coachService = coachService;
 }
Example #30
0
 public CoachesController(CoachService coachService)
 {
     _coachService = coachService;
 }