def test_build_schedule_overlap(self):
        self.assertEqual(0, Day.objects.all().count())
        self.assertEqual(0, Room.objects.all().count())
        self.assertEqual(0, Slot.objects.all().count())
        self.assertEqual(0, SlotKind.objects.all().count())
        schedule_csv = open(os.path.join(DATA_DIR, 'schedule_overlap.csv'), 'rb')
        file_data = {'filename': SimpleUploadedFile(schedule_csv.name, schedule_csv.read())}
        data = {'submit': 'Submit'}
        form = ScheduleSectionForm(data, file_data, schedule=self.schedule)
        form.is_valid()
        msg_type, msg = form.build_schedule()
        self.assertEqual(40, msg_type)
        self.assertIn('overlap', msg)
        self.assertEqual(0, Day.objects.all().count())
        self.assertEqual(0, Room.objects.all().count())
        self.assertEqual(0, Slot.objects.all().count())
        self.assertEqual(0, SlotKind.objects.all().count())
Test rolledback schedule build based off ingested CSV with Slot overlap
dataset/ETHPy150Open pinax/symposion/symposion/schedule/tests/test_forms.py/ScheduleSectionFormTests.test_build_schedule_overlap