def generic_test_de_activate_user(self, user_data): """(De)activating a user does make the user (in)active.""" # Cache default state statuses = {} for user in self.test_data['users']: statuses[user['username']] = user['is_active'] # Activate/deactivate user using the superuser LoginPage(self).login(self.superuser['username'], self.superuser['password']) users_page = UsersPage(self) users_page.go_to() users_page.click_de_activate_button(user_data['username']) self.logout() # Check that activated user can now log in if not user_data['is_active']: LoginPage(self).login(user_data['username'], user_data['password']) self.logout() # Check that deactivated user cannot log in if user_data['is_active']: self.check_inactive_login(user_data) # Check that status of all users are OK statuses[user_data['username']] = not user_data['is_active'] self.check_user_status(statuses)