public void AddTextEvidence_nullOrEmptyContentThrowsArgumentException()
        {
            string            Content       = null;
            ArgumentException nullException = Assert.Throws <ArgumentException>(() => disputeGateway.AddTextEvidence("dispute", Content));

            Assert.AreEqual(nullException.Message, "Content cannot be empty");

            Content       = " ";
            nullException = Assert.Throws <ArgumentException>(() => disputeGateway.AddTextEvidence("dispute", Content));
            Assert.AreEqual(nullException.Message, "Content cannot be empty");

            TextEvidenceRequest textEvidenceRequest = new TextEvidenceRequest()
            {
                Content = null
            };

            nullException = Assert.Throws <ArgumentException>(() => disputeGateway.AddTextEvidence("dispute", textEvidenceRequest));
            Assert.AreEqual(nullException.Message, "Content cannot be empty");

            textEvidenceRequest = new TextEvidenceRequest()
            {
                Content = " "
            };
            nullException = Assert.Throws <ArgumentException>(() => disputeGateway.AddTextEvidence("dispute", textEvidenceRequest));
            Assert.AreEqual(nullException.Message, "Content cannot be empty");
        }
Beispiel #2
0
        public void Finalize_whenThereAreValidationErrorsDoesNotSucceed()
        {
            Dispute dispute = createSampleDispute();
            var textEvidenceRequest = new TextEvidenceRequest
            {
                Content = "my content",
                Category = "DEVICE_ID",
            };

            DisputeEvidence evidence = gateway.Dispute.AddTextEvidence(dispute.Id, textEvidenceRequest).Target;

            var result = gateway.Dispute.Finalize(dispute.Id);

            Assert.IsFalse(result.IsSuccess());

            Assert.AreEqual
                (
                    new HashSet<ValidationErrorCode>
                    {
                        ValidationErrorCode.DISPUTE_DIGITAL_GOODS_MISSING_EVIDENCE,
                        ValidationErrorCode.DISPUTE_DIGITAL_GOODS_MISSING_DOWNLOAD_DATE
                    },
                    new HashSet<ValidationErrorCode>(result.Errors.ForObject("Dispute").OnField("Dispute").Select(error => error.Code))
                );
            Dispute finalizedDispute = gateway.Dispute.Find(dispute.Id).Target;
            Assert.AreNotEqual(DisputeStatus.DISPUTED, finalizedDispute.Status);
            Assert.AreEqual(DisputeStatus.OPEN, finalizedDispute.Status);
        }
Beispiel #3
0
        public void AddTextEvidenceAsync_nullOrEmptyContentThrowsArgumentExceptionAsync()
        {
            Task.Run(async () =>
#endif
        {
            string Content = null;
            try
            {
                await disputeGateway.AddTextEvidenceAsync("dispute", Content);
                Assert.Fail("Expected NotFoundException.");
            }
            catch (ArgumentException exception)
            {
                Assert.AreEqual(exception.Message, "Content cannot be empty");
            }

            Content = " ";
            try
            {
                await disputeGateway.AddTextEvidenceAsync("dispute", Content);
                Assert.Fail("Expected NotFoundException.");
            }
            catch (ArgumentException exception)
            {
                Assert.AreEqual(exception.Message, "Content cannot be empty");
            }

            TextEvidenceRequest textEvidenceRequest = new TextEvidenceRequest()
            {
                Content = null
            };
            try
            {
                await disputeGateway.AddTextEvidenceAsync("dispute", textEvidenceRequest);
                Assert.Fail("Expected NotFoundException.");
            }
            catch (ArgumentException exception)
            {
                Assert.AreEqual(exception.Message, "Content cannot be empty");
            }

            textEvidenceRequest = new TextEvidenceRequest()
            {
                Content = " "
            };
            try
            {
                await disputeGateway.AddTextEvidenceAsync("dispute", textEvidenceRequest);
                Assert.Fail("Expected NotFoundException.");
            }
            catch (ArgumentException exception)
            {
                Assert.AreEqual(exception.Message, "Content cannot be empty");
            }
        }
#if net452
            ).GetAwaiter().GetResult();
        }
        public async Task AddTextEvidenceAsync_nullOrEmptyContentThrowsArgumentExceptionAsync()
        {
            string Content = null;

            try
            {
                await disputeGateway.AddTextEvidenceAsync("dispute", Content);

                Assert.Fail("Expected NotFoundException.");
            }
            catch (ArgumentException exception)
            {
                Assert.AreEqual(exception.Message, "Content cannot be empty");
            }

            Content = " ";
            try
            {
                await disputeGateway.AddTextEvidenceAsync("dispute", Content);

                Assert.Fail("Expected NotFoundException.");
            }
            catch (ArgumentException exception)
            {
                Assert.AreEqual(exception.Message, "Content cannot be empty");
            }

            TextEvidenceRequest textEvidenceRequest = new TextEvidenceRequest()
            {
                Content = null
            };

            try
            {
                await disputeGateway.AddTextEvidenceAsync("dispute", textEvidenceRequest);

                Assert.Fail("Expected NotFoundException.");
            }
            catch (ArgumentException exception)
            {
                Assert.AreEqual(exception.Message, "Content cannot be empty");
            }

            textEvidenceRequest = new TextEvidenceRequest()
            {
                Content = " "
            };
            try
            {
                await disputeGateway.AddTextEvidenceAsync("dispute", textEvidenceRequest);

                Assert.Fail("Expected NotFoundException.");
            }
            catch (ArgumentException exception)
            {
                Assert.AreEqual(exception.Message, "Content cannot be empty");
            }
        }
