weekdaze-0.0.0.1: src-test/WeekDaze/Test/QuickCheck/ProblemConfiguration/ProblemValidationSwitches.hs
{-# OPTIONS_GHC -fno-warn-orphans #-}
{-
Copyright (C) 2013-2015 Dr. Alistair Ward
This file is part of WeekDaze.
WeekDaze is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
WeekDaze is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with WeekDaze. If not, see <http://www.gnu.org/licenses/>.
-}
{- |
[@AUTHOR@] Dr. Alistair Ward
[@DESCRIPTION@] Implements 'Test.QuickCheck.Arbitrary' for 'ProblemConfiguration.ProblemValidationSwitches.ProblemValidationSwitches'.
[@CAVEAT@] Actually the implementation isn't arbitrary at all, rather just a constant record of off switches; which facilitates the generation of arbitrary /ProblemParameters/.
-}
module WeekDaze.Test.QuickCheck.ProblemConfiguration.ProblemValidationSwitches() where
import qualified Test.QuickCheck
import qualified WeekDaze.ProblemConfiguration.ProblemValidationSwitches as ProblemConfiguration.ProblemValidationSwitches
instance Test.QuickCheck.Arbitrary ProblemConfiguration.ProblemValidationSwitches.ProblemValidationSwitches where
arbitrary = return {-to Gen-monad-} ProblemConfiguration.ProblemValidationSwitches.MkProblemValidationSwitches {
ProblemConfiguration.ProblemValidationSwitches.getCheckAvailabilityOfAnyGroupMember = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckCapacityOfLocationsForMeetings = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckCoursesForSynchronousSpecifiedTimes = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckDuplicateMeetingLocationIds = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckDuplicateOwnLocationIds = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForAlternativesToSynchronisedCourses = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForDuplicateStudentIds = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForIdleStudents = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForIdleTeachers = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForInvalidMeetingTimes = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForMultipleCoursesPerTeacherPerSynchronisationId = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForNonExistentFacilities = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForNonExistentGroupIds = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForNonExistentMeetingLocationIds = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForNonExistentOwnLocationIds = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForOverloadedStudents = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForSingletonSynchronisedCourses = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForStudentsRequiringMultipleSynchronisedSubjects = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForStudentsWithUnrealisableFreePeriodPreference = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForSynchronisedCoursesWithDifferentIdealTimeslots = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForSynchronisedCoursesWithDifferentLessonsPerWeek = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForSynchronisedCoursesWithExcessLessonsPerWeek = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForSynchronisedCoursesWithExcessSpecifiedTimes = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForSynchronisedCoursesWithExcessTimeslotRequests = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForSynchronisedCoursesWithoutSuitableLocations = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForSynchronisedCoursesWithUnavailableSpecifiedDays = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckForTeachersWithUnrealisableFreePeriodPreference = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckIfStudentBodiesExceedTeachers = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckIfStudentBodySizeExceedsCapacityOfAllLocations = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckIfStudentBodySizeExceedsLocationCapacity = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckIndependenceOfStudentTimeslotsRequestsAndMeetings = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckIndependenceOfTeacherTimeslotsRequestsAndMeetings = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckLocationsAvailabilityToSupportCourses = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckLocationsForSynchronousSpecifiedTimes = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckMeetingLocationsAvailability = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckMinimumConsecutiveLessons = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckNullGroupId = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckNullLocationCatalogue = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckNullStudentBodyRegister = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckNullTeacherRegister = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckOwnLocationsAvailability = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckRequiredLessonsPerWeek = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckSimultaneousAvailabilityOfGroupMembers = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckStudentsAvailabilityForMandatoryMeetings = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckStudentsAvailabilityForSpecifiedTimes = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckStudentsForMultipleLevelsOfSameTopic = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckStudentsForSynchronousMeetings = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckStudentsLowerWorkloadBound = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckStudentsUpperWorkloadBound = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckSubjectExistence = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckSuitableLocationsForKnowledgeRequirements = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckTeachersAvailabilityForMandatoryMeetings = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckTeachersForSynchronousMeetings = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckTeachersUpperWorkloadBound = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckTeachingCapacityBySubject = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckTimeslotIdBounds = False,
ProblemConfiguration.ProblemValidationSwitches.getCheckTimeslotRequests = False
}