private List <Site> GetAvailableSites(Campground selectedCampground, List <int> bookedSiteIds)
        {
            //assemble list of sites in campground from database
            //if a site's ID is NOT in the list of booked site IDs, it is added to list of *available sites*

            SiteDAL     dal = new SiteDAL(DatabaseConnection);
            List <Site> allSitesInCampground = dal.AllSitesInCampground(selectedCampground.CampgroundId);

            List <Site> availableSites = new List <Site>();

            foreach (Site thisSite in allSitesInCampground)
            {
                bool booked = false;
                foreach (int bookedId in bookedSiteIds)
                {
                    if (thisSite.SiteId == bookedId)
                    {
                        booked = true;
                    }
                }
                if (booked == false)
                {
                    availableSites.Add(thisSite);
                }
            }
            return(availableSites);
        }
Esempio n. 2
0
        public void GetAllSitesParkTest()
        {
            SiteDAL     testObj = new SiteDAL(connectionString);
            List <Site> sites   = testObj.GetAvailableSitesPark(parkID, DateTime.Today, DateTime.Today);

            Assert.AreEqual(1, sites.Count);
        }
        public void GetAvailableCampgroundsTest()
        {
            int siteId;

            using (SqlConnection conn = new SqlConnection(connectionstring))
            {
                conn.Open();
                SqlCommand cmd = new SqlCommand("insert into site (accessible, max_occupancy, campground_id, site_number, utilities) values ('true', 100, 1, 1000, 'false');", conn);
                cmd.ExecuteNonQuery();
                cmd    = new SqlCommand("SELECT CAST(SCOPE_IDENTITY() as int);", conn);
                siteId = Convert.ToInt32(cmd.ExecuteScalar());
            }

            Reservation r = new Reservation();

            r.Name        = "Peter";
            r.Site_id     = siteId;
            r.From_date   = Convert.ToDateTime("01/01/01");
            r.To_date     = Convert.ToDateTime("01/05/01");
            r.Create_date = DateTime.Now;

            SiteDAL dal = new SiteDAL(connectionstring);

            List <Site> output = dal.GetAvailableCampsites(1, Convert.ToDateTime("01/02/01"), Convert.ToDateTime("01/03/01"));

            Assert.IsTrue(output.Count > 0);
        }
Esempio n. 4
0
        public void SiteCountTest()
        {
            SiteDAL          theseSites = new SiteDAL(connectionString);
            List <SiteModel> siteList   = theseSites.AvailableSiteSearch("1", "02-21-2018", "02-23-2018");

            Assert.AreEqual(siteCount + 1, siteList.Count);
        }
Esempio n. 5
0
        static void Main(string[] args)
        {
            // Get the connection string from the appsettings.json file
            IConfigurationBuilder builder = new ConfigurationBuilder()
                                            .SetBasePath(Directory.GetCurrentDirectory())
                                            .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);

            IConfigurationRoot configuration = builder.Build();

            string connectionString = configuration.GetConnectionString("Project");

            /********************************************************************
             * // If you do not want to use CLIMenu, you can remove the following
             *********************************************************************/
            // Create any DAOs needed here, and then pass them into main menu...
            ParkDAL        parkDal        = new ParkDAL(connectionString);
            CampgroundDAL  campDal        = new CampgroundDAL(connectionString);
            SiteDAL        siteDal        = new SiteDAL(connectionString);
            ReservationDAL reservationDAL = new ReservationDAL(connectionString);



            MainMenu mainMenu = new MainMenu(parkDal, campDal, siteDal, reservationDAL);  // You'll probably be adding daos to the constructor

            //Run the menu.
            mainMenu.Run();
        }
        }//ViewCampgroundsList

        private List <Site> CampgroundReservationSearchResults(int park_Id, int campground_id, DateTime from_date, DateTime to_date)
        {
            // Connect to Database.  Return onlty the first 5 available campsites per requirements;

            CampgroundDAL campgroundDal = new CampgroundDAL(DatabaseConnection);
            SiteDAL       siteDAL       = new SiteDAL(DatabaseConnection);
            List <Site>   sites         = siteDAL.GetAvailableSitesforCampground(campground_id, from_date, to_date);

            if (sites != null)
            {
                //Dispaly Site#, Max Occupancy, Accessibility, Max RV Length, and whether Utilities are available
                Console.WriteLine($"{"Site No.".PadRight(10)}{"Max Occup.".PadRight(15)}{"Accessible?".PadRight(15)}{"Max Rv Length".PadRight(15)}{"Utility".PadRight(15)}{"Stay Cost".PadRight(10)}");

                foreach (Site site in sites)
                {
                    TimeSpan daysBooking = (to_date.Date - from_date.Date);
                    int      days        = (int)daysBooking.TotalDays;

                    string cost         = ((campgroundDal.GetCost(campground_id) * days)).ToString("C").PadRight(10);
                    string siteWithCost = (site.ToString() + cost);
                    Console.WriteLine(siteWithCost);
                }
            }
            else
            {
                NoSitesAvailable();
            }
            return(sites);
        }//CampgroundReservationSearchResults