Beispiel #5
0
        public void AddTextEvidence_failsToAddEvidenceWithUnSupportedCategory()
        {
            Dispute dispute = createSampleDispute();
            TextEvidenceRequest request = new TextEvidenceRequest
            {
                Category = "NOTAREALCATEGORY",
                Content = "evidence",
            };
            var result = gateway.Dispute.AddTextEvidence(dispute.Id, request);

            Assert.IsFalse(result.IsSuccess());

            Assert.AreEqual(ValidationErrorCode.DISPUTE_CAN_ONLY_CREATE_EVIDENCE_WITH_VALID_CATEGORY, result.Errors.ForObject("Dispute").OnField("Evidence")[0].Code);
        }
Beispiel #6
0
        public void AddTextEvidence_addsEvidenceWithCateogry()
        {
            Dispute dispute = createSampleDispute();
            var textEvidenceRequest = new TextEvidenceRequest
            {
                Content = "my content",
                Category = "DEVICE_ID",
            };

            DisputeEvidence evidence = gateway.Dispute.AddTextEvidence(dispute.Id, textEvidenceRequest).Target;

            Assert.NotNull(evidence);

            DisputeEvidence foundEvidence = gateway.Dispute.Find(dispute.Id).Target.Evidence[0];

            Assert.NotNull(evidence.Category);
            Assert.AreEqual(evidence.Category, "DEVICE_ID");

            Assert.NotNull(foundEvidence);
        }
Beispiel #7
0
        public void AddTextEvidence_nonIntegerSequenceNumberThrowsArgumentException()
        {
            TextEvidenceRequest textEvidenceRequest = new TextEvidenceRequest()
            {
                Content = "content",
                Category = "Category",
                SequenceNumber = "four"
            };
            ArgumentException nullException = Assert.Throws<ArgumentException>(() => disputeGateway.AddTextEvidence("dispute", textEvidenceRequest));
            Assert.AreEqual(nullException.Message, "SequenceNumber must be an integer");

            textEvidenceRequest = new TextEvidenceRequest()
            {
                Content = "content",
                Category = "Category",
                SequenceNumber = "4.5"
            };
            nullException = Assert.Throws<ArgumentException>(() => disputeGateway.AddTextEvidence("dispute", textEvidenceRequest));
            Assert.AreEqual(nullException.Message, "SequenceNumber must be an integer");
        }
Beispiel #8
0
        public void AddTextEvidenceAsync_failsToAddEvidenceWithUnSupportedCategory()
        {
            Task.Run(async () =>
#endif
        {
            Dispute dispute = await createSampleDisputeAsync();

            TextEvidenceRequest request = new TextEvidenceRequest
            {
                Category = "NOTAREALCATEGORY",
                Content = "evidence",
            };
            var result = await gateway.Dispute.AddTextEvidenceAsync(dispute.Id, request);

            Assert.IsFalse(result.IsSuccess());

            Assert.AreEqual(ValidationErrorCode.DISPUTE_CAN_ONLY_CREATE_EVIDENCE_WITH_VALID_CATEGORY, result.Errors.ForObject("Dispute").OnField("Evidence")[0].Code);
        }
#if net452
            ).GetAwaiter().GetResult();
        }
Beispiel #9
0
        public void AddTextEvidenceAsync_nonIntegerSequenceNumberThrowsArgumentExceptionAsync()
        {
            Task.Run(async () =>
#endif
        {
            TextEvidenceRequest textEvidenceRequest = new TextEvidenceRequest()
            {
                Content = "content",
                Category = "Category",
                SequenceNumber = "four"
            };
            try
            {
                await disputeGateway.AddTextEvidenceAsync("dispute", textEvidenceRequest);
                Assert.Fail("Expected ArgumentException.");
            }
            catch (ArgumentException exception)
            {
                Assert.AreEqual(exception.Message, "SequenceNumber must be an integer");
            }

            textEvidenceRequest = new TextEvidenceRequest()
            {
                Content = "content",
                Category = "Category",
                SequenceNumber = "4.5"
            };
            try
            {
                await disputeGateway.AddTextEvidenceAsync("dispute", textEvidenceRequest);
                Assert.Fail("Expected ArgumentException.");
            }
            catch (ArgumentException exception)
            {
                Assert.AreEqual(exception.Message, "SequenceNumber must be an integer");
            }
        }
#if net452
            ).GetAwaiter().GetResult();
        }