예제 #1
0
        public IEnumerator TestConvertToHtml()
        {
            Log.Debug("CompareComplyServiceV1IntegrationTests", "Attempting to ConvertToHtml...");
            HTMLReturn convertToHtmlResponse = null;

            using (FileStream fs = File.OpenRead(contractAFilepath))
            {
                using (MemoryStream ms = new MemoryStream())
                {
                    fs.CopyTo(ms);
                    service.ConvertToHtml(
                        callback: (DetailedResponse <HTMLReturn> response, IBMError error) =>
                    {
                        Log.Debug("CompareComplyServiceV1IntegrationTests", "ConvertToHtml result: {0}", response.Response);
                        convertToHtmlResponse = response.Result;
                        Assert.IsNotNull(convertToHtmlResponse);
                        Assert.IsNotNull(convertToHtmlResponse.Html);
                        Assert.IsNull(error);
                    },
                        file: ms,
                        filename: "contract_A.pdf",
                        model: "contracts",
                        fileContentType: Utility.GetMimeType(Path.GetExtension(contractAFilepath))
                        );

                    while (convertToHtmlResponse == null)
                    {
                        yield return(null);
                    }
                }
            }
        }
예제 #2
0
        public void ConvertToHtml()
        {
            IamConfig config = new IamConfig(
                apikey: apikey
                );

            CompareComplyService service = new CompareComplyService(versionDate, config);

            service.SetEndpoint(url);

            using (FileStream fs = File.OpenRead(contractAFilePath))
            {
                using (MemoryStream ms = new MemoryStream())
                {
                    fs.CopyTo(ms);
                    var result = service.ConvertToHtml(
                        file: ms,
                        filename: Path.GetFileName(contractAFilePath),
                        fileContentType: "application/pdf"
                        );

                    Console.WriteLine(result.Response);
                }
            }
        }
        //[TestMethod, ExpectedException(typeof(AggregateException))]
        public void ConvertToHtml_Catch_Exception()
        {
            IClient client = CreateClient();

            IRequest request = Substitute.For <IRequest>();

            client.PostAsync(Arg.Any <string>())
            .Returns(x =>
            {
                throw new AggregateException(new ServiceResponseException(Substitute.For <IResponse>(),
                                                                          Substitute.For <HttpResponseMessage>(HttpStatusCode.BadRequest),
                                                                          string.Empty));
            });

            CompareComplyService service      = new CompareComplyService(client);
            TokenOptions         tokenOptions = new TokenOptions()
            {
                IamAccessToken = "iamAccessToken",
                ServiceUrl     = "https://www.serviceurl.com"
            };

            service.SetCredential(tokenOptions);
            service.VersionDate = "2018-02-16";

            using (FileStream fs = File.OpenRead(tableFilePath))
            {
                service.ConvertToHtml(fs);
            }
        }
예제 #4
0
        public void ConvertToHtml_No_File()
        {
            IamAuthenticator     authenticator = new IamAuthenticator(apikey: "apiKey");
            CompareComplyService service       = new CompareComplyService("versionDate", authenticator);

            service.ConvertToHtml(null, "filename");
        }
예제 #5
0
        public void ConvertToHtml()
        {
            TokenOptions tokenOptions = new TokenOptions()
            {
                IamApiKey  = apikey,
                ServiceUrl = url
            };

            CompareComplyService service = new CompareComplyService(tokenOptions, versionDate);

            using (FileStream fs = File.OpenRead(contractAFilePath))
            {
                using (MemoryStream ms = new MemoryStream())
                {
                    fs.CopyTo(ms);
                    var result = service.ConvertToHtml(
                        file: ms,
                        filename: Path.GetFileName(contractAFilePath),
                        fileContentType: "application/pdf"
                        );

                    Console.WriteLine(result.Response);
                }
            }
        }
예제 #6
0
        public void ConvertToHtml_No_FileName()
        {
            IamAuthenticator     authenticator = new IamAuthenticator(apikey: "apiKey");
            CompareComplyService service       = new CompareComplyService("versionDate", authenticator);

            using (MemoryStream ms = Arg.Any <MemoryStream>())
            {
                service.ConvertToHtml(ms, null);
            }
        }
        public void ConvertToHtml_No_File()
        {
            TokenOptions tokenOptions = new TokenOptions()
            {
                IamApiKey = "iamApikey"
            };
            CompareComplyService service = new CompareComplyService(tokenOptions, "versionDate");

            service.ConvertToHtml(null);
        }
        public void HtmlConversion_Success()
        {
            using (FileStream fs = File.OpenRead(contract_a))
            {
                var htmlConversionResult = service.ConvertToHtml(fs);

                Assert.IsNotNull(htmlConversionResult);
                Assert.IsTrue(htmlConversionResult.Html != null);
                Assert.IsTrue(htmlConversionResult.Html.Contains("AGREEMENT BETWEEN OWNER AND CONTRACTOR"));
            }
        }
예제 #9
0
        public void ConvertToHtml_No_FileName()
        {
            TokenOptions tokenOptions = new TokenOptions()
            {
                IamApiKey = "iamApikey"
            };
            CompareComplyService service = new CompareComplyService(tokenOptions, "versionDate");

            using (MemoryStream ms = Arg.Any <MemoryStream>())
            {
                service.ConvertToHtml(ms, null);
            }
        }
