//[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);
            }
        }
Ejemplo n.º 2
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");
        }