Пример #1
0
        public void GivenSpeakerNotFoundThenSpeakerNotFoundException()
        {
            // Arrange
            var service = new SpeakerService(_fakeRepository, _fakeGravatarService);

            // Act
            var exception = Record.Exception(() => service.Get(-1));

            // Assert
            Assert.IsAssignableFrom <SpeakerNotFoundException>(exception);
        }
Пример #2
0
        public void ItCallsRepository()
        {
            // Arrange
            var expectedSpeaker = SpeakerFactory.Create(_fakeRepository);
            var service         = new SpeakerService(_fakeRepository, _fakeGravatarService);

            // Act
            service.Get(expectedSpeaker.Id);

            // Assert
            Assert.True(_fakeRepository.GetCalled);
        }
Пример #3
0
        public void GivenSpeakerIsDeletedThenSpeakerNotFoundException()
        {
            // Arrange
            var expectedSpeaker = SpeakerFactory.Create(_fakeRepository).IsDeleted();
            var service         = new SpeakerService(_fakeRepository, _fakeGravatarService);

            // Act
            var exception = Record.Exception(() => service.Get(expectedSpeaker.Id));

            // Assert
            Assert.IsAssignableFrom <SpeakerNotFoundException>(exception);
        }
Пример #4
0
        public void GivenSpeakerFoundThenSpeakerDetailReturned()
        {
            // Arrange
            var speakerService = new SpeakerService(_repository, _gravatarService);

            // Act
            var speaker = speakerService.Get(1);

            // Assert
            Assert.NotNull(speaker);
            Assert.IsAssignableFrom <SpeakerDetail>(speaker);
        }
Пример #5
0
        public void GivenSpeakerReturnsSpeakerWithProperties()
        {
            // Arrange
            var expectedSpeaker = SpeakerFactory.Create(_fakeRepository);
            var service         = new SpeakerService(_fakeRepository, _fakeGravatarService);

            // Act
            var speaker = service.Get(1);

            // Assert
            Assert.Equal(expectedSpeaker.Id, speaker.Id);
            Assert.Equal(expectedSpeaker.Name, speaker.Name);
        }
Пример #6
0
        public void ItCallsGravatarServiceWithEmail()
        {
            // Arrange
            var expectedSpeaker = SpeakerFactory.Create(_fakeRepository, emailAddress: "*****@*****.**");
            var service         = new SpeakerService(_fakeRepository, _fakeGravatarService);

            // Act
            service.Get(expectedSpeaker.Id);

            // Assert
            Assert.True(_fakeGravatarService.WithEmailCalled);
            Assert.Equal(expectedSpeaker.EmailAddress, _fakeGravatarService.CalledWith);
        }
Пример #7
0
        public void ItReturnsSpeakerFromRepository(int id, string name)
        {
            // Arrange
            var expectedSpeaker = SpeakerFactory.Create(_fakeRepository, id, name);
            var service         = new SpeakerService(_fakeRepository, _fakeGravatarService);

            // Act
            var actualSpeaker = service.Get(expectedSpeaker.Id);

            // Assert
            Assert.True(_fakeRepository.GetCalled);
            Assert.Equal(expectedSpeaker.Id, actualSpeaker.Id);
            Assert.Equal(expectedSpeaker.Name, actualSpeaker.Name);
        }
Пример #8
0
        public void ItReturnsSpeakerFromRepository()
        {
            // Arrange
            var fakeRepository  = new FakeRepository();
            var expectedSpeaker = SpeakerFactory.Create(fakeRepository, 2, "Bill");
            var service         = new SpeakerService(fakeRepository);

            // Act
            var actualSpeaker = service.Get(expectedSpeaker.Id);

            // Assert
            Assert.True(fakeRepository.GetCalled);
            Assert.Equal(expectedSpeaker.Id, actualSpeaker.Id);
            Assert.Equal(expectedSpeaker.Name, actualSpeaker.Name);
        }
Пример #9
0
        public void GivenGravatarServiceThenItSetsGravatar()
        {
            // Arrange
            var expectedSpeaker = SpeakerFactory.Create(_fakeRepository);
            var service         = new SpeakerService(_fakeRepository, _fakeGravatarService);

            // Act
            var actualSpeaker    = service.Get(expectedSpeaker.Id);
            var expectedGravatar = _fakeGravatarService.GetGravatar(expectedSpeaker.EmailAddress);

            // Assert
            Assert.True(_fakeGravatarService.WithEmailCalled);
            Assert.Equal(expectedSpeaker.Id, actualSpeaker.Id);
            Assert.Equal(expectedSpeaker.Name, actualSpeaker.Name);
            Assert.Equal(expectedGravatar, actualSpeaker.Gravatar);
        }