public void RequiresPaymentToken()
        {
            var request = new CancelOrderRequest()
            {
                Token = null
            };

            //Throws when token is null
            Assert.ThrowsException <ArgumentNullException>
            (
                () =>
            {
                request.Validate();
            }
            );

            request.Token = String.Empty;
            //Throws when Token is empty string
            Assert.ThrowsException <ArgumentException>
            (
                () =>
            {
                request.Validate();
            }
            );

            //Does not throw when Token is not empty
            request.Token = System.Guid.NewGuid().ToString();
            request.Validate();
        }
        public void Validate_CancelOrderRequest_RequiresTerminalId()
        {
            var request = new CancelOrderRequest()
            {
                Operator   = "Test",
                OrderId    = System.Guid.NewGuid().ToString(),
                TerminalId = null
            };

            Assert.ThrowsException <ArgumentNullException>(() => request.Validate());

            request.TerminalId = String.Empty;
            Assert.ThrowsException <ArgumentException>(() => request.Validate());

            request.TerminalId = "   ";
            Assert.ThrowsException <ArgumentException>(() => request.Validate());
        }
        public void Validate_CancelOrderRequest_RequiresOrderId()
        {
            var request = new CancelOrderRequest()
            {
                Operator   = "Test",
                OrderId    = null,
                TerminalId = "2531"
            };

            Assert.ThrowsException <ArgumentNullException>(() => request.Validate());

            request.OrderId = String.Empty;
            Assert.ThrowsException <ArgumentException>(() => request.Validate());

            request.OrderId = "   ";
            Assert.ThrowsException <ArgumentException>(() => request.Validate());
        }