public void SetUp()
        {
            _macCalculatorMock = new Mock <IMacCalculator>();
            _macCalculatorMock.Setup(macCalc => macCalc.VerifyMac(It.IsAny <string>(),
                                                                  It.IsAny <string>(),
                                                                  It.IsAny <IEnumerable <BankMessageField> >()))
            .Returns(true);

            var macCalculatorFactoryMock = new Mock <MacCalculatorFactory>();

            macCalculatorFactoryMock
            .Setup(factory => factory.CreateCalculator(It.IsAny <string>(), It.IsAny <IPkiBankConfiguration>()))
            .Returns(_macCalculatorMock.Object);

            _timeProviderMock = new Mock <TimeProvider>();

            _messageMapper = new IPizzaMessageMapper(new BasicMessageFieldFinder(), macCalculatorFactoryMock.Object, _timeProviderMock.Object);

            _testData = new VisitableNameValueCollection
            {
                { "VK_DATETIME", string.Empty },
            };

            _authResponse = new IPizzaAuthResponse(string.Empty, new List <BankMessageField>
            {
                new BankMessageField
                {
                    FieldName = "VK_DATETIME",
                    MaxLength = int.MaxValue,
                }
            });

            _ipizzaConfiguration = new IPizzaConfiguration();
        }
Esempio n. 2
0
        public ActionResult AcceptAuth()
        {
            NameValueCollection parameters = System.Web.HttpContext.Current.Request.Params;
            IPizzaAuthResponse  result     = _banklinkApi.ParseIPizzaAuthResponse(parameters);

            TempData["blablabla"] = result;
            return(RedirectToAction("BankResponse"));
        }
Esempio n. 3
0
        public void ParseIPizzaAuthResponse_Verifies_Mac_With_Utf8_Encoding_When_Bank_Does_Not_Return_VK_ENCODING_Parameter()
        {
            IPizzaAuthResponse authResponse = _banklinkApi.ParseIPizzaAuthResponse(new NameValueCollection
            {
                { "VK_SERVICE", "3013" },
                { "VK_VERSION", "008" },
                { "VK_DATETIME", "2015-04-05T04:25:27+0300" },

                { "VK_SND_ID", "GENIPIZZA" },
                { "VK_REC_ID", "uid100010" },
                { "VK_NONCE", "9a3d6bd2-36d4-49b0-ae44-680c0281f39f" },

                { "VK_USER_NAME", "Tõõger Leõpäöld" },
                { "VK_USER_ID", "37602294565" },
                { "VK_COUNTRY", "EE" },

                { "VK_OTHER", "" },
                { "VK_TOKEN", "5" },
                { "VK_RID", "1428175410690" },

                { "VK_MAC", "Bj2GyCfHQPGygk4iiAyr5e7UvoV2I27p7EcxH6XbsSGob3TeGNjoQG0lCUh0I3hiFxw5h5Z4uV7d9d+YGfTZqiord1VSxI0F1gDJFgNg6DWrwtoMlQNtEWHjsXz5dzg/DwHIYVLgbM3ttOopyiOsp6xUS7Jx95V6ga5/T0KFhxBGHIXLfM4mWiC38MY/nW3W8vztdfjb1WTWWTG9n25wIrM2utznNAeUgqikaFi4Brvf3xVdoV0WuRuBJEBx82jZrih36VENF3njQqGxWzbn9lziDsAJK3cAM02o3g+sMfErD6ccUX+pTjehBOO1hDSx4QOkrG28ra96otDyAobhpA==" },
                // { "VK_ENCODING", "" },
                { "VK_LANG", "EST" },
            });

            Assert.That(authResponse.BankId, Is.EqualTo("GENIPIZZA"));
            Assert.That(authResponse.Country, Is.EqualTo("EE"));
            Assert.That(authResponse.IdCode, Is.EqualTo("37602294565"));
            Assert.That(authResponse.Language, Is.EqualTo("EST"));
            Assert.That(authResponse.Nonce, Is.EqualTo("9a3d6bd2-36d4-49b0-ae44-680c0281f39f"));
            Assert.That(authResponse.Other, Is.Empty);
            Assert.That(authResponse.RequestDateTime,
                        Is.EqualTo(DateTime.ParseExact("2015-04-05T04:25:27+0300", "yyyy-MM-ddTHH:mm:sszz00", CultureInfo.InvariantCulture)));

            // Bank didn't send encoding back
            Assert.That(authResponse.RequestEncoding, Is.Empty);
            Assert.That(authResponse.RequestId, Is.EqualTo("1428175410690"));
            Assert.That(authResponse.Token, Is.EqualTo("5"));
            Assert.That(authResponse.UserName, Is.EqualTo("Tõõger Leõpäöld"));
            Assert.That(authResponse.User, Is.Empty);
        }
Esempio n. 4
0
        public void ParseIPizzaAuthResponse_Verify_3012_Response_Parameters()
        {
            IPizzaAuthResponse authResponse = _banklinkApi.ParseIPizzaAuthResponse(new NameValueCollection
            {
                { "VK_SERVICE", "3012" },
                { "VK_VERSION", "008" },
                { "VK_DATETIME", "2015-04-05T08:30:31+0300" },

                { "VK_SND_ID", "GENIPIZZA" },
                { "VK_REC_ID", "uid100010" },
                { "VK_USER_NAME", "Tõõger Leõpäöld" },

                { "VK_USER_ID", "37602294565" },
                { "VK_COUNTRY", "EE" },
                { "VK_OTHER", "" },

                { "VK_TOKEN", "5" },
                { "VK_RID", "1428211826915" },

                { "VK_MAC", "ERyUeE71UFwdEUqbKzOeByxDhHDFLPw5EDh7nXBHsMpA/JlRS/DBeviBXBYx7w72Zu7VYoc8yC4fgYJ935OJrAnBVnBwUIVg2hArrDE+/7piyon6ivZ9hNaSuWwgen1cyWZ8ObvtDcTnoRuBK/HEQjugjetzZO7Gdkdj/D/0fA+KQ8rZxojYQsXQ/HPbv9DVPNK9NPgG/Ir3UAdChkr5HYXREc4S+J0FQZafuJqJGvSDfOoe8Bc5uXl2VP12h30SCQeHuqLj//q19I1lXqIPHOxakjl00uJR8UBM41g/ZhH/2Lkbzm63KXhmavn862WoAEDpE4WaaHPpp07kIHyD+g==" },
                { "VK_ENCODING", "utf-8" },
                { "VK_LANG", "EST" },
            });


            Assert.That(authResponse.BankId, Is.EqualTo("GENIPIZZA"));
            Assert.That(authResponse.Country, Is.EqualTo("EE"));
            Assert.That(authResponse.IdCode, Is.EqualTo("37602294565"));
            Assert.That(authResponse.Language, Is.EqualTo("EST"));
            Assert.That(authResponse.Nonce, Is.Empty);
            Assert.That(authResponse.Other, Is.Empty);
            Assert.That(authResponse.RequestDateTime,
                        Is.EqualTo(DateTime.ParseExact("2015-04-05T08:30:31+0300", "yyyy-MM-ddTHH:mm:sszz00", CultureInfo.InvariantCulture)));
            Assert.That(authResponse.RequestEncoding, Is.EqualTo("utf-8"));
            Assert.That(authResponse.RequestId, Is.EqualTo("1428211826915"));
            Assert.That(authResponse.Token, Is.EqualTo("5"));
            Assert.That(authResponse.UserName, Is.EqualTo("Tõõger Leõpäöld"));
            Assert.That(authResponse.User, Is.Empty);
        }