Ejemplo n.º 1
0
        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]);
        }
Ejemplo n.º 2
0
        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);
        }