示例#1
0
        public void ConstructorWithInfo_InitializesContextErrors()
        {
            var info = new List <Info>();

            var exception = new ContextApiException(info);

            Assert.AreEqual(info, exception.ContextErrors);
            Assert.Null(exception.Context);
            Assert.Null(exception.Response);
            Assert.Null(exception.RequestInResponse);
            Assert.Null(exception.ContextInResponse);
        }
示例#2
0
        public void Message_IfErrorsDoesNotExist_ReturnsDefaultMessage(
            IEnumerable <Info> infosAsErrors,
            IRestResponse response,
            Context context)
        {
            var exception = new ContextApiException(
                infosAsErrors,
                response,
                It.IsAny <ApiContext>(),
                context,
                It.IsAny <Request>());

            var actual = exception.Message;

            Assert.NotNull(actual);
        }
示例#3
0
        public void ConstructorWithInfoAndResponseArguments_InitializesContextErrorsAndResponseProperties()
        {
            var info       = new List <Info>();
            var response   = new RestResponse();
            var apiContext = new ApiContext();
            var context    = new Context();
            var request    = new Request();

            var exception = new ContextApiException(info, response, apiContext, context, request);

            Assert.AreEqual(info, exception.ContextErrors);
            Assert.AreEqual(apiContext, exception.Context);
            Assert.AreEqual(response, exception.Response);
            Assert.AreEqual(request, exception.RequestInResponse);
            Assert.AreEqual(context, exception.ContextInResponse);
        }
示例#4
0
        public void Errors_ReturnsExpectedValue(
            IEnumerable <Info> infosAsErrors,
            IRestResponse response,
            Context context,
            List <string> expected)
        {
            var exception = new ContextApiException(
                infosAsErrors,
                response,
                It.IsAny <ApiContext>(),
                context,
                It.IsAny <Request>());

            var actual = exception.Errors;

            AssertExtension.AreObjectsValuesEqual(expected, actual);
        }
示例#5
0
        public void ConstructorWithSourceException_InitializesContextErrorsAndResponseProprtiesBasedOnSourceException()
        {
            var info            = new List <Info>();
            var response        = new RestResponse();
            var apiContext      = new ApiContext();
            var context         = new Context();
            var request         = new Request();
            var sourceException = new ContextApiException(info, response, apiContext, context, request);

            var exception = new ContextApiException(sourceException);

            Assert.AreEqual(sourceException.ContextErrors, exception.ContextErrors);
            Assert.AreEqual(sourceException.Context, exception.Context);
            Assert.AreEqual(sourceException.Response, exception.Response);
            Assert.AreEqual(sourceException.RequestInResponse, exception.RequestInResponse);
            Assert.AreEqual(sourceException.ContextInResponse, exception.ContextInResponse);
        }
示例#6
0
        public void Message_IfErrorsExists_ReturnsExpectedValue(
            IEnumerable <Info> infosAsErrors,
            IRestResponse response,
            Context context,
            string expected)
        {
            var exception = new ContextApiException(
                infosAsErrors,
                response,
                It.IsAny <ApiContext>(),
                context,
                It.IsAny <Request>());

            var actual = exception.Message;

            Assert.AreEqual(expected, actual);
        }
示例#7
0
        public void Constructor_InitializesCorrectly()
        {
            var contextErrors     = new List <Info>();
            var response          = new RestResponse();
            var context           = new ApiContext();
            var contextInResponse = new Context();
            var requestInResponse = new Request();
            var sourceException   = new ContextApiException(contextErrors, response, context, contextInResponse, requestInResponse);
            var coupon            = new Coupon();

            var result = new InvalidPromoCodeException(sourceException, coupon);

            Assert.IsInstanceOf <ApiException>(result);
            Assert.IsInstanceOf <ContextApiException>(result);
            Assert.AreEqual(coupon, result.Coupon);
            Assert.AreEqual(sourceException.ContextErrors, result.ContextErrors);
            Assert.AreEqual(sourceException.Response, result.Response);
            Assert.AreEqual(sourceException.Context, result.Context);
            Assert.AreEqual(sourceException.ContextInResponse, result.ContextInResponse);
            Assert.AreEqual(sourceException.RequestInResponse, result.RequestInResponse);
            Assert.AreEqual(sourceException.ResponseCode, result.ResponseCode);
            Assert.AreEqual(sourceException.Message, result.Message);
            Assert.AreEqual(sourceException.Errors, result.Errors);
        }
 public InvalidPromoCodeException(ContextApiException sourceException, Coupon coupon)
     : base(sourceException)
 {
     Coupon = coupon;
 }