def test1(self): val = Validators() eventRepo = EventRepository() personRepo = PersonRepository() atdRepo = AttendingRepository() ctrl = AttentingCtrl(val, eventRepo, personRepo, atdRepo) p1 = Person(1, "Paul", "Cluj") p2 = Person(2, "Vasile", "Cluj") e1 = Event(1, "123", "345", "descXY") e2 = Event(2, "123", "345", "descJF") e3 = Event(3, "123", "345", "descAB") personRepo.add(p1) personRepo.add(p2) eventRepo.add(e1) eventRepo.add(e2) eventRepo.add(e3) ctrl.attend(1, 1) ctrl.attend(1, 3) ctrl.attend(2, 1) ctrl.attend(2, 2) ctrl.attend(2, 3) self.assertRaises(KeyError, ctrl.attend, 1, 1)
def __readFromFile(self): self.events = {} with open(self.__file, "r") as fp: for line in fp: args = line.split("~") x = Event(int(args[0]), args[1], args[2], args[3].strip()) self.events[x.getID()] = x
def setUp(self): self.fileName = "testevents.txt" self.repo = EventFileRepository(self.fileName) self.repo.removeAll() self.event1 = Event("1", "20/11/2012", "10:58", "Funeral") self.event2 = Event("2", "20/09/2013", "11:21", "Party") self.event3 = Event("3", "19/06/2017", "12:31", "Wedding") self.repo.store_event(self.event1) self.repo.store_event(self.event2) self.repo.store_event(self.event3)
def test_create_assignment(self): ''' Functon that tests the create assignment feature ''' person = Person('1', 'Geo', 'Olanu') event = Event('1', "20/07/2019", "10:58", "Wedding") assignment = Assignment(person.get_id_pers(), event.get_id_event()) self.assertEqual(assignment.get_person_id(), '1') self.assertEqual(assignment.get_event_id(), '1')
def update_event_service(self, id_event, date, time, descr): ''' Function that updates an event :return: the new event if it exists, None otherwise ''' new_event = Event(id_event, date, time, descr) return self.__rep.update_event(new_event)
def testCreateSonarEventAndPickle(self): sonar_event = SonarEvent("OMG, something happened!", EventJudgement.grave, ["jalie"], "PRTR", 80.5, 15) self.assertEquals(sonar_event.violations, 15) self.assertEquals(sonar_event.coverage, 80.5) sonar_json_event = sonar_event.pickle() unpickled_sonar_event = Event.unpickle(sonar_json_event) self.assertTrue(type(sonar_event) == type(unpickled_sonar_event)) self.assertEquals(unpickled_sonar_event.violations, 15) self.assertEquals(unpickled_sonar_event.coverage, 80.5)
def test_event_validator(self): ''' Function to test the event validation ''' event = Event("", "", "", "") validator = EventValidator() with self.assertRaises(Exception): validator.validate(event) event = Event("1", "", "", "") with self.assertRaises(Exception): validator.validate(event) event = Event("1", "32/12/2051", "", "Funeral") with self.assertRaises(Exception): validator.validate(event)
def testCreateBambooEventAndPickle(self): bamboo_event = BambooEvent("OMG, something happened!", EventJudgement.deteriorating, ["jalie"], "PRTR", BambooBuildState.FAILED, 2000) self.assertEquals(bamboo_event.build_state, BambooBuildState.FAILED) self.assertEquals(bamboo_event.tests, 2000) bamboo_json_event = bamboo_event.pickle() unpickled_bamboo_event = Event.unpickle(bamboo_json_event) self.assertTrue(type(bamboo_event) == type(unpickled_bamboo_event)) self.assertEquals(bamboo_event.build_state, BambooBuildState.FAILED) self.assertEquals(bamboo_event.tests, 2000)
class test_store_assig(TestCase): def setUp(self): self.fileName = "testassig.txt" self.repo = AssignmentFileRepository(self.fileName) self.repo.removeAll() self.person3 = Person("5", "Andrei", "Roman") self.person1 = Person("2", "Alex", "Caracal") self.person2 = Person("3", "Andrada", "Valcea") self.event1 = Event("1", "20/11/2012", "10:58", "Funeral") self.event2 = Event("2", "20/09/2013", "11:21", "Party") self.event3 = Event("3", "19/06/2017", "12:31", "Wedding") self.assignment1 = Assignment(self.person1.get_id_pers(), self.event1.get_id_event()) self.assignment2 = Assignment(self.person2.get_id_pers(), self.event2.get_id_event()) self.assignment3 = Assignment(self.person3.get_id_pers(), self.event3.get_id_event()) self.repo.store_assig(self.assignment1) self.repo.store_assig(self.assignment2) self.repo.store_assig(self.assignment3) self.assertEqual(self.repo.size(), 3) self.repo2 = AssignmentFileRepository(self.fileName) self.assignemnt4 = Assignment(self.person1.get_id_pers(), self.event2.get_id_event()) self.repo2.store_assig(self.assignemnt4) def tearDown(self): self.repo.removeAll() def test_store_assig(self): self.assertEqual(self.repo.search_assig(self.assignment1), self.assignment1) self.assertEqual(self.repo2.size(), 4) if __name__ == "__main__": unittest_main()
def getEventStream(self): try: events = [] event_keys = self.redis.keys(RedisRepo.EVENTS_HASH_KEY_PREFIX + '*') event_keys.sort() for event_key in event_keys: pickled_event = self.redis.get(event_key) if pickled_event is not None: events.append(Event.unpickle(pickled_event)) return events except redis.RedisError, e: raise RedisException({"message": "Could not retrieve EventStream from Redis!", "cause": e.__str__()})
def test_event_entity(self): ''' Function for testing the event class ''' event = Event('1', '20/12/2012', '10:59', 'Wedding') self.assertEqual(event.get_id_event(), '1') self.assertEqual(event.get_date(), '20/12/2012') self.assertEqual(event.get_time(), '10:59') self.assertEqual(event.get_descr(), 'Wedding')
def create_event(self, id_event, date, time, descr): ''' store an event :param: id_event - string :param: date - string :param: time - string :param: descr - string :post: the event will be added to the list :raise: Event_Repository_Exception if the event already exists :raise: Validator_Exception if the event fields are completed wrong ''' #create new_event new_event = Event(id_event, date, time, descr) #add the event into using repository self.__rep.store_event(new_event) #return the added event return new_event
def test_event_repo(self): ''' Function to test the event repository store ''' event = Event('1', "20/06/2010", "10:56", "Funeral") repo = EventRepository(EventValidator) self.assertEqual(repo.size(), 0) repo.store_event(event) self.assertEqual(repo.size(), 1) event = Event('2', "15/06/2011", "12:03", "Wedding") repo.store_event(event) self.assertEqual(repo.size(), 2) repo.delete_event(event.get_id_event()) self.assertEqual(repo.size(), 1) event = Event("1", "12/12/2012", "11:07", "Birthday Party")
def __loadFromFile(self): ''' Loads students from file raise CorruptedFIleException if there's an error when reading from the file ''' try: f = open(self.__path, "r") except IOError: #file not exists return line = f.readline().strip() events = [] while line != "": comp = line.split(",") event = Event(comp[0], comp[1], comp[2], comp[3]) events.append(event) line = f.readline().strip() f.close() return events
def dict2event(obj): return Event(str(obj['_id']), obj['name'], datetime.date.fromisoformat(obj['date']), obj['tag'])