Exemplo n.º 1
0
        public async Task GetTranslationsByLanguageQueryHandler_ShouldReturnEmptyDictionary_WhenLanguageDoesNotExist()
        {
            // Arrange
            GetTranslationsByLanguageQuery request = new GetTranslationsByLanguageQuery {
                LanguageId = 8917
            };

            Mock <IQueryable <Translation> > translationQueryableMock = Enumerable
                                                                        .Empty <Translation>()
                                                                        .AsQueryable()
                                                                        .BuildMock();

            _unitOfWorkMock
            .Setup(m => m.Translations.GetByLanguage(It.IsAny <int>()))
            .Returns(translationQueryableMock.Object);

            GetTranslationsByLanguageQuery.Handler handler
                = new GetTranslationsByLanguageQuery.Handler(_unitOfWorkMock.Object);

            // Act
            IDictionary <string, string> translations = await handler.Handle(request);

            // Assert
            Assert.NotNull(translations);
            Assert.Empty(translations);
        }
Exemplo n.º 2
0
        public async Task GetTranslationsByLanguageQueryHandler_ShouldReturnTranslationDictionary_WhenLanguageExistsAndPatternMatches()
        {
            // Arrange
            GetTranslationsByLanguageQuery request = new GetTranslationsByLanguageQuery {
                LanguageId = 1, Pattern = "key"
            };

            IEnumerable <Translation> expectedTranslations = new[]
            {
                new Translation {
                    TranslationId = 1, Key = "key", Value = "value"
                }
            };

            Mock <IQueryable <Translation> > translationQueryableMock = expectedTranslations
                                                                        .AsQueryable()
                                                                        .BuildMock();

            _unitOfWorkMock
            .Setup(m => m.Translations.GetByLanguage(It.IsAny <int>(), It.IsAny <string>()))
            .Returns(translationQueryableMock.Object);

            GetTranslationsByLanguageQuery.Handler handler
                = new GetTranslationsByLanguageQuery.Handler(_unitOfWorkMock.Object);

            // Act
            IDictionary <string, string> translations = await handler.Handle(request);

            // Assert
            Assert.NotNull(translations);
            Assert.NotEmpty(translations);
            Assert.Single(translations);

            Assert.Equal("key", translations.First().Key);
            Assert.Equal("value", translations.First().Value);
        }