public void DemoOfGeneralUseOfAzureCognitive() { var OriginalText = new Tuple <Language, string>(Language.English, "Hello World!"); ITRSTranslationService Translator = new AzureCognitiveAgent(TestHelper.MockILogger().Object, TestHelper.AzCognitiveArgs); var Translations = Translator.TranslateAsync(OriginalText); Translations.Wait(); var r = Translations.Result; Assert.Equal(Enum.GetNames(typeof(Language)).Length, r.Length); }
public async Task TranslateAsync_ThrowsArgumentNullException_WhenStringToTranslateIsEmpty() { //ARRANGE var mockILogger = TestHelper.MockILogger(); LoggedException.Logger = mockILogger.Object; ITRSTranslationService TranslatorToTest = new AzureCognitiveAgent(mockILogger.Object, TestHelper.AzCognitiveArgs); var args = new Tuple <Language, string>(Language.English, ""); //ACT & ASSERT await Assert.ThrowsAsync <IsNullOrWhiteSpaceException>(async() => await TranslatorToTest.TranslateAsync(args)); mockILogger.Verify(x => x.Error(It.IsAny <string>()), Times.Once); }
public async Task TranslateAsync_ThrowsArgumentOutOfRange_WhenFromLangueIsNotDefinedInEnum() { //ARRANGE var mockILogger = TestHelper.MockILogger(); LoggedException.Logger = mockILogger.Object; ITRSTranslationService TranslatorToTest = new AzureCognitiveAgent(mockILogger.Object, TestHelper.AzCognitiveArgs); var args = new Tuple <Language, string>((Language)50, "こんにちは"); //ACT & ASSERT await Assert.ThrowsAsync <LanguageNotSupportedException>(async() => await TranslatorToTest.TranslateAsync(args)); mockILogger.Verify(x => x.Error(It.IsAny <string>()), Times.Once); }
public async Task TranslateAsync_ShouldTranslate_WhenValidSentenceIsProvided(Tuple <Language, string> StringToTranslate, Tuple <Language, string> StringTranlated) { //ARRANGE var mockILogger = TestHelper.MockILogger(); LoggedException.Logger = mockILogger.Object; ITRSTranslationService TranslatorToTest = new AzureCognitiveAgent(mockILogger.Object, TestHelper.AzCognitiveArgs); //ACT var TranslatedSentence = await TranslatorToTest.TranslateAsync(StringToTranslate); //ASSERT Console.WriteLine($"Original: {StringToTranslate}"); Assert.Contains(TranslatedSentence, x => x.Item1 == StringTranlated.Item1); Assert.Equal(StringTranlated, TranslatedSentence.First(x => x.Item1 == StringTranlated.Item1)); //TO DO VERIFY OTHERS CTORS! mockILogger.Verify(x => x.Error(It.IsAny <string>()), Times.Never); }