Esempio n. 7
0
        public void GetSitesTest()
        {
            SiteDAL     dal   = new SiteDAL(connectionString);
            List <Site> sites = dal.GetSites(campgroundId);

            Assert.AreEqual(1, sites.Count);
            Assert.AreEqual(500, sites[0].MaxRVLength);
        }
Esempio n. 8
0
        public void GetReservationTest()
        {
            SiteDAL            dal          = new SiteDAL(connectionString);
            List <Reservation> reservations = dal.GetReservation(campgroundId);

            Assert.AreEqual(1, reservations.Count);
            Assert.AreEqual("smith", reservations[0].Name);
        }
Esempio n. 9
0
        public void GetUnreservedCampsitesTest()
        {
            SiteDAL siteDAL = new SiteDAL(connectionString);

            IList <Site> testSiteList = siteDAL.GetUnreservedCampsites("2025-03-10", "2025-03-11", createdCampgroundID, 0, false, 0, false);

            Assert.IsNotNull(testSiteList);
            Assert.AreEqual(1, testSiteList.Count);
        }
Esempio n. 10
0
        public void AllSitesInCampgroundTest()
        {
            SiteDAL siteDal      = new SiteDAL(connectionString);
            int     campGroundId = 1;

            List <Site> sites = siteDal.AllSitesInCampground(campGroundId);

            Assert.AreEqual(numberOfSites + 1, sites.Count);
        }
Esempio n. 11
0
        private void SearchForAvailableReservations(int ParkID)
        {
            string      CampgroundChoice = CLIHelper.GetString("Which campground would you like?");
            string      ArrivalDate      = CLIHelper.GetDate("What is the arrival date?");
            string      DepartureDate    = CLIHelper.GetDate("What is the departure date?");
            SiteDAL     sdal             = new SiteDAL(DatabaseConnection);
            List <Site> slist            = sdal.ViewAvailReservations(CampgroundChoice, ArrivalDate, DepartureDate);

            if (slist.Count > 0)
            {
                CampgroundDAL cgdal         = new CampgroundDAL(DatabaseConnection);
                double        camgroundCost = cgdal.GetCampgroundCost(CampgroundChoice);
                Console.WriteLine("Available sites & details for your dates:");
                Console.WriteLine("Site ID" + " " + "Max Occupancy" + " " + "Accessible?" + " " + "Max RV Length" + " " + "Utilities" + " " + "Cost");

                foreach (Site item in slist)
                {
                    Console.Write("   " + item.site_id.ToString().PadRight(9) + " " + item.max_occupancy.ToString().PadRight(10) + " " + TrueFalse(item.accessible).ToString().PadRight(14) + " " + item.max_rv_length.ToString().PadRight(10) + " " + TrueFalse(item.utilities).ToString().PadRight(8) + " " + camgroundCost);
                    Console.WriteLine();
                }

                string siteChoiceToReserve = CLIHelper.GetString("Which site should be reserved (enter 0 to cancel)");

                if (siteChoiceToReserve == "0")
                {
                    return;
                }

                bool SiteIsInTheList = false;

                foreach (Site item in slist)
                {
                    if (item.site_id.ToString() == siteChoiceToReserve)
                    {
                        SiteIsInTheList = true;
                    }
                }

                if (!SiteIsInTheList)

                {
                    Console.WriteLine("Sorry, that Site ID isn't in our list!  Please start over.");
                    return;
                }

                string name = CLIHelper.GetString("What name should the reservation be made under?");
                MakeReservation(siteChoiceToReserve, name, ArrivalDate, DepartureDate);
            }
            else
            {
                Console.WriteLine("Sorry, no campsites are available. Please try again with different dates.");
                return;
            }
        }
