def test_rover_create(self):
"""Test the rover registration interface."""
self.client.login(username='administrator', password='password')
rover_info = {'name': 'Curiosity', 'local_ip': '192.168.0.10'}
# Create the rover
response = self.client.post(
reverse('mission-control:rover-list'), rover_info)
id = response.data['id']
creation_time = dateutil.parser.parse(response.data['last_checkin'])
self.assertEqual(response.status_code, 201)
# Try and fail to create the same rover again
with self.assertRaises(IntegrityError):
self.client.post(reverse('mission-control:rover-list'), rover_info)
# Update the rover
response = self.client.put(
reverse('mission-control:rover-detail', kwargs={'pk': id}),
urlencode(rover_info),
content_type="application/x-www-form-urlencoded"
)
checkin_time = dateutil.parser.parse(response.data['last_checkin'])
self.assertEqual(response.status_code, 200)
self.assertGreater(checkin_time, creation_time)
评论列表
文章目录