Пример #1
0
        public async Task GetTextDe_cached()
        {
            // Arrange
            var dataManager  = IntegrationTestEnvironment.CreateTestDataManager();
            var expectedText = Guid.NewGuid().ToString();
            var textDe       = await dataManager.Insert(new XLangText
            {
                LanguageCode = LanguageCode.Deutsch,
                Text         = expectedText
            });

            using (new EnsureExecutionScope(IntegrationTestEnvironment.Container))
            {
                // Act
                var translations = IntegrationTestEnvironment.Container.GetInstance <IKiss4TranslationProvider>();
                var text         = await translations.GetText(textDe.Tid, textDe.LanguageCode);

                text.ShouldBe(expectedText);

                // remove text from db
                await dataManager.Cleanup();

                // check if test is still in the cache
                var cachedText = await translations.GetText(textDe.Tid, textDe.LanguageCode);

                // Assert
                cachedText.ShouldBe(expectedText);
            }

            // check if the text is really gone in the database
            using (new EnsureExecutionScope(IntegrationTestEnvironment.Container))
            {
                var text = await IntegrationTestEnvironment.Container.GetInstance <IQueryable <XLangText> >()
                           .FirstOrDefaultAsync(txt => txt.Tid == textDe.Tid);

                text.ShouldBeNull();
            }
        }
Пример #2
0
        public async Task GetTextDe()
        {
            // Arrange
            using (var dataManager = IntegrationTestEnvironment.CreateTestDataManager())
            {
                var expectedText = Guid.NewGuid().ToString();
                var textDe       = await dataManager.Insert(new XLangText
                {
                    LanguageCode = LanguageCode.Deutsch,
                    Text         = expectedText
                });

                using (new EnsureExecutionScope(IntegrationTestEnvironment.Container))
                {
                    // Act
                    var translations = IntegrationTestEnvironment.Container.GetInstance <IKiss4TranslationProvider>();
                    var text         = await translations.GetText(textDe.Tid, textDe.LanguageCode);

                    // Assert
                    text.ShouldBe(expectedText);
                }
            }
        }
Пример #3
0
 public void Setup()
 {
     _testDataManager = IntegrationTestEnvironment.CreateTestDataManager();
 }