Esempio n. 1
0
        public void TestHandleBarcode()
        {
            // prepare
            var barcodes = new List <BarcodeEventArgs>();
            var cat      = new TestProductCatalogus();
            var kassa    = new Kassa(cat);

            kassa.BarcodeScanned += (sender, e) =>
            {
                barcodes.Add(e);
            };

            // test
            cat.ReturnProduct = new Product("01", "Test product 01!", 0.50m);
            var test1 = kassa.handleBarcode("01");

            cat.ReturnProduct = null;
            var test2 = kassa.handleBarcode("");

            cat.ReturnProduct = new Product("04", "Test product 04!", 0.50m);
            var test3 = kassa.handleBarcode("04");

            // validate
            Assert.IsTrue(test1, "Product 01 not found where one should be!");
            Assert.IsFalse(test2, "Product 02 found where none should be!");
            Assert.IsTrue(test3, "Product 04 not found where one should be!");

            Assert.AreEqual(2, barcodes.Count);
            Assert.AreEqual("01", barcodes[0].Product.Barcode);
            Assert.AreEqual("04", barcodes[1].Product.Barcode);
        }
Esempio n. 2
0
 public InlogScherm(Kassa kassa, KassaApp app, MessageType type)
 {
     InitializeComponent();
     this.type = type;
     App       = app;
     Kassa     = kassa;
 }
Esempio n. 3
0
        public void TestShowAllProducts()
        {
            // prepare
            IList <IProduct> displays = null;
            var cat = new TestProductCatalogus();

            cat.ReturnProductList = new List <IProduct>
            {
                new Product("01", "Test product 01!", 0.01m),
                new Product("02", "Test product 02!", 0.02m)
            };
            var kassa = new Kassa(cat);

            kassa.DisplayAllProducts += (sender, e) =>
            {
                displays = e.Products;
            };

            // test
            kassa.showAllProducts();

            // validate
            Assert.IsNotNull(displays);
            Assert.AreEqual(2, displays.Count);

            Assert.AreEqual(cat.ReturnProductList, displays);
        }
Esempio n. 4
0
 private void numericUpDown1_ValueChanged(object sender, EventArgs e)
 {
     Fuel.Volume = Convert.ToDouble(numericUpDown1.Value);
     Kassa.Cost  = Math.Round(Fuel.Price * Fuel.Volume, 2);
     label5.Text = "Сумма: " + Kassa.Cost + " руб.";
     label6.Text = "Сдача: " + Kassa.GetBalance(Kassa.Сontribution, Kassa.Cost) + " руб.";
 }
