Ejemplo n.º 1
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);
        }
Ejemplo n.º 2
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);
        }
Ejemplo n.º 3
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
                                                                             );
        }
Ejemplo n.º 4
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);
        }
Ejemplo n.º 5
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);
        }
Ejemplo n.º 6
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));
        }
Ejemplo n.º 7
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);
        }
Ejemplo n.º 8
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);
        }
Ejemplo n.º 9
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);
        }
Ejemplo n.º 10
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);
        }