Esempio n. 12
0
        private void ReserveSite(string name, int site, DateTime start, DateTime end)
        {
            SiteDAL dal = new SiteDAL(databaseConnection);
            //List<Reservation> reservations =
            int makeRes = dal.MakeReservation(name, site, start, end);

            //reservations.ForEach(res =>
            //{
            Console.WriteLine($"The reservation has been made and the confirmation id is {makeRes}");
            //});
        }
Esempio n. 13
0
        public void GetAvailableSitesParkwide_Test(int parkId, string fromDate, string toDate, int expectedCount)
        {
            //Arrange
            SiteDAL dal = new SiteDAL(ConnectionString);

            //Act
            var sites = dal.GetSitesParkwide(parkId, Convert.ToDateTime(fromDate), Convert.ToDateTime(toDate));

            //Assert
            Assert.AreEqual(expectedCount, sites.Count);
        }
Esempio n. 14
0
        public void GetSites()
        {
            //Arrange
            SiteDAL siteDAL = new SiteDAL(_connectionString);

            //Act
            List <Site> sites = siteDAL.GetSites(campground);

            //Assert
            Assert.AreEqual(1, sites.Count);
            Assert.AreEqual(_siteId, sites[0].SiteId);
        }
Esempio n. 15
0
        public void MakeReservationTest()
        {
            int     initialCount = reservationCount();
            SiteDAL dal          = new SiteDAL(connectionString);
            //Reservation reservations = new Reservation();
            //reservations.Name = "jones";
            //reservations.SiteId = siteId;
            DateTime StartDate = new DateTime(2016, 10, 12);
            DateTime EndDate   = new DateTime(2016, 10, 15);

            dal.MakeReservation("shaw", siteId, StartDate, EndDate);
            Assert.AreEqual(initialCount + 1, reservationCount());
        }
Esempio n. 16
0
        public void SearchForSiteTest()
        {
            // Arrange
            SiteDAL sDAL = new SiteDAL(connectionString);

            //Act
            IList <CampSite> site = sDAL.SearchForSite(1, 1, DateTime.Now.AddDays(4), DateTime.Now.AddDays(8));

            //Assert
            int sites = site.Count;

            Assert.AreEqual(4, sites);
        }