Esempio n. 5
0
        public async Task <IActionResult> PutKassa(int id, Kassa kassa)
        {
            if (id != kassa.Id)
            {
                return(BadRequest());
            }

            _context.Entry(kassa).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!KassaExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Esempio n. 6
0
        public void TestHandleBarcodeClientDisplay()
        {
            // prepare
            var displays = new List <(decimal total, IProduct product)>();
            var cat      = new TestProductCatalogus();
            var kassa    = new Kassa(cat);

            kassa.DisplayToClient += (sender, e) =>
            {
                displays.Add((e.TotalPrice, e.Product));
            };

            // test
            cat.ReturnProduct = new Product("01", "Test product 01!", 0.50m);
            var test1 = kassa.handleBarcode("01");

            cat.ReturnProduct = null;
            var test2 = kassa.handleBarcode("");

            cat.ReturnProduct = new Product("03", "Test product 03!", 0.75m);
            var test3 = kassa.handleBarcode("04");

            // validate
            Assert.AreEqual(2, displays.Count);

            Assert.AreEqual(0.50m, displays[0].total);
            Assert.IsNotNull(displays[0].product);
            Assert.AreEqual("Test product 01!", displays[0].product.Description);

            Assert.AreEqual(1.25m, displays[1].total);
            Assert.IsNotNull(displays[1].product);
            Assert.AreEqual("Test product 03!", displays[1].product.Description);
        }
Esempio n. 7
0
        private void comboBox1_SelectedValueChanged(object sender, EventArgs e)

        {
            //устанавливает марку топлива
            Fuel.Mark = comboBox1.Items[comboBox1.SelectedIndex].ToString();

            // Смотрим, какое по счету значение в списке нами выбрано:
            switch (comboBox1.SelectedIndex)
            {
            case 0: Fuel.Price = 43.5; break;     //аи-92

            case 1: Fuel.Price = 45.5; break;     //аи-95

            case 2: Fuel.Price = 47.0; break;     //аи-98

            case 3: Fuel.Price = 45; break;       //дт
            }

            Fuel.Volume = Kassa.FuelToAmountOfMoney / Fuel.Price;             //объём на необходимую сумму денег
            if (Fuel.Volume == 0)
            {
                numericUpDown1.Value = numericUpDown1.Value;
                Fuel.Volume          = Convert.ToDouble(numericUpDown1.Value);
            }
            else
            {
                //установка значения объема в поле кол-во топлива
                numericUpDown1.Value = Convert.ToDecimal(Fuel.Volume.ToString());
            }

            Kassa.Cost = Math.Round(Fuel.Price * Fuel.Volume, 2);             //стоимость итого

            label5.Text = "Сумма: " + Kassa.Cost + " руб.";
            label6.Text = "Сдача: " + Kassa.GetBalance(Kassa.Сontribution, Kassa.Cost) + " руб.";
        }
Esempio n. 8
0
        public void GetResponse_ResponseDataIsNull_ReturnsNull()
        {
            Kassa kassa = new Kassa(_configuration);

            IPaymentResponse response = kassa.GetResponse((NameValueCollection)null);

            Assert.IsNull(response);
        }
Esempio n. 9
0
        public void GetPaymentHtml_HttpClientReturnsNull_ReturnsNull()
        {
            Kassa          kassa  = new Kassa(_configuration);
            TestHttpClient client = new TestHttpClient((string)null);

            string result = kassa.GetPaymentHtml(client, _request);

            Assert.IsNull(result);
        }
Esempio n. 10
0
        public void GetPaymentHtml_HttpClientReturnsEmptyArray_ReturnsNull()
        {
            Kassa          kassa  = new Kassa(_configuration);
            TestHttpClient client = new TestHttpClient(string.Empty);

            string result = kassa.GetPaymentHtml(client, _request);

            Assert.AreEqual(string.Empty, result);
        }
Esempio n. 11
0
        private Program()
        {
            kassa  = new Kassa();
            login  = new Login();
            keuken = new Keuken();

            current = login;
            Application.Run(login);
        }
Esempio n. 12
0
        public async Task GetResponse_HttpRequestIsNull_ThrowsException()
        {
            Kassa kassa = new Kassa(_configuration);

            await ExceptionAssert.ThrowsArgumentNullExceptionAsync("request", async() =>
            {
                await kassa.GetResponse((HttpRequest)null);
            });
        }
Esempio n. 13
0
        public void GetPaymentHtml_HttpClientIsNull_ThrowsException()
        {
            Kassa kassa = new Kassa(_configuration);

            ExceptionAssert.ThrowsArgumentNullException("client", () =>
            {
                kassa.GetPaymentHtml(null, new PaymentRequest());
            });
        }
Esempio n. 14
0
        public void GetPaymentHtml_PaymentRequestIsNull_ThrowsException()
        {
            Kassa kassa = new Kassa(_configuration);

            ExceptionAssert.ThrowsArgumentNullException("request", () =>
            {
                kassa.GetPaymentHtml(null);
            });
        }
Esempio n. 15
0
        public async Task GetResponse_PostedDataIsInvalid_ThrowsException()
        {
            Kassa kassa = new Kassa(_configuration);

            await ExceptionAssert.ThrowsAsync <InvalidOperationException>("The value for Data should not be null.", async() =>
            {
                await kassa.GetResponse(new TestHttpRequest());
            });
        }
Esempio n. 16
0
        public async Task GetPaymentHtml_PaymentRequestIsNull_ThrowsException()
        {
            Kassa kassa = new Kassa(_configuration);

            await ExceptionAssert.ThrowsArgumentNullExceptionAsync("request", async() =>
            {
                await kassa.GetPaymentHtml(null);
            });
        }
Esempio n. 17
0
        public void GetResponse_HttpRequestIsNull_ThrowsException()
        {
            Kassa kassa = new Kassa(_configuration);

            ExceptionAssert.ThrowsArgumentNullException("request", () =>
            {
                kassa.GetResponse((HttpRequest)null);
            });
        }
Esempio n. 18
0
        public async Task GetPaymentHtml_HttpClientReturnsEmptyString_ReturnsNull()
        {
            Kassa          kassa  = new Kassa(_configuration);
            TestHttpClient client = new TestHttpClient(string.Empty);

            string result = await kassa.GetPaymentHtml(client, _request);

            Assert.AreEqual(string.Empty, result);
        }
Esempio n. 19
0
        public async Task GetPaymentHtml_HttpClientReturnsNull_ReturnsNull()
        {
            Kassa          kassa  = new Kassa(_configuration);
            TestHttpClient client = new TestHttpClient(null);

            string result = await kassa.GetPaymentHtml(client, _request);

            Assert.IsNull(result);
        }
Esempio n. 20
0
        public void GetResponse_PostedDataIsInvalid_ThrowsException()
        {
            Kassa kassa = new Kassa(_configuration);

            ExceptionAssert.Throws <InvalidOperationException>("The value for Data should not be null.", () =>
            {
                kassa.GetResponse(new HttpRequest("foo", "https://bar.com", string.Empty));
            });
        }
Esempio n. 21
0
        public void GetPaymentHtml_RequestIsInvalid_ThrowsException()
        {
            Kassa          kassa   = new Kassa(_configuration);
            PaymentRequest request = new PaymentRequest();

            ExceptionAssert.Throws <InvalidOperationException>("The value for Amount should be higher than 0.", () =>
            {
                kassa.GetPaymentHtml(new HttpClient(), request);
            });
        }
Esempio n. 22
0
        public async Task GetPaymentHtml_RequestIsInvalid_ThrowsException()
        {
            Kassa          kassa   = new Kassa(_configuration);
            PaymentRequest request = new PaymentRequest();

            await ExceptionAssert.ThrowsAsync <InvalidOperationException>("The value for Amount should be higher than 0.", async() =>
            {
                await kassa.GetPaymentHtml(new HttpClient(), request);
            });
        }
Esempio n. 23
0
        public void GetPaymentHtml_HttpClientReturnsResponse_ReturnsResponse()
        {
            Kassa          kassa  = new Kassa(_configuration);
            TestHttpClient client = new TestHttpClient("TestHttpClient");

            string result = kassa.GetPaymentHtml(client, _request);

            Assert.AreEqual("TestHttpClient", result);
            Assert.AreEqual("HP_1.0", client.PostedData.InterfaceVersion);
            Assert.AreEqual("merchantId=123456789012345|keyVersion=1|amount=100|currencyCode=208|normalReturnUrl=https://www.github.com/|transactionReference=1234", client.PostedData.Data);
            Assert.AreEqual("903c94c085a024859f4e30322c87f705f509d2ba44446ddeafc1c18a336a82a9", client.PostedData.Seal);
            Assert.AreEqual(new Uri("https://www.github.com"), client.PostedUrl);
        }
Esempio n. 24
0
        public async Task <ActionResult <Kassa> > PostKassa(Kassa kassa)
        {
            kassa.Active      = true;
            kassa.DateAdded   = DateTime.UtcNow;
            kassa.DateUpdated = DateTime.UtcNow;
            kassa.UpdatedBy   = 1; //TODO: chaneg user Id's in future to user
            kassa.CreatedBy   = 1; //TODO: chaneg user Id's in future to user

            _context.Kassa.Add(kassa);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetKassa", new { id = kassa.Id }, kassa));
        }
Esempio n. 25
0
        public void GetResponse_ResponseValid_ReturnsResult()
        {
            Kassa           kassa    = new Kassa(_configuration);
            PaymentPostData postData = new PaymentPostData()
            {
                Data = $"merchantId={_configuration.MerchantId}|amount=4200",
                Seal = "0e14ed66182e64d1eed8623d946032648dafa6043f87fc7e4fb8eb2e40469781",
            };

            IPaymentResponse response = kassa.GetResponse(postData);

            Assert.IsNotNull(response);
            Assert.AreEqual(42.0m, response.Amount);
        }
Esempio n. 26
0
        public void TestInitatePaymentEmptyCart()
        {
            // prepare
            var cat   = new TestProductCatalogus();
            var kassa = new Kassa(cat);

            // test
            decimal payedAmount = 1m;

            decimal i = kassa.initatePayment(payedAmount);

            // validate
            Assert.AreEqual(1m, i);
        }
Esempio n. 27
0
        public void GetResponse_ResponseIsInvalid_ThrowsException()
        {
            Kassa           kassa    = new Kassa(_configuration);
            PaymentPostData postData = new PaymentPostData()
            {
                Data = "test=test",
                Seal = "seal",
            };

            ExceptionAssert.Throws <InvalidOperationException>($"The seal is invalid.{Environment.NewLine}Expected value: f5db08a8cfdc7245247e8ad08d88e12e96435ce1bd11c781ab170c80d6a4668d.", () =>
            {
                kassa.GetResponse(postData);
            });
        }
Esempio n. 28
0
        private void textBox2_TextChanged(object sender, EventArgs e)
        {
            if (textBox2.Text == "")
            {
                Kassa.Сontribution = 0;
            }
            else
            {
                Kassa.Сontribution = Convert.ToDouble(textBox2.Text);
            }

            Kassa.Cost  = Math.Round(Fuel.Price * Fuel.Volume, 2);
            label6.Text = "Сдача: " + Kassa.GetBalance(Kassa.Сontribution, Kassa.Cost) + " руб.";
        }
Esempio n. 29
0
        private List <Kassa> ReadTables(DataTable dataTable)
        {
            List <Kassa> kassas = new List <Kassa>();

            foreach (DataRow dr in dataTable.Rows)
            {
                Kassa kassa = new Kassa();
                kassa.DrankjeNaam = (string)dr["Naam"];
                kassa.Naam        = (string)dr["Voornaam"];


                kassas.Add(kassa);
            }
            return(kassas);
        }
Esempio n. 30
0
        public void GetResponse_ResponseDataIsValid_ReturnsResponse()
        {
            Kassa kassa = new Kassa(_configuration);

            NameValueCollection responseData = new NameValueCollection()
            {
                { "Data", $"merchantId={_configuration.MerchantId}|amount=4200" },
                { "InterfaceVersion", "HP_1.0" },
                { "Seal", "0e14ed66182e64d1eed8623d946032648dafa6043f87fc7e4fb8eb2e40469781" }
            };

            IPaymentResponse response = kassa.GetResponse(responseData);

            Assert.IsNotNull(response);
            Assert.AreEqual(42m, response.Amount);
        }