Example #1
0
        public async Task AnalyzeOperationAnalyzeSentimentWithAnalyzeSentimentOptions()
        {
            var mockResponse = new MockResponse(202);

            mockResponse.AddHeader(new HttpHeader("Operation-Location", "something/jobs/2a96a91f-7edf-4931-a880-3fdee1d56f15"));

            var mockTransport = new MockTransport(new[] { mockResponse, mockResponse });
            var client        = CreateTestClient(mockTransport);

            var documents = new List <string>
            {
                "Elon Musk is the CEO of SpaceX and Tesla."
            };

            var options = new AnalyzeSentimentOptions();

            var actions = new AnalyzeSentimentAction(options);

            TextAnalyticsActions batchActions = new TextAnalyticsActions()
            {
                AnalyzeSentimentActions = new List <AnalyzeSentimentAction>()
                {
                    actions
                },
            };

            await client.StartAnalyzeActionsAsync(documents, batchActions);

            var contentString = GetString(mockTransport.Requests.Single().Content);

            ValidateRequestOptions(contentString);
            Assert.AreEqual(-1, contentString.IndexOf("opinionMining"));
        }
Example #2
0
        public async Task AnalyzeOperationAnalyzeSentimentWithAnalyzeSentimentOptionsFull()
        {
            var mockResponse = new MockResponse(202);

            mockResponse.AddHeader(new HttpHeader("Operation-Location", "something/jobs/2a96a91f-7edf-4931-a880-3fdee1d56f15"));

            var mockTransport = new MockTransport(new[] { mockResponse, mockResponse });
            var client        = CreateTestClient(mockTransport);

            var documents = new List <string>
            {
                "Elon Musk is the CEO of SpaceX and Tesla."
            };

            var options = new AnalyzeSentimentOptions()
            {
                ModelVersion         = "latest",
                DisableServiceLogs   = true,
                IncludeStatistics    = true,
                IncludeOpinionMining = true
            };

            var actions = new AnalyzeSentimentAction(options);

            TextAnalyticsActions batchActions = new TextAnalyticsActions()
            {
                AnalyzeSentimentActions = new List <AnalyzeSentimentAction>()
                {
                    actions
                },
            };

            await client.StartAnalyzeActionsAsync(documents, batchActions);

            var contentString = GetString(mockTransport.Requests.Single().Content);

            ValidateRequestOptions(contentString, true);

            string opinionMining = contentString.Substring(contentString.IndexOf("opinionMining"), 19);

            var expectedOpinionMiningContent = "opinionMining\":true";

            Assert.AreEqual(expectedOpinionMiningContent, opinionMining);
        }
Example #3
0
        public async Task AnalyzeOperationAnalyzeSentimentWithDisableServiceLogs()
        {
            var mockResponse = new MockResponse(202);

            mockResponse.AddHeader(new HttpHeader("Operation-Location", "something/jobs/2a96a91f-7edf-4931-a880-3fdee1d56f15"));

            var mockTransport = new MockTransport(new[] { mockResponse, mockResponse });
            var client        = CreateTestClient(mockTransport);

            var documents = new List <string>
            {
                "Elon Musk is the CEO of SpaceX and Tesla."
            };

            var actions = new AnalyzeSentimentAction()
            {
                DisableServiceLogs = true
            };

            TextAnalyticsActions batchActions = new TextAnalyticsActions()
            {
                AnalyzeSentimentActions = new List <AnalyzeSentimentAction>()
                {
                    actions
                },
            };

            await client.StartAnalyzeActionsAsync(documents, batchActions);

            var    contentString = GetString(mockTransport.Requests.Single().Content);
            string logging       = contentString.Substring(contentString.IndexOf("loggingOptOut"), 19);

            var expectedContent = "loggingOptOut\":true";

            Assert.AreEqual(expectedContent, logging);
        }