Exemple #1
0
        public async Task CreateDocumentFromFile()
        {
            messageHandler.AddResponse(new Uri("https://test.io/api/documents"), DefaultResponseDocumentJson);

            var fileBytes            = Encoding.UTF8.GetBytes("This is a file");
            var expectedFileContents = Convert.ToBase64String(fileBytes);

            messageHandler.RequestSent += req =>
            {
                var body = req.Content.ReadAsAsync <DocumentRequest>().Result;
                Assert.NotNull(body);

                Assert.That(body.DocumentType, Is.EqualTo(DocumentType.Docx));
                Assert.That(body.Html, Is.Null);
                Assert.That(body.FileContents, Is.EqualTo(expectedFileContents));
            };

            var request  = new FileDocumentRequest("Test", fileBytes, DocumentType.Docx);
            var document = await client.CreateDocumentAsync(request);

            Assert.NotNull(document);
            Assert.That(document.Name, Is.EqualTo("Test"));
        }
Exemple #2
0
        public async Task CreateDocumentFromFileOnDisk()
        {
            messageHandler.AddResponse(new Uri("https://test.io/api/documents"), DefaultResponseDocumentJson);

            var          fileBytes = Encoding.UTF8.GetBytes("This is a file");
            const string path      = "D:\\path\\to\\file.docx";

            FileHelper.ExistsFunc   = p => p.Equals(path);
            FileHelper.FileReadFunc = p => fileBytes;

            var expectedFileContents = Convert.ToBase64String(fileBytes);

            messageHandler.RequestSent += req =>
            {
                var body = req.Content.ReadAsAsync <DocumentRequest>().Result;
                Assert.NotNull(body);

                Assert.That(body.DocumentType, Is.EqualTo(DocumentType.Docx));
                Assert.That(body.Html, Is.Null);
                Assert.That(body.FileContents, Is.EqualTo(expectedFileContents));
                Assert.That(body.Folder, Is.EqualTo("contracts"));
                Assert.That(body.OutputType, Is.EqualTo(DocumentOutputType.Email));
                Assert.That(body.OutputName, Is.EqualTo("From {$FirstName}"));
                Assert.That(body.Name, Is.EqualTo("Test"));
            };

            var request = new FileDocumentRequest("Test", path, DocumentType.Docx, DocumentOutputType.Email)
            {
                Folder     = "contracts",
                OutputName = "From {$FirstName}"
            };

            var document = await client.CreateDocumentAsync(request);

            Assert.NotNull(document);
            Assert.That(document.Name, Is.EqualTo("Test"));
        }