'Verify that data submitted via PUT overwrites/deletes modes that are
not included in the body of the request.'

def test_update_overwrite(self):

    course_id = unicode(self.course.id)
    expected_course_mode = CourseMode(mode_slug=u'credit', min_price=500, currency=u'USD', sku=u'ABC123', bulk_sku=u'BULK-ABC123')
    expected = self._serialize_course(self.course, [expected_course_mode])
    path = reverse('commerce_api:v1:courses:retrieve_update', args=[course_id])
    response = self.client.put(path, json.dumps(expected), content_type=JSON_CONTENT_TYPE)
    self.assertEqual(response.status_code, 200)
    actual = json.loads(response.content)
    self.assertEqual(actual, expected)
    self.assertFalse(CourseMode.objects.filter(id=self.course_mode.id).exists())
