public void should_return_dictionary_of_options() { var options = new Documents.UploadSessionOptions { Size = 102400, Name = "document.pdf", Disposition = DocumentDisposition.Permanent, Sharing = DocumentSharing.Private }; var actual = options.ToDictionary(); Assert.AreEqual(4, actual.Keys.Count); var key = "size"; Assert.IsTrue(actual.ContainsKey(key)); Assert.AreEqual(options.Size.ToString(), actual[key]); key = "name"; Assert.IsTrue(actual.ContainsKey(key)); Assert.AreEqual(options.Name, actual[key]); key = "disposition"; Assert.IsTrue(actual.ContainsKey(key)); Assert.AreEqual("permanent", actual[key]); key = "sharing"; Assert.IsTrue(actual.ContainsKey(key)); Assert.AreEqual("private", actual[key]); }
public void can_create_and_delete_document_upload_session() { var options = new Documents.UploadSessionOptions { Name = "document.pdf", Size = 102400, Disposition = DocumentDisposition.SingleUse, Sharing = DocumentSharing.Private }; var sessionId = _interfax.Outbound.Documents.CreateUploadSession(options).Result; Assert.IsNotNull(sessionId); var sessionStatus = _interfax.Outbound.Documents.GetUploadSession(sessionId).Result; Assert.IsNotNull(sessionStatus); Assert.AreEqual(options.Name, sessionStatus.FileName); Assert.AreEqual(options.Size, sessionStatus.FileSize); Assert.AreEqual(options.Disposition, sessionStatus.Disposition); Assert.AreEqual(options.Sharing, sessionStatus.Sharing); Assert.AreEqual(DocumentStatus.Created, sessionStatus.Status); var result = _interfax.Outbound.Documents.CancelUploadSession(sessionId).Result; Assert.AreEqual("OK", result); var exception = Assert.ThrowsException <AggregateException>(() => { var response = _interfax.Outbound.Documents.GetUploadSession(sessionId).Result; }); var apiException = exception.InnerExceptions[0] as ApiException; Assert.IsNotNull(apiException); var error = apiException.Error; Assert.AreEqual(HttpStatusCode.NotFound, apiException.StatusCode); Assert.AreEqual(-1062, error.Code); Assert.AreEqual("Wrong uploaded document resource", error.Message); Assert.IsNull(error.MoreInfo); }