public void TestMethod2()
        {
            int    distance   = 100;
            int    vehicle_id = 1;
            int    fuel_used  = 20;
            double expected   = 100;

            var test1 = new PerKmRental(1, 100, 20);

            double actual = test1.Price();

            Assert.AreEqual(expected, actual);
        }
Example #2
0
        private void Rent()
        {
            int    Kilometers;
            int    Litres;
            int    Days;
            string RentType;

            bool daysNeeded = int.TryParse(txtDaysRented.Text, out Days);


            if (isDailyRent)
            {
                RentType = "Daily Rate";
            }
            else
            {
                RentType = "Distance Rate";
            }
            Vehicle current = Vehicles.ElementAt(cbxChooseCar.SelectedIndex);

            if (current.NeedService)
            {
                MessageBox.Show("This vehicle needs a service and so cannot be rented");
            }
            else if (!int.TryParse(txtKmRent.Text, out Kilometers))
            {
                MessageBox.Show("Kilometers travelled must be a whole number");
            }
            else if (!int.TryParse(txtLitresRent.Text, out Litres))
            {
                MessageBox.Show("Litres used must be a whole number");
            }
            else if (isDailyRent && !daysNeeded)
            {
                MessageBox.Show("Days rented must not be blank");
            }
            else
            {
                if (isDailyRent)
                {
                    var Rent = new PerDayRental(Kilometers, Days, Litres);
                    var j    = new Journey(Rent.KilometersTravelled);
                    var fp   = new FuelPurchase(Rent.LitresUsed);
                    current.AddFuelPurchase(fp);
                    current.AddJourney(j);
                    current.TotalRevenue += Rent.TotalCost;
                }
                else
                {
                    var Rent = new PerKmRental(Kilometers, Litres);
                    var j    = new Journey(Rent.KilometersTravelled);
                    var fp   = new FuelPurchase(Rent.LitresUsed);
                    current.AddFuelPurchase(fp);
                    current.AddJourney(j);
                    current.TotalRevenue += Rent.TotalCost;
                }
                txtDaysRented.Clear();
                txtKmRent.Clear();
                txtLitresRent.Clear();
                MessageBox.Show($"New {RentType} Rental Successfully Saved");
            }
        }