Ok I'm writing tests for my Django app. I'm trying to figure out a way to iterate over the testing for a ajax register call for the appropriate responses. It's working but I know it can be done in a more efficient way.
def test_ajax_register(self):
    c = Client()
    # Check register success
    response = c.post('/register/', {
        'register-username': 'testuser',
        'register-email': 'testuser@email.com',
        'register-password': 'password'
    })
    self.assertEqual(json.loads(response.content)['status'], 'success')
    self.assertEqual(response.status_code, 200)
    # Check register failed  username taken
    response = c.post('/register/', {
        'register-username': 'testuser',
        'register-email': 'testuser@email.com',
        'register-password': 'password'
    })
    self.assertEqual(json.loads(response.content)['status'], 'fail')
    self.assertEqual(json.loads(response.content)['error_msg'], 'username already in use')
    # Check register failed email in use
    response = c.post('/register/', {
        'register-username': 'testuser1',
        'register-email': 'testuser@email.com',
        'register-password': 'password'
    })
    self.assertEqual(json.loads(response.content)['status'], 'fail')
    self.assertEqual(json.loads(response.content)['error_msg'], 'email already in use')
    # Check register failed  password length
    response = c.post('/register/', {
        'register-username': 'testuser2',
        'register-email': 'testuser2@email.com',
        'register-password': 'pass'
    })
    self.assertEqual(json.loads(response.content)['status'], 'fail')
    self.assertEqual(json.loads(response.content)['error_msg'], 'password must be atleast 8 characters long')
 
     
    