from fixtures import * def test_change_username(app_admin): # these tests aren't supposed to mutate database rv = app_admin.post('/auth/change_username', data={'username': 'admin-tmp'}, follow_redirects=True) assert rv.status_code == 200 rv = app_admin.get('/auth/account') assert b'admin-tmp' in rv.data rv = app_admin.post('/auth/change_username', data={'username': 'claire'}, follow_redirects=True) assert rv.status_code == 400 rv = app_admin.get('/auth/account') assert b'admin-tmp' in rv.data rv = app_admin.post('/auth/change_username', data={'username': 'admin'}, follow_redirects=True) assert rv.status_code == 200 rv = app_admin.get('/auth/account') assert b'admin-tmp' not in rv.data