Beispiel #1
0
        public void ButtonPayloadAsJsonResultsInExpectedSignatureString()
        {
            var signatureHelper = new SignatureHelper(config, new CanonicalBuilder());
            var payload         = "{\"storeId\":\"amzn1.application-oa2-client.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\"webCheckoutDetails\":{\"checkoutReviewReturnUrl\":\"https://localhost/test/CheckoutReview.php\",\"checkoutResultReturnUrl\":\"https://localhost/test/CheckoutResult.php\"}}";

            var stringToSign = signatureHelper.CreateStringToSign(payload);

            Assert.AreEqual("AMZN-PAY-RSASSA-PSS\n8dec52d799607be40f82d5c8e7ecb6c171e6591c41b1111a576b16076c89381c", stringToSign);
        }
Beispiel #2
0
        public void CreateStringToSignTest()
        {
            string canonicalRequest = "POST\n/live/in-store/v1/refund\naccept:application/json\ncontent-type:application/json\naccept;content-type\n95b0d65e9efb9f0b9e8c2f3b7744628c765477";
            var    canonicalBuilder = new Mock <CanonicalBuilder>();

            canonicalBuilder.Setup(p => p.HashThenHexEncode(canonicalRequest)).Returns("95b0d65e9efb9f0b9e8c2f3b77");

            signatureHelper = new SignatureHelper(config, canonicalBuilder.Object);
            string actualStringTosign   = signatureHelper.CreateStringToSign(canonicalRequest);
            string expectedStringToSign = "AMZN-PAY-RSASSA-PSS" + "\n" + "95b0d65e9efb9f0b9e8c2f3b77";

            canonicalBuilder.VerifyAll();
            Assert.AreEqual(expectedStringToSign, actualStringTosign);
        }
Beispiel #3
0
        public void SimpleGet()
        {
            // arrange
            var method     = HttpMethod.GET;
            var uri        = new Uri("http://pay-api.amazon.eu/");
            var apiRequest = new ApiRequest(uri, method);
            var expectedCanonicalRequest = "GET\n/\n\naccept:application/json\ncontent-type:application/json\nx-amz-pay-date:20180524T223710Z\nx-amz-pay-host:pay-api.amazon.eu\nx-amz-pay-region:eu\n\naccept;content-type;x-amz-pay-date;x-amz-pay-host;x-amz-pay-region\ne3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
            var expectedStringToSign     = "AMZN-PAY-RSASSA-PSS\n13fdf6db844bdfb9e9c0e27a4251ca04e60c29ca2132249c5dd1cb09c26e22f5";

            // act
            string actualCanonicalRequest = signatureHelper.CreateCanonicalRequest(apiRequest, defaultHeaders);
            string actualStringToSign     = signatureHelper.CreateStringToSign(actualCanonicalRequest);

            // assert
            Assert.AreEqual(expectedCanonicalRequest, actualCanonicalRequest);
            Assert.AreEqual(expectedStringToSign, actualStringToSign);
        }