def setUp(self):
     GlobalRoleList.add_role(Role('Baker', 'B', 10))
     GlobalRoleList.add_role(Role('Steward', 'S', 9))
     GlobalRoleList.add_role(Role('Fisherman', 'F', 7))
     GlobalRoleList.add_role(Role('Cook', 'C', 7))
     self.institution = Institution()
     self.saver = InstitutionSavingObject(self.institution, 'database.db')
Пример #2
0
    def setUp(self):
        GlobalRoleList.add_role(Role('Baker', 'B', 10))
        GlobalRoleList.add_role(Role('Steward', 'S', 9))
        GlobalRoleList.add_role(Role('Fisherman', 'F', 7))
        GlobalRoleList.add_role(Role('Cook', 'C', 7))
        self.institution = Institution()
        self.duration = Duration(self.institution)

        e = Event(self.duration)
        e.title = 'A'
        e.add_appointment(Appointment(e, role("C"), e))
        e.add_appointment(Appointment(e, role("S"), e))
        e.appointments[1].note = 'with car'
        e.add_appointment(Appointment(e, role("F"), e))
        e.add_appointment(Appointment(e, role("F"), e))
        e.appointments[3].disabled = True
        e.add_appointment(Appointment(e, role("F"), e))
        self.duration.events.append(e)

        e = Event(self.duration)
        e.title = 'B'
        e.add_appointment(Appointment(e, role("F"), e))
        e.add_appointment(Appointment(e, role("F"), e))
        e.appointments[1].note = 'with car'
        e.add_appointment(Appointment(e, role("S"), e))
        e.appointments[2].note = 'with car'
        e.add_appointment(Appointment(e, role("B"), e))
        self.duration.events.append(e)
    def testloadRoles(self):
        self.assertGreater(len(GlobalRoleList.roles), 0, 'The roles have not been defined')

        self.saver.createTables()
        self.saver.populateTables()

        GlobalRoleList.clear()
        self.assertEqual(len(GlobalRoleList.roles), 0)

        self.saver.loadRoles()

        self.assertGreater(len(GlobalRoleList.roles), 0, 'The roles have not been repopulated')

        role1 = GlobalRoleList.role_from_desc('Baker')
        role2 = GlobalRoleList.role_from_desc('Fisherman')
        self.assertFalse(role1.compatible_with(role2))
Пример #4
0
def main():
    GlobalRoleList.add_role(Role("Baker", "B", 2))
    GlobalRoleList.add_role(Role("Singer", "S", 9))
    GlobalRoleList.add_role(Role("Fisherman", "F", 7))

    app = QtGui.QApplication(sys.argv)
    w = CheckingWidget(None)
    w.show()

    sys.exit(app.exec_())
Пример #5
0
    def _loadInRolesTables(self):
        _c = self._connection.cursor()
        GlobalRoleList.clear()
        for row in _c.execute('SELECT * FROM Roles ORDER BY priority'):
            GlobalRoleList.add_role(Role(row[0], row[2], row[1]))

        for row in _c.execute('SELECT * FROM RolesCompatibility'):
            role1 = GlobalRoleList.role_from_desc(row[0])
            role2 = GlobalRoleList.role_from_desc(row[1])
            role1.compatibilities.add(role2)
Пример #6
0
def main():
    GlobalRoleList.add_role(Role('Baker', 'B', 2))
    GlobalRoleList.add_role(Role('Steward', 'S', 9))
    GlobalRoleList.add_role(Role('Fisherman', 'F', 7))

    m = MasterUndoModel()

    app = QtGui.QApplication(sys.argv)
    w = GlobalRolesWidget(None)
    m.add_command_contributer(w)
    w.setWindowTitle('roles')
    w.show()

    sys.exit(app.exec_())
Пример #7
0
    def _loadInPopulationTables(self):
        _c = self._connection.cursor()
        self._institution.people = []
        personCacheDict = {'Name': 'PersonObject'}
        for row in _c.execute('SELECT * FROM Population ORDER BY name'):
            p = Worker()
            p.name = row[0]
            p.address = row[1]
            p.email = row[2]
            p.phoneNumber = row[3]
            self._institution.people.append(p)
            personCacheDict[p.name] = p

        for row in _c.execute('SELECT * FROM PopulationAvailability'):
            personCacheDict[row[0]].blacklist_date(row[1])

        for row in _c.execute('SELECT * FROM PopulationQualifications'):
            r = GlobalRoleList.role_from_desc(row[1])
            personCacheDict[row[0]].roles().add(r)

        self._personCacheDict = personCacheDict
