You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
1.6 KiB

2 years ago
  1. import uuid
  2. import pytest
  3. from fe.access import auth
  4. from fe import conf
  5. class TestPassword:
  6. @pytest.fixture(autouse=True)
  7. def pre_run_initialization(self):
  8. self.auth = auth.Auth(conf.URL)
  9. # register a user
  10. self.user_id = "test_password_{}".format(str(uuid.uuid1()))
  11. self.old_password = "old_password_" + self.user_id
  12. self.new_password = "new_password_" + self.user_id
  13. self.terminal = "terminal_" + self.user_id
  14. assert self.auth.register(self.user_id, self.old_password) == 200
  15. yield
  16. def test_ok(self):
  17. code = self.auth.password(self.user_id, self.old_password, self.new_password)
  18. assert code == 200
  19. code, new_token = self.auth.login(self.user_id, self.old_password, self.terminal)
  20. assert code != 200
  21. code, new_token = self.auth.login(self.user_id, self.new_password, self.terminal)
  22. assert code == 200
  23. code = self.auth.logout(self.user_id, new_token)
  24. assert code == 200
  25. def test_error_password(self):
  26. code = self.auth.password(self.user_id, self.old_password + "_x", self.new_password)
  27. assert code != 200
  28. code, new_token = self.auth.login(self.user_id, self.new_password, self.terminal)
  29. assert code != 200
  30. def test_error_user_id(self):
  31. code = self.auth.password(self.user_id + "_x", self.old_password, self.new_password)
  32. assert code != 200
  33. code, new_token = self.auth.login(self.user_id, self.new_password, self.terminal)
  34. assert code != 200