Esempio n. 17
0
        private void SeeUpcomingReservationsForParkCLI(Park park)
        {
            //Title Display
            Console.WriteLine("UNDER CONSTRUCTION: Upcoming Reservation feature coming soon!");
            Console.Clear();

            string snName = "Upcoming Park Reservations Menu";

            Console.SetCursorPosition((Console.WindowWidth - snName.Length) / 2, Console.CursorTop);
            Console.WriteLine(snName);

            string snNameDash = "--------------------------------------";

            Console.SetCursorPosition((Console.WindowWidth - snNameDash.Length) / 2, Console.CursorTop);
            Console.WriteLine(snNameDash);
            Console.WriteLine();

            //Set up DALs and get list of Reservations
            ReservationDAL     reservationDAL        = new ReservationDAL(DatabaseConnection);
            List <Reservation> upcomingReservations  = reservationDAL.GetReservationsForNext30DaysInPark(park);
            CampgroundDAL      campgroundDAL         = new CampgroundDAL(DatabaseConnection);
            List <Campground>  allCampgroundsForPark = campgroundDAL.GetAllCampgroundsForPark(park);
            SiteDAL            siteDAL  = new SiteDAL(DatabaseConnection);
            List <Site>        allSites = new List <Site>();


            //Display Reservations
            if (upcomingReservations.Count() == 0)
            {
                Console.WriteLine($"There are no reservations at {park.Name} National Park in the next 30 days.");
            }
            else
            {
                Console.WriteLine($"Reservations at {park.Name} National Park beginning within the next 30 days:");
                Console.WriteLine();
                int upcomingReservationDisplayCounter = 0;
                foreach (Reservation item in upcomingReservations)
                {
                    if (upcomingReservationDisplayCounter == 0)
                    {
                        Console.WriteLine("{0,-35}{1,-20}{2,-10}{3,-15}{4,-10}", "RESERVATION NAME", "CAMPGROUND", "SITE", "START DATE", "END DATE");
                    }
                    Console.WriteLine("{0,-35}{1,-20}{2,-10}{3,-15}{4,-10}", item.Name, item.CampgroundName, item.SiteId.ToString(), item.FromDate.ToShortDateString(), item.ToDate.ToShortDateString());
                    upcomingReservationDisplayCounter++;
                }
            }
            Console.WriteLine();

            Console.WriteLine("Press any key to return to Park Menu");
            Console.ReadKey();
        }
        public void Test_NoReservations_ReturnsOpenSiteId()
        {
            //Arrange
            SiteDAL  dal      = new SiteDAL(DatabaseConnection);
            DateTime fromDate = DateTime.Now;
            DateTime toDate   = DateTime.Now.AddDays(5);

            //Act
            List <Site> availableSites = dal.ViewAvailReservations(campgroundID.ToString(), fromDate.ToString(), toDate.ToString());

            //Assert
            Assert.AreEqual(1, availableSites.Count);
            Assert.AreEqual(SiteID, availableSites[0].site_id);
        }
        public void GetSites(int campgroundId, int expectedOutput)
        {
            // Arrange
            SiteDAL site = new SiteDAL(ConnectionString);

            // Act
            var listOfSites = site.GetSites(new Campground()
            {
                CampgroundId = campgroundId
            });

            // Assert
            Assert.AreEqual(expectedOutput, listOfSites.Count);
        }
        public void FindAvailableSites(int campgroundID, int expectedOutput)
        {
            // Arrange
            SiteDAL site = new SiteDAL(ConnectionString);

            // Act
            var listOfReservations = site.FindAvailableSites(new DateTime(2018, 4, 25), new DateTime(2018, 6, 19), new Campground()
            {
                CampgroundId = campgroundID
            });

            // Assert
            Assert.AreEqual(expectedOutput, listOfReservations.Count);
        }
        public void FindAvailableSitesAdvanced(int campgroundID, int expectedOutput)
        {
            // Arrange
            SiteDAL site = new SiteDAL(ConnectionString);

            // Act
            var listOfReservations = site.FindAvailableSites(new DateTime(2019, 6, 10), new DateTime(2019, 6, 15), new Campground()
            {
                CampgroundId = campgroundID
            }, 6, true, 0, false);

            // Assert
            Assert.AreEqual(expectedOutput, listOfReservations.Count);
        }
        private void SearchForSite()
        {
            Console.Clear(); //clears the screen and displays the campground options
            Console.WriteLine();
            Console.WriteLine("**Please note, if your reservation date is during the park off-season, campgrounds will be unavailable to book**");
            GetCampGrounds();
            Console.WriteLine();

            //searches to book reservation
            tempCampId = CLIHelper.GetInteger("Which campground would you like to reserve? (enter C to cancel and go back to park listing)");

            arriveDate = CLIHelper.GetDateTime("What is the arrival date? __/__/____");
            departDate = CLIHelper.GetDateTime("What is the departure date? __/__/____");

            SiteDAL dal = new SiteDAL(DatabaseConnection);

            IList <CampSite> campSites = dal.SearchForSiteTotalAmt(tempParkId, tempCampId, arriveDate, departDate);

            Console.WriteLine();
            Console.WriteLine(("Site No.").PadRight(15) + ("Max Occup.").PadRight(30) + ("Accessible?").PadRight(15) + ("Max RV Length").PadRight(15) + ("Utility").PadRight(15) + ("Fee").PadRight(15));
            if (campSites.Count > 0)
            {
                foreach (CampSite site in campSites)
                {
                    Console.WriteLine((site.SiteNumber.ToString()).PadRight(15) + (site.MaxOccupancy.ToString()).PadRight(30) + (site.Accessible.ToString()).PadRight(15) + (site.MaxRVLength.ToString()).PadRight(15) + (site.Utilities.ToString()).PadRight(15) + "$" + (site.Fee.ToString()).PadRight(15));
                }
                BookReservation();
            }
            else
            {
                Console.WriteLine("**** NO SPOTS OPEN TO RESERVE ****");
                Console.WriteLine("Press Y to go back to park options" + Environment.NewLine + "Press N to Exit");
                string choice = Console.ReadLine();
                switch (choice.ToLower())
                {
                case "y":
                    DisplayParkOptions();
                    break;

                case "n":
                    Environment.Exit(0);
                    break;

                default:
                    Console.WriteLine("Please Choose a valid option.");
                    break;
                }
            }
        }