def main():
    GlobalRoleList.add_role(Role('Baker', 'B', 2))
    GlobalRoleList.add_role(Role('Steward', 'S', 9))
    GlobalRoleList.add_role(Role('Fisherman', 'F', 7))

    m = MasterUndoModel()

    app = QtGui.QApplication(sys.argv)
    w = AppointmentsListWidget(None)
    am = AppointmentsTableModel(w)

    e = Events.Event(None)
    am.setEvent(e)
    w.setModel(am)
    m.add_command_contributer(w)
    w.show()

    sys.exit(app.exec_())
Пример #9
0
def main():

    GlobalRoleList.add_role(Role("Baker", "B", 2))
    GlobalRoleList.add_role(Role("Steward", "S", 9))
    GlobalRoleList.add_role(Role("Fisherman", "F", 7))
    bob = Worker()
    bob.name = "Bob"
    bob.email = "*****@*****.**"
    bob.phoneNumber = "0116"
    testdate = date(2012, 12, 31)
    bob.blacklist_date(testdate)
    app = QtGui.QApplication(sys.argv)
    w = PersonWidget(None)
    w.setWindowTitle("Person")
    w.person(bob)
    w.show()

    sys.exit(app.exec_())
Пример #10
0
def main():
    GlobalRoleList.add_role(Role('Baker', 'B', 2))
    GlobalRoleList.add_role(Role('Singer', 'S', 9))
    GlobalRoleList.add_role(Role('Fisherman', 'F', 7))

    m = MasterUndoModel()

    app = QtGui.QApplication(sys.argv)
    w = VacanciesWidget(None)

    m.add_command_contributer(w)
    w.show()

    v = QtGui.QUndoView(None)
    v.setStack(m.undoStack)
    v.show()

    sys.exit(app.exec_())
def main():
    GlobalRoleList.add_role(Role("Baker", "B", 2))
    GlobalRoleList.add_role(Role("Singer", "S", 9))
    GlobalRoleList.add_role(Role("Fisherman", "F", 7))

    m = MasterUndoModel()

    app = QtGui.QApplication(sys.argv)
    w = EventTemplateWidget(None)

    i = Institution.Institution(None)
    w.institution(i)
    m.add_command_contributer(w)
    w.show()

    v = QtGui.QUndoView(None)
    v.setStack(m.undoStack)
    v.show()

    sys.exit(app.exec_())
Пример #12
0
def main():
    GlobalRoleList.add_role(Role('Baker', 'B', 2))
    GlobalRoleList.add_role(Role('Singer', 'S', 9))
    GlobalRoleList.add_role(Role('Fisherman', 'F', 7))

    m = MasterUndoModel()
    i = Institution(None)
    p = PopulationModel(i)

    app = QtGui.QApplication(sys.argv)
    w = DurationsWidget(None)
    w.setPopulationModel(p)
    w.setInstitution(i)

    m.add_command_contributer(w)
    w.show()

    v = QtGui.QUndoView(None)
    v.setStack(m.undoStack)
    v.show()

    sys.exit(app.exec_())
Пример #13
0
    def testloadRolesCompatibilities(self):
        self.assertGreater(len(GlobalRoleList.roles), 0, 'The roles have not been defined')

        role1 = GlobalRoleList.role_from_desc('Steward')
        role2 = GlobalRoleList.role_from_desc('Cook')
        role1.compatibilities.add(role2)
        role2.compatibilities.add(role1)

        role1 = GlobalRoleList.role_from_desc('Baker')
        role2 = GlobalRoleList.role_from_desc('Fisherman')
        role1.compatibilities.add(role2)
        role2.compatibilities.add(role1)

        self.saver.createTables()
        self.saver.populateTables()
        GlobalRoleList.clear()
        self.saver.loadRoles()

        role1 = GlobalRoleList.role_from_desc('Baker')
        role2 = GlobalRoleList.role_from_desc('Fisherman')
        self.assertTrue(role1.compatible_with(role2))

        role1 = GlobalRoleList.role_from_desc('Fisherman')
        role2 = GlobalRoleList.role_from_desc('Steward')
        self.assertFalse(role1.compatible_with(role2))

        role1 = GlobalRoleList.role_from_desc('Baker')
        role2 = GlobalRoleList.role_from_desc('Cook')
        self.assertFalse(role1.compatible_with(role2))

        role1 = GlobalRoleList.role_from_desc('Steward')
        role2 = GlobalRoleList.role_from_desc('Cook')
        self.assertTrue(role1.compatible_with(role2))
