Пример #1
0
        public async Task CreateTask()
        {
            // import

            var reqImport = new ImportUploadCreateRequest();

            var importTask = await _cloudConvertAPI.CreateTaskAsync(ImportUploadCreateRequest.Operation, reqImport);

            var path = @"TestFiles/input.pdf";

            byte[] file = await File.ReadAllBytesAsync(path);

            string fileName = "input.pdf";

            await _cloudConvertAPI.UploadAsync(importTask.Data.Result.Form.Url.ToString(), file, fileName, importTask.Data.Result.Form.Parameters);

            importTask = await _cloudConvertAPI.WaitTaskAsync(importTask.Data.Id);

            Assert.IsNotNull(importTask);
            Assert.AreEqual(importTask.Data.Status, API.Models.Enums.TaskStatus.finished);

            // export

            var reqExport = new ExportUrlCreateRequest
            {
                Input = importTask.Data.Id
            };

            var exportTask = await _cloudConvertAPI.CreateTaskAsync(ExportUrlCreateRequest.Operation, reqExport);

            Assert.IsNotNull(exportTask);

            exportTask = await _cloudConvertAPI.WaitTaskAsync(exportTask.Data.Id);

            Assert.IsNotNull(exportTask);
            Assert.IsTrue(exportTask.Data.Status == API.Models.Enums.TaskStatus.finished);

            var fileExport = exportTask.Data.Result.Files.FirstOrDefault();

            Assert.IsNotNull(fileExport);
            Assert.AreEqual(fileExport.Filename, "input.pdf");

            using (var client = new WebClient()) client.DownloadFile(fileExport.Url, fileExport.Filename);
        }
Пример #2
0
        public async Task Upload()
        {
            var req = new ImportUploadCreateRequest();

            var    path = AppDomain.CurrentDomain.BaseDirectory + @"Responses/upload_task_created.json";
            string json = File.ReadAllText(path);

            _cloudConvertAPI.Setup(cc => cc.CreateTaskAsync(ImportUploadCreateRequest.Operation, req))
            .ReturnsAsync(JsonConvert.DeserializeObject <Response <TaskResponse> >(json));

            var task = await _cloudConvertAPI.Object.CreateTaskAsync(ImportUploadCreateRequest.Operation, req);

            Assert.IsNotNull(task);

            var pathFile = AppDomain.CurrentDomain.BaseDirectory + @"TestFiles/input.pdf";

            byte[] file     = File.ReadAllBytes(pathFile);
            string fileName = "input.pdf";

            _cloudConvertAPI.Setup(cc => cc.UploadAsync(task.Data.Result.Form.Url.ToString(), file, fileName, task.Data.Result.Form.Parameters));

            await _cloudConvertAPI.Object.UploadAsync(task.Data.Result.Form.Url.ToString(), file, fileName, task.Data.Result.Form.Parameters);
        }