Esempio n. 23
0
        public void SearchForSiteTotalTest()
        {
            // Arrange
            SiteDAL sDAL = new SiteDAL(connectionString);

            //Act
            double           p    = 0;
            IList <CampSite> site = sDAL.SearchForSiteTotalAmt(1, 1, DateTime.Now.AddDays(4), DateTime.Now.AddDays(8));

            foreach (CampSite s in site)
            {
                p = s.Fee;
            }
            //Assert
            Assert.AreEqual(140.00D, p);
        }
Esempio n. 24
0
        public void GetAvailableSitesTest()
        {
            //Arrange
            SiteDAL siteDAL = new SiteDAL(DatabaseConnection);
            //Act
            List<Site> availableSites = new List<Site>();
            availableSites = siteDAL.GetAvailableSitesforCampground(fk_campground_id1, fromDate, toDate);
            //Assert
            Assert.IsTrue(availableSites.Any(site => site.Site_Number==1001));
            Assert.AreEqual(availableSites.Count, 1);



            availableSites = siteDAL.GetAvailableSitesforCampground(fk_campground_id2, fromDate, toDate);
            Assert.IsTrue(availableSites.Any(site => site.Site_Number == 1002));
            Assert.IsTrue(availableSites.Any(site => site.Site_Number == 1003));
            Assert.AreEqual(availableSites.Count, 2);

            // out of season should not show..
                     
            // reserve site 1002 so it doesnt show available on request time
            // Open a SqlConnection object using the active transaction
           



        using (TransactionScope ts = new TransactionScope())
            {

            using (SqlConnection connection = new SqlConnection(DatabaseConnection))
            {
                SqlCommand command;
                 connection.Open();
                command = new SqlCommand(@"INSERT INTO reservation (site_id, name, from_date, to_date) VALUES (@site_id, 'Testing Family', @to_date, @from_date); SELECT CAST(SCOPE_IDENTITY() as int); ", connection);
                command.Parameters.AddWithValue("@site_id", site_id2);
                command.Parameters.AddWithValue("@name", "Testing");
                command.Parameters.AddWithValue("@from_date",fromDate);
                command.Parameters.AddWithValue("@to_date", toDate);
                int reservation_id = (int)command.ExecuteScalar();

            }
            availableSites = siteDAL.GetAvailableSitesforCampground(fk_campground_id2, fromDate, toDate);
            Assert.IsFalse(availableSites.Any(site => site.Site_Number == 1002));
            Assert.IsTrue(availableSites.Any(site => site.Site_Number == 1003));
            Assert.AreEqual(availableSites.Count, 1);
        }
    }
Esempio n. 25
0
        public void GetAllSitesForCampgroundTest()
        {
            //Arrange
            SiteDAL siteDAL = new SiteDAL(DatabaseConnection);
            List<Site> testSites1 = new List<Site>();
            List<Site> testSites2 = new List<Site>();
            //ACT

            testSites1 = siteDAL.GetAllSitesForCampground(fk_campground_id1);
           testSites2 = siteDAL.GetAllSitesForCampground(fk_campground_id2);
            //Assert

            Assert.IsTrue(testSites1.Any(site => site.Site_Number == 1001));
            Assert.AreEqual(testSites1.Count, 1);
            Assert.AreEqual(testSites2.Count, 2);

        }
Esempio n. 26
0
        private void MakeReservationCLI(Campground campground, int siteID, DateTime userArrivalDate, DateTime userDepartureDate)
        {
            string         reservationName  = CLIHelper.GetString("What name should the reservation be made under?");
            Site           chosenSite       = new Site();
            ReservationDAL reservationDAL   = new ReservationDAL(DatabaseConnection);
            Reservation    finalReservation = new Reservation()
            {
                SiteId     = siteID,
                Name       = reservationName,
                FromDate   = userArrivalDate,
                ToDate     = userDepartureDate,
                CreateDate = DateTime.Now
            };
            bool noExceptions = true;

            try
            {
                reservationDAL.MakeReservation(finalReservation);
            }
            catch (Exception e)
            {
                noExceptions = false;
                Console.WriteLine(e.Message);
                Console.WriteLine("Press Any Key to Return to Park Menu");
                Console.ReadKey();
            }

            if (noExceptions)
            {
                SiteDAL                siteDAL2 = new SiteDAL(DatabaseConnection);
                List <Site>            allSites = siteDAL2.GetSites(campground);
                Dictionary <int, Site> siteDictionaryForCampground = new Dictionary <int, Site>();
                foreach (Site item in allSites)
                {
                    siteDictionaryForCampground.Add(item.SiteId, item);
                }
                chosenSite = siteDictionaryForCampground[finalReservation.SiteId];
                List <Reservation> allReservations = reservationDAL.GetCurrentReservations(chosenSite);

                Console.WriteLine($"Reservation Booked! Your Confirmation Number is {allReservations[0].ReservationId}");
                Console.WriteLine();
                Console.WriteLine("Press any Key to return to menu");
                Console.ReadKey();
            }
        }
