public void GetEmotionConfiguration_WhenInvalidRemoteImagePath_ReturnValidConfig() { // We don't handle validity of remote image url because the API does it for us. // Thus the method should return a valid configuration. // Arrange string imagePath = "https://invalid-remote-url-image.com"; var json = new JsonManager(); var body = json.GetEmotionJson(imagePath); var expected = new RequestConfiguration( Uri: "https://westus.api.cognitive.microsoft.com/emotion/v1.0/recognize", Data: ByteArrayBuilder.FromJsonObject(body), ContentType: "application/json", CredentialKey: Credentials.EmotionKey); // Act var actual = req.GetEmotionConfiguration(imagePath); // Assert Assert.IsInstanceOfType(actual, typeof(RequestConfiguration)); Assert.AreEqual(expected.ContentType, actual.ContentType); Assert.AreEqual(expected.CredentialKey, actual.CredentialKey); Assert.IsTrue(expected.Data.SequenceEqual(actual.Data)); Assert.AreEqual(expected.Uri, actual.Uri); }
public void GetTextAnalyticsConfiguration_WhenValidParameters_ReturnValidConfiguration() { // Arrange var json = new JsonManager(); var validQueries = new List <string> { "languages", "keyPhrases", "sentiment" }; var text = "I'm sorry that you had to write all these tests, I really do. But it's for humanity's sake."; var language = "English"; foreach (var query in validQueries) { var body = query == "languages" ? json.GetTextAnalyticsJson(text) : json.GetTextAnalyticsJson(text, language); var expected = new RequestConfiguration( Uri: $"https://westus.api.cognitive.microsoft.com/text/analytics/v2.0/{query}", Data: ByteArrayBuilder.FromJsonObject(body), ContentType: "application/json", CredentialKey: Credentials.TextAnalyticsKey); // Act var actual = req.GetTextAnalyticsConfiguration(query, text, language); // Assert Assert.IsInstanceOfType(actual, typeof(RequestConfiguration)); Assert.AreEqual(expected.ContentType, actual.ContentType); Assert.AreEqual(expected.CredentialKey, actual.CredentialKey); Assert.IsTrue(expected.Data.SequenceEqual(actual.Data)); Assert.AreEqual(expected.Uri, actual.Uri); } }
public void GetEmotionConfiguration_WhenValidRemoteImagePath_ReturnValidConfig() { // Arrange string imagePath = "http://media.indiatimes.in/media/content/2013/Oct/81964930_1346039027_1382772752_1382772760_540x540.jpg"; var json = new JsonManager(); var body = json.GetEmotionJson(imagePath); var expected = new RequestConfiguration( Uri: "https://westus.api.cognitive.microsoft.com/emotion/v1.0/recognize", Data: ByteArrayBuilder.FromJsonObject(body), ContentType: "application/json", CredentialKey: Credentials.EmotionKey); // Act var actual = req.GetEmotionConfiguration(imagePath); // Assert Assert.IsInstanceOfType(actual, typeof(RequestConfiguration)); Assert.AreEqual(expected.ContentType, actual.ContentType); Assert.AreEqual(expected.CredentialKey, actual.CredentialKey); Assert.IsTrue(expected.Data.SequenceEqual(actual.Data)); Assert.AreEqual(expected.Uri, actual.Uri); }