예제 #1
0
        public void Fit_ToFull_Yes()
        {
            end = start.AddMinutes(5);
            broom1 = new BookableRoom(start, end, room);
            broom2 = new BookableRoom(end.AddMinutes(60), end.AddMinutes(65), new Room(10, resources2));
            course1.Duration = 1;
            course2.Duration = 1;
            course1.Students = 1;
            course2.Students = 1;

            day1 = new Day(new List<BookableRoom>() { broom1, broom2 });

            for (int i = 0; i < 5; i++)
            {
                Assert.IsTrue(day1.Fit(course1));
            }
            Assert.IsFalse(day1.Fit(course1));
            for (int i = 0; i < 5; i++)
            {
                Assert.IsTrue(day1.Fit(course2));
            }
            Assert.IsFalse(day1.Fit(course2));
        }
예제 #2
0
        public void Fit_OnlyOnce()
        {
            broom1 = new BookableRoom(start, end, room);
            broom2 = (BookableRoom)broom1.Clone();

            broomList1 = new List<BookableRoom>() { broom1, broom2 };
            day1 = new Day(broomList1);

            Assert.IsTrue(day1.Fit(course1));

            var fits = day1.Rooms.Where(roomX => roomX.IsCourseBooked(course1)).ToList();
            Assert.AreEqual(1, fits.Count);
        }