Esempio n. 27
0
        public void GetAvailableSitesTest()
        {
            SiteDAL siteDAL = new SiteDAL(connectionString);

            arriveDate = Convert.ToDateTime("12/17/2017");
            departDate = Convert.ToDateTime("12/18/2017");

            List <Site> sites = siteDAL.GetAvailableSites(cgID, arriveDate, departDate);

            Assert.AreEqual(1, sites.Count);

            //arriveDate = Convert.ToDateTime("12-16-2017");
            //departDate = Convert.ToDateTime("12-19-2017");

            //List<Site> siteTest2 = siteDAL.GetAvailableSites(cgID, arriveDate, departDate);

            //Assert.AreEqual(0, siteTest2.Count);
        }
        private void CheckAvailability()
        {
            GetAllCampgrounds();

            int      campgroundId = CLIHelper.GetInteger("Please select which Campground Id you would like to check the availability of : ");
            DateTime startDate    = CLIHelper.GetDateTime("When would you like start your reservation?");
            DateTime endDate      = CLIHelper.GetDateTime("When would you like end your reservation?");

            CampgroundDAL cdal = new CampgroundDAL(DatabaseConnection);
            Campground    reservedCampground = cdal.GetCampground(campgroundId);

            if (startDate.Month < reservedCampground.OpenFromMM)
            {
                Console.WriteLine("The campground is not open yet.");
                return;
            }
            if (endDate.Month > reservedCampground.OpenToMM)
            {
                Console.WriteLine("The campground is closed for the year.");
                return;
            }


            Console.WriteLine();

            SiteDAL     sdal = new SiteDAL(DatabaseConnection);
            List <Site> site = sdal.GetAvailableCampsites(campgroundId, startDate, endDate);

            PrintSites(site);

            Console.ReadLine();
            string input = CLIHelper.GetString(" Would you Like to confirm your reservation?").ToLower();

            if (input == "yes" || input == "y")
            {
                HelpMakeReservation(campgroundId, startDate, endDate);
            }
            else
            {
                Console.WriteLine("Returning to Main Menu");
                Console.ReadLine();
            }
        }
        public void RequestSiteWhenMyStayIsExactlyTheSameAsASavedReservation()
        {
            //Arrange
            SiteDAL  dal      = new SiteDAL(DatabaseConnection);
            DateTime fromDate = DateTime.Now.AddDays(2);
            DateTime toDate   = DateTime.Now.AddDays(8);

            DateTime alreadyInFromDate = DateTime.Now.AddDays(2);
            DateTime alreadyInToDate   = DateTime.Now.AddDays(8);

            ReservationDAL rdal = new ReservationDAL(DatabaseConnection);

            rdal.AddReservation(campgroundID.ToString(), "TestFamily", alreadyInFromDate.ToString(), alreadyInToDate.ToString());

            //Act
            List <Site> availableSites = dal.ViewAvailReservations(SiteID.ToString(), fromDate.ToString(), toDate.ToString());

            //Assert
            Assert.AreEqual(0, availableSites.Count);
        }
        public void RequestSitesThatOverlapTheStartOfASavedReservation()
        {
            //Arrange
            SiteDAL  dal      = new SiteDAL(DatabaseConnection);
            DateTime fromDate = DateTime.Now.AddDays(3);
            DateTime toDate   = DateTime.Now.AddDays(10);

            DateTime alreadyInFromDate = DateTime.Now.AddDays(1);
            DateTime alreadyInToDate   = DateTime.Now.AddDays(4);

            ReservationDAL rdal = new ReservationDAL(DatabaseConnection);

            rdal.AddReservation(campgroundID.ToString(), "TestFamily", alreadyInFromDate.ToString(), alreadyInToDate.ToString());

            //Act
            List <Site> availableSites = dal.ViewAvailReservations(SiteID.ToString(), fromDate.ToString(), toDate.ToString());

            //Assert
            Assert.AreEqual(0, availableSites.Count);
        }