'Tests that the correct start_type and start_display are returned in the
case the course has not started'

@ddt.data((NEXT_WEEK, ADVERTISED_START, ADVERTISED_START, 'string'), (NEXT_WEEK, None, defaultfilters.date(NEXT_WEEK, 'DATE_FORMAT'), 'timestamp'), (NEXT_WEEK, '', defaultfilters.date(NEXT_WEEK, 'DATE_FORMAT'), 'timestamp'), (DEFAULT_START_DATE, ADVERTISED_START, ADVERTISED_START, 'string'), (DEFAULT_START_DATE, '', None, 'empty'), (DEFAULT_START_DATE, None, None, 'empty'))
@ddt.unpack
@patch.dict(settings.FEATURES, {'DISABLE_START_DATES': False, 'ENABLE_MKTG_SITE': True})
def test_start_type_and_display(self, start, advertised_start, expected_display, expected_type):

    self.login()
    course = CourseFactory.create(start=start, advertised_start=advertised_start, mobile_available=True)
    self.enroll(course.id)
    response = self.api_response()
    self.assertEqual(response.data[0]['course']['start_type'], expected_type)
    self.assertEqual(response.data[0]['course']['start_display'], expected_display)
