from unittest.mock import patch from tests.test_utils import FixtureLoader from models import models from tests import BaseTestCase, mock_for_user from tests.users.fixtures.users_fixture import fixture import json user2 = mock_for_user(2, "dev-marketing-user-2@example.com", "sme-dna|3po0091d6c91ty670fe6ftryf", labels=[6, 4]) @patch("auth.atlas.atlas_token_decoder.jwt.decode", user2.jwt_decode) class TestUsers(BaseTestCase): url = "/current-user" def setUp(self): super().setUp() FixtureLoader(models=models).import_as_sql(fixture) def test_get_user_info(self): response = self.execute_get(self.url, headers=self.headers) self.assertEqual(200, response.status_code) user = response.json["currentUser"] self.soft_assert(self.assertEqual, user["id"], 2) self.soft_assert(self.assertEqual, user["externalId"], "sme-dna|3po0091d6c91ty670fe6ftryf") self.soft_assert(self.assertEqual, user["name"], "dev-marketing-user-2") self.soft_assert(self.assertEqual, user["phone"], "67589838844") self.soft_assert(self.assertEqual, user["email"], "dev-marketing-user-2@example.com") self.soft_assert(self.assertEqual, user["dateTimeFormat"], 1) self.soft_assert(self.assertEqual, response.json["projectsCount"], 4) self.assert_all() def test_update_user_info(self): response = self.execute_put( self.url, data=json.dumps({"phone": "67589838855", "dateTimeFormat": 2}), headers=self.headers, ) self.assertEqual(200, response.status_code) user = response.json["currentUser"] self.soft_assert(self.assertEqual, user["id"], 2) self.soft_assert(self.assertEqual, user["externalId"], "sme-dna|3po0091d6c91ty670fe6ftryf") self.soft_assert(self.assertEqual, user["name"], "dev-marketing-user-2") self.soft_assert(self.assertEqual, user["phone"], "67589838855") self.soft_assert(self.assertEqual, user["email"], "dev-marketing-user-2@example.com") self.soft_assert(self.assertEqual, user["dateTimeFormat"], 2) self.soft_assert(self.assertEqual, response.json["projectsCount"], 4) self.assert_all() def test_get_all_users(self): response = self.execute_get("/users", headers=self.headers) self.assertEqual(200, response.status_code)