예제 #10
0
        //[TestMethod]
        public void ConvertToHtml_Success()
        {
            IClient client = CreateClient();

            IRequest request = Substitute.For <IRequest>();

            client.PostAsync(Arg.Any <string>())
            .Returns(request);

            #region Response
            var response = Substitute.For <DetailedResponse <HTMLReturn> >();
            response.Result                 = Substitute.For <HTMLReturn>();
            response.Result.Author          = "author";
            response.Result.Html            = "html";
            response.Result.NumPages        = "1";
            response.Result.PublicationDate = "date";
            response.Result.Title           = "title";
            #endregion

            request.WithArgument(Arg.Any <string>(), Arg.Any <string>())
            .Returns(request);
            request.WithBody <FileStream>(Arg.Any <FileStream>())
            .Returns(request);
            request.As <HTMLReturn>()
            .Returns(Task.FromResult(response));

            CompareComplyService service      = new CompareComplyService(client);
            TokenOptions         tokenOptions = new TokenOptions()
            {
                IamAccessToken = "iamAccessToken",
                ServiceUrl     = "https://www.serviceurl.com"
            };
            service.SetCredential(tokenOptions);
            service.VersionDate = "versionDate";

            DetailedResponse <HTMLReturn> result = null;
            using (MemoryStream fs = new MemoryStream())
            {
                result = service.ConvertToHtml(fs, "filename");
            }

            Assert.IsNotNull(result);
            client.Received().PostAsync(Arg.Any <string>());
            Assert.IsTrue(result.Result.Author == "author");
            Assert.IsTrue(result.Result.Html == "html");
            Assert.IsTrue(result.Result.NumPages == "1");
            Assert.IsTrue(result.Result.PublicationDate == "date");
            Assert.IsTrue(result.Result.Title == "title");
        }
        public void ConvertToHtml_No_VersionDate()
        {
            TokenOptions tokenOptions = new TokenOptions()
            {
                IamApiKey = "iamApikey"
            };
            CompareComplyService service = new CompareComplyService(tokenOptions, "versionDate");

            service.VersionDate = null;

            using (FileStream fs = Arg.Any <FileStream>())
            {
                service.ConvertToHtml(fs);
            }
        }
예제 #12
0
        public void HtmlConversion_Success()
        {
            using (FileStream fs = File.OpenRead(contractAFilePath))
            {
                using (MemoryStream ms = new MemoryStream())
                {
                    fs.CopyTo(ms);
                    service.WithHeader("X-Watson-Test", "1");
                    var htmlConversionResult = service.ConvertToHtml(
                        file: ms,
                        fileContentType: "application/pdf",
                        model: compareComplyModel
                        );

                    Assert.IsNotNull(htmlConversionResult);
                    Assert.IsTrue(htmlConversionResult.Result.Html != null);
                    Assert.IsTrue(htmlConversionResult.Result.Html.Contains("AGREEMENT BETWEEN OWNER AND CONTRACTOR"));
                }
            }
        }
        public void ConvertToHtml_Success()
        {
            IClient  client  = Substitute.For <IClient>();
            IRequest request = Substitute.For <IRequest>();

            client.PostAsync(Arg.Any <string>())
            .Returns(request);

            CompareComplyService service = new CompareComplyService(client);
            var versionDate = "versionDate";

            service.VersionDate = versionDate;

            var file            = new MemoryStream();
            var fileContentType = "fileContentType";
            var model           = "model";

            var result = service.ConvertToHtml(file: file, fileContentType: fileContentType, model: model);

            request.Received().WithArgument("version", versionDate);
        }
예제 #14
0
        public void ConvertToHtml()
        {
            IamAuthenticator authenticator = new IamAuthenticator(
                apikey: "{apikey}");

            CompareComplyService service = new CompareComplyService("2018-10-15", authenticator);

            service.SetServiceUrl("{serviceUrl}");

            using (FileStream fs = File.OpenRead("{path-to-file}"))
            {
                using (MemoryStream ms = new MemoryStream())
                {
                    fs.CopyTo(ms);
                    var result = service.ConvertToHtml(
                        file: ms,
                        fileContentType: "{file-content-type}"
                        );

                    Console.WriteLine(result.Response);
                }
            }
        }
예제 #15
0
        //[TestMethod, ExpectedException(typeof(AggregateException))]
        public void ConvertToHtml_Catch_Exception()
        {
            IClient client = CreateClient();

            IRequest request = Substitute.For <IRequest>();

            client.PostAsync(Arg.Any <string>())
            .Returns(x =>
            {
                throw new AggregateException(new ServiceResponseException(Substitute.For <IResponse>(),
                                                                          Substitute.For <HttpResponseMessage>(HttpStatusCode.BadRequest),
                                                                          string.Empty));
            });

            CompareComplyService service = new CompareComplyService(client);

            service.SetServiceUrl("https://www.serviceurl.com");
            service.VersionDate = "2018-02-16";

            using (MemoryStream fs = new MemoryStream())
            {
                service.ConvertToHtml(fs, "filename");
            }
        }