Пример #14
0
 def tearDown(self):
     GlobalRoleList.clear()
Пример #15
0
    def testLoadPopulation(self):
        GlobalRoleList.clear()
        GlobalRoleList.add_role(Role('Doctor', 'D', 10))
        GlobalRoleList.add_role(Role('GP', 'G', 8))
        GlobalRoleList.add_role(Role('Nurse', 'N', 10))
        GlobalRoleList.add_role(Role('Cook', 'C', 7))
        GlobalRoleList.add_role(Role('Reception', 'R', 5))

        loader = PopulationSavingObject([], 'test_population_sheet.xls')
        loaded_population = loader.load()

        self.assertEqual(len(loaded_population), 6)

        loaded_person = loaded_population[0]
        self.assertEqual(loaded_person.name, 'Mary')
        self.assertEqual(loaded_person.address, 'A34')
        self.assertEqual(loaded_person.email, 'b')
        self.assertEqual(loaded_person.phone_number, '122')

        self.assertEqual(len(loaded_person.roles()), 2)
        self.assertTrue(loaded_person.suitable_for_role('D'))
        self.assertTrue(loaded_person.suitable_for_role('N'))
        self.assertFalse(loaded_person.suitable_for_role('C'))

        loaded_person = loaded_population[1]
        self.assertEqual(loaded_person.name, 'Jane')
        self.assertEqual(loaded_person.address, 'B32')
        self.assertEqual(loaded_person.email, 'g')
        self.assertEqual(loaded_person.phone_number, '463')

        self.assertEqual(len(loaded_person.roles()), 1)
        self.assertFalse(loaded_person.suitable_for_role('D'))
        self.assertTrue(loaded_person.suitable_for_role('G'))
        self.assertFalse(loaded_person.suitable_for_role('C'))

        loaded_person = loaded_population[2]
        self.assertEqual(loaded_person.name, 'Mick')

        self.assertEqual(len(loaded_person.roles()), 1)
        self.assertFalse(loaded_person.suitable_for_role('D'))
        self.assertTrue(loaded_person.suitable_for_role('C'))
        self.assertFalse(loaded_person.suitable_for_role('G'))

        loaded_person = loaded_population[3]
        self.assertEqual(loaded_person.name, 'John')

        self.assertEqual(len(loaded_person.roles()), 2)
        self.assertTrue(loaded_person.suitable_for_role('R'))
        self.assertTrue(loaded_person.suitable_for_role('N'))
        self.assertFalse(loaded_person.suitable_for_role('D'))

        loaded_person = loaded_population[4]
        self.assertEqual(loaded_person.name, 'Gaz')

        self.assertEqual(len(loaded_person.roles()), 1)
        self.assertFalse(loaded_person.suitable_for_role('D'))
        self.assertFalse(loaded_person.suitable_for_role('N'))
        self.assertTrue(loaded_person.suitable_for_role('C'))

        loaded_person = loaded_population[5]
        self.assertEqual(loaded_person.name, 'Toby')
        self.assertEqual(loaded_person.address, 'C16')
        self.assertEqual(loaded_person.email, '')
        self.assertEqual(loaded_person.phone_number, '400')

        self.assertEqual(len(loaded_person.roles()), 2)
        self.assertTrue(loaded_person.suitable_for_role('D'))
        self.assertTrue(loaded_person.suitable_for_role('G'))
        self.assertFalse(loaded_person.suitable_for_role('N'))
Пример #16
0
    def testInvalidLoadPopulation(self):
        GlobalRoleList.clear()
        GlobalRoleList.add_role(Role('Doctor', 'D', 10))
        GlobalRoleList.add_role(Role('GP', 'G', 8))
        GlobalRoleList.add_role(Role('Nurse', 'N', 10))
        GlobalRoleList.add_role(Role('Cook', 'C', 7))
        GlobalRoleList.add_role(Role('Reception', 'R', 5))

        loader = PopulationSavingObject([], 'test_invalid_population_sheet.xls')
        self.assertRaises(ExcellImportExportError, loader.load)