public IEnumerator GetEnumerator()
        {
            int movieMockNumb                     = 0;
            IEnumerable <Movie> movies            = Mocks.GetMovies(movieMockNumb);
            WorkDay             workDay           = new WorkDay(new TimeSpan(10, 0, 0), new TimeSpan(15, 0, 0));
            TimeTableCreator    actualTimeTable   = new TimeTableCreator(movies, workDay);
            TimeTableCreator    expectedTimeTable = new TimeTableCreator(movies, workDay);

            expectedTimeTable.BestTimeTable = Mocks.GetExpectedTimeTable(new int[] { 0, 0, 2, 4 }, movieMockNumb, workDay);

            yield return(new object[]
            {
                actualTimeTable,
                expectedTimeTable
            });

            movieMockNumb     = 1;
            movies            = Mocks.GetMovies(movieMockNumb);
            workDay           = new WorkDay(new TimeSpan(10, 0, 0), new TimeSpan(13, 0, 0));
            actualTimeTable   = new TimeTableCreator(movies, workDay);
            expectedTimeTable = new TimeTableCreator(movies, workDay);
            expectedTimeTable.BestTimeTable = Mocks.GetExpectedTimeTable(new int[] { 0, 0 }, movieMockNumb, workDay);

            yield return(new object[]
            {
                actualTimeTable,
                expectedTimeTable
            });

            movieMockNumb     = 2;
            movies            = Mocks.GetMovies(movieMockNumb);
            workDay           = new WorkDay(new TimeSpan(10, 0, 0), new TimeSpan(24, 0, 0));
            actualTimeTable   = new TimeTableCreator(movies, workDay);
            expectedTimeTable = new TimeTableCreator(movies, workDay);
            expectedTimeTable.BestTimeTable = Mocks.GetExpectedTimeTable(new int[] { 0, 0, 1, 2, 3, 4, 5 }, movieMockNumb, workDay);

            yield return(new object[]
            {
                actualTimeTable,
                expectedTimeTable
            });

            movieMockNumb     = 3;
            movies            = Mocks.GetMovies(movieMockNumb);
            workDay           = new WorkDay(new TimeSpan(10, 0, 0), new TimeSpan(16, 0, 0));
            actualTimeTable   = new TimeTableCreator(movies, workDay);
            expectedTimeTable = new TimeTableCreator(movies, workDay);
            expectedTimeTable.BestTimeTable = Mocks.GetExpectedTimeTable(new int[] { 0, 0, 0, 0 }, movieMockNumb, workDay);

            yield return(new object[]
            {
                actualTimeTable,
                expectedTimeTable
            });

            movieMockNumb     = 3;
            movies            = Mocks.GetMovies(movieMockNumb);
            workDay           = new WorkDay(new TimeSpan(10, 0, 0), new TimeSpan(15, 0, 0));
            actualTimeTable   = new TimeTableCreator(movies, workDay);
            expectedTimeTable = new TimeTableCreator(movies, workDay);
            expectedTimeTable.BestTimeTable = Mocks.GetExpectedTimeTable(new int[] { 0, 0, 0 }, movieMockNumb, workDay);

            yield return(new object[]
            {
                actualTimeTable,
                expectedTimeTable
            });
        }
 public void CreateTimeTable(TimeTableCreator actual, TimeTableCreator expected)
 {
     actual.CreateTimeTable();
     Assert.AreEqual(expected, actual);
 }