Beispiel #1
0
        public void TestInvoiceHasCorrectPay()
        {
            //Arrange
            DateTime registrationTime  = DateTime.Now;
            int      minutes           = 10;
            DateTime payTime           = registrationTime.AddMinutes(minutes);
            int      expectedPayAmount = (minutes * Invoice.BASE_COST_PER_MINUTE) + Invoice.BASE_COST_PER_MINUTE;
            Person   person            = new Person
            {
                Name = "Test Testsson2",
                SSN  = Guid.NewGuid().ToString()
            };
            Invoice invoice = new Invoice {
                RegistrationTime = registrationTime,
                Paid             = false,
                Person           = person
            };

            //Act
            invoice.AddEntityToDatabase();
            invoice.Pay(payTime);

            //Assert
            Assert.AreEqual(expectedPayAmount, invoice.AmountPaid);
            using SpacePortDBContext context = new SpacePortDBContext();
            context.Persons.Remove(person);
            context.Invoices.Remove(invoice);
            context.SaveChanges();
        }
Beispiel #2
0
        public SpacePort SpacePortExists(int spacePortID)
        {
            using var context = new SpacePortDBContext();
            var result = context.SpacePorts.Where(x => x.SpacePortID == spacePortID);

            return((result.Count() == 0) ? null : result.First());
        }
        internal static Person GetEntityFromDatabase(string ssn)
        {
            using SpacePortDBContext context = new SpacePortDBContext();
            var person = context.Persons.Where(x => x.SSN == ssn).First();

            return(person);
        }
        internal void UpdateEntityInDatabase()
        {
            using var context = new SpacePortDBContext();
            var invoiceContext = context.Set <ParkingSpot>();

            invoiceContext.Update(this);
            context.SaveChanges();
        }
        public static void FreeSpotByID(int parkingSpotID)
        {
            using var context = new SpacePortDBContext();
            var res = context.ParkingSpots.Where(x => x.ParkingSpotID == parkingSpotID).FirstOrDefault();

            if (res != null)
            {
                res.Occupied = false;
                context.Set <ParkingSpot>().Update(res);
                context.SaveChanges();
            }
        }
        internal static void AddEntityToDatabase(string ssn, string name)
        {
            var myperson = new Person
            {
                Name = name,
                SSN  = ssn
            };

            using var context = new SpacePortDBContext();
            context.Set <Person>().Add(myperson);
            context.SaveChanges();
        }
Beispiel #7
0
        private void DisplaySpacePorts()
        {
            Styling.ConsolePrint("\nExisting spaceports:");

            using var context = new SpacePortDBContext();
            var spaceports = context.SpacePorts;

            foreach (SpacePort spaceport in spaceports)
            {
                Styling.ConsolePrint($"ID: {spaceport.SpacePortID} " +
                                     $"\tName:  {spaceport.Name.PadRight(14,' ')} " +
                                     $"\tStatus:  {(spaceport.HasAvailableParkingspots() ? "Available Parkingspots" : "Closed")}", 0);
            }
        }
Beispiel #8
0
        internal void AddEntityToDatabase()
        {
            using var context = new SpacePortDBContext();
            var session = new ParkingSession()
            {
                ParkingToken  = this.ParkingToken,
                ParkingSpotID = ParkingSpot.ParkingSpotID,
                SpaceShipID   = SpaceShip.SpaceShipID,
                SpacePortID   = this.SpacePort.SpacePortID,
                InvoiceID     = this.Invoice.InvoiceID
            };

            context.ParkingSessions.Add(session);
            context.SaveChanges();
        }
 internal static bool EntityExistsInDatabase(string ssn)
 {
     using var context = new SpacePortDBContext();
     return(context.Persons.Any(x => x.SSN == ssn));
 }