Пример #1
0
        public void DecodeIgnoreMinorVersion()
        {
            Bill bill = SampleQRCodeText.CreateBillData1();

            TestHelper.NormalizeSourceBill(bill);
            string qrCodeText = SampleQRCodeText.CreateQrCodeText1();

            qrCodeText = qrCodeText.Replace("\n0200\n", "\n0201\n");
            Bill bill2 = QRBill.DecodeQrCodeText(qrCodeText);

            TestHelper.NormalizeDecodedBill(bill2);
            Assert.Equal(bill, bill2);
        }
Пример #2
0
        public void TooFewLines()
        {
            Bill bill = SampleData.CreateExample2();

            bill.UnstructuredMessage = null;
            TestHelper.NormalizeSourceBill(bill);
            string qrText = QRBill.EncodeQrCodeText(bill);

            qrText = qrText.Substring(0, qrText.Length - 5);
            QRBillValidationException err = Assert.Throws <QRBillValidationException>(
                () => QRBill.DecodeQrCodeText(qrText));

            TestHelper.AssertSingleError(err.Result, ValidationConstants.KeyValidDataStructure, ValidationConstants.FieldQrType);
        }
Пример #3
0
        public void NoNLAfterEPD()
        {
            Bill bill = SampleData.CreateExample2();

            TestHelper.NormalizeSourceBill(bill);
            string qrText = QRBill.EncodeQrCodeText(bill);

            Assert.EndsWith("EPD", qrText);

            Bill bill2 = QRBill.DecodeQrCodeText(qrText);

            TestHelper.NormalizeDecodedBill(bill2);
            Assert.Equal(bill, bill2);
        }
Пример #4
0
        public void DecodeInvalidCodingType()
        {
            QRBillValidationException err = Assert.Throws <QRBillValidationException>(() => QRBill.DecodeQrCodeText(
                                                                                          "SPC\r\n0200\r\n0\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n"));

            TestHelper.AssertSingleError(err.Result, ValidationConstants.KeySupportedCodingType, ValidationConstants.FieldCodingType);
        }
Пример #5
0
        public void DecodeInvalidFormat3()
        {
            QRBillValidationException err = Assert.Throws <QRBillValidationException>(() => QRBill.DecodeQrCodeText(
                                                                                          "SPC1\r\n0200\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n"));

            TestHelper.AssertSingleError(err.Result, ValidationConstants.KeyValidDataStructure, ValidationConstants.FieldQrType);
        }
Пример #6
0
        private void DecodeInvalidVersion()
        {
            QRBillValidationException err = Assert.Throws <QRBillValidationException>(() => QRBill.DecodeQrCodeText(
                                                                                          "SPC\r\n0101\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n"));

            TestHelper.AssertSingleError(err.Result, ValidationConstants.KeySupportedVersion, ValidationConstants.FieldVersion);
        }
Пример #7
0
        private void DecodeInvalidFormat1()
        {
            QRBillValidationException err = Assert.Throws <QRBillValidationException>(() => QRBill.DecodeQrCodeText("garbage"));

            TestHelper.AssertSingleError(err.Result, ValidationConstants.KeyValidDataStructure, ValidationConstants.FieldQrType);
        }
Пример #8
0
        public void DecodeInvalidVersion(string qrCodeText)
        {
            QRBillValidationException err = Assert.Throws <QRBillValidationException>(() => QRBill.DecodeQrCodeText(qrCodeText));

            TestHelper.AssertSingleError(err.Result, ValidationConstants.KeyVersionUnsupported, ValidationConstants.FieldVersion);
        }
Пример #9
0
        public void InvalidText_KeyDataStructureInvalidError(string qrText)
        {
            QRBillValidationException err = Assert.Throws <QRBillValidationException>(() => QRBill.DecodeQrCodeText(qrText));

            TestHelper.AssertSingleError(err.Result, ValidationConstants.KeyDataStructureInvalid, ValidationConstants.FieldQrType);
        }