def setUp(self): self._event_data = [ { "UID": uuid.uuid4(), "DTSTART": datetime.datetime.strptime("20170201T120000", DT_STR_FMT), "DTEND": datetime.datetime.strptime("20170201T140000", DT_STR_FMT), "SUMMARY": "Test event", "CATEGORIES": "Test Python", "LOCATION": "Melbourne", }, { "UID": uuid.uuid4(), "DTSTART": datetime.datetime.strptime("20170202T120000", DT_STR_FMT), "DTEND": datetime.datetime.strptime("20170202T140000", DT_STR_FMT), "SUMMARY": "Test event", "CATEGORIES": "Test Python", "LOCATION": "Melbourne", }, { "UID": uuid.uuid4(), "DTSTART": datetime.datetime.strptime("20170201", "%Y%m%d").date(), "DTEND": datetime.datetime.strptime("20170202", "%Y%m%d").date(), "SUMMARY": "All-day event", "CATEGORIES": "Test Python", "LOCATION": "Melbourne", }, ] self._event1 = cda.Event(**self._event_data[0]) self._event2 = cda.Event(**self._event_data[1]) self._event3 = cda.Event(**self._event_data[2]) self._blocks = cda.create_blocks( datetime.datetime.strptime("20170201T000000", DT_STR_FMT), datetime.datetime.strptime("20170203T000000", DT_STR_FMT), 6, 22, 4)
def test_missing_start(self): """Test malformed data: start dt missing.""" # Test an Event with no start dt malformed_data = self._event_data.copy() malformed_data[0]["DTSTART"] = None with self.assertRaises(TypeError) as context: cda.Event(**malformed_data[0])
def test_zero_length_event(self): # Test a zero-length Event malformed_data = self._event_data.copy() malformed_data[0]["DTSTART"] = malformed_data[0]["DTEND"] self.assertEqual(malformed_data[0]["DTEND"], malformed_data[0]["DTSTART"]) with self.assertRaises(ValueError) as context: event = cda.Event(**malformed_data[0])
def test_invalid_length_event(self): # Test an Event that has a start after the end malformed_data = self._event_data.copy() malformed_data[0]["DTEND"] = datetime.datetime.strptime( "2016201T120000", DT_STR_FMT) self.assertTrue( malformed_data[0]["DTEND"] < malformed_data[0]["DTSTART"]) with self.assertRaises(ValueError) as context: cda.Event(**malformed_data[0])
def setUp(self): self._event_data = [ { "UID": uuid.uuid4(), "DTSTART": datetime.datetime.strptime("20170201T120000", DT_STR_FMT), "DTEND": datetime.datetime.strptime("20170201T1400", DT_STR_FMT), "SUMMARY": "Test event", "CATEGORIES": "Test Python", "LOCATION": "Melbourne", }, ] self._event = cda.Event(**self._event_data[0])
def test_missing_uuid(self): """Test creating and Event with no uuid data.""" malformed_data = self._event_data.copy() del malformed_data[0]["UID"] with self.assertRaises(KeyError) as context: cda.Event(**malformed_data[0])
def test_creation(self): """Test that an Event is created given correct input data.""" event = cda.Event(**self._event_data[0]) self.assertIsNotNone(event)