Example #1
0
 def test_create_two_workspaces_same_name_different_user(self):
     # Context
     number_workspace = len(workspace_api.get_all())
     user1 = UserFixtures().create_user(username="******")
     user2 = UserFixtures().create_user(username="******")
     # Act
     workspace_api.create_and_save(TITLE_1, user1.id)
     workspace_api.create_and_save(TITLE_1, user2.id)
     # Assert
     self.assertEqual(number_workspace + 2, len(workspace_api.get_all()))
Example #2
0
 def test_create_two_workspaces_same_name_different_case_same_user(self):
     # Context
     user1 = UserFixtures().create_user()
     # Act
     workspace_api.create_and_save(TITLE_1, user1.id)
     with self.assertRaises(exceptions.NotUniqueError):
         workspace_api.create_and_save(TITLE_1.upper(), user1.id)
Example #3
0
 def test_create_one_workspace(self):
     # Context
     user1 = UserFixtures().create_user()
     # Act
     workspace = workspace_api.create_and_save(TITLE_1, user1.id)
     # Assert
     self.assertEqual(workspace.title, TITLE_1)
     self.assertEqual(workspace.owner, str(user1.id))
Example #4
0
    def setUp(self):
        """Insert needed data.

        Returns:

        """
        super().setUp()
        self.fixture.insert_data()
        self.fixture.generate_workspace_with_perm()
        self.admin_user = UserFixtures().create_super_user("admin")
Example #5
0
    def setUp(self):
        super(TestExecuteLocalQueryViewWorkspaceCase, self).setUp()

        self.data = {"all": "true"}

        # create user with superuser access to skip access control
        self.user = create_mock_user("1", is_superuser=True)

        self.user2 = UserFixtures().create_user()

        self.user2.id = self.fixture.data_4.user_id
Example #6
0
    def test_create_super_user(self):
        # Context
        user_count = len(user_api.get_all_users())
        self.assertEqual(user_count, 0)

        # Act
        UserFixtures().create_super_user(username="******")

        # Assert
        list_user = user_api.get_all_users()
        self.assertEqual(list_user[0].username, "test username")
        self.assertEqual(len(list_user), user_count + 1)
        self.assertTrue(list_user[0].is_superuser)
Example #7
0
    def test_get_returns_correct_permissions_if_user_is_not_owner(
            self, data_get_by_id):
        # Arrange
        user_request = UserFixtures().create_user("no_owner_user",
                                                  is_staff=True)
        data = self.fixture.data_4
        data_get_by_id.return_value = data

        # Act
        response = RequestMock.do_request_get(
            data_rest_views.DataPermissions.as_view(),
            user_request,
            data={"ids": f'["{data.id}"]'},
        )

        # Assert
        excepted_result = {}
        excepted_result[str(data.id)] = False
        self.assertEqual(response.data, excepted_result)
Example #8
0
    def test_get_if_user_has_write_permission_in_workspace(
            self, data_get_by_id):
        # Arrange
        user_request = UserFixtures().create_user("write_user")
        data = self.fixture.data_collection[self.fixture.USER_2_WORKSPACE_2]
        data_get_by_id.return_value = data
        workspace_api.add_user_write_access_to_workspace(
            self.fixture.workspace_2, user_request, self.admin_user)

        # Act
        response = RequestMock.do_request_get(
            data_rest_views.DataPermissions.as_view(),
            user_request,
            data={"ids": f'["{data.id}"]'},
        )

        # Assert
        excepted_result = {}
        excepted_result[str(data.id)] = True
        self.assertEqual(response.data, excepted_result)
Example #9
0
    def test_get_returns_correct_permissions_if_user_is_owner(
            self, data_get_by_id):
        # Arrange
        user_request = UserFixtures().create_user("owner_user", is_staff=True)
        data = copy(self.fixture.data_3)  # do not alter the fixture object
        data.user_id = str(user_request.id)
        data.workspace = None
        data_get_by_id.return_value = data

        # Act
        response = RequestMock.do_request_get(
            data_rest_views.DataPermissions.as_view(),
            user_request,
            data={"ids": f'["{data.id}"]'},
        )

        # Assert
        excepted_result = {}
        excepted_result[str(data.id)] = True
        self.assertEqual(response.data, excepted_result)
Example #10
0
""" Integration Test for User Rest API
"""
from rest_framework.status import HTTP_404_NOT_FOUND

from core_main_app.rest.user import views as user_rest_views
from core_main_app.utils.integration_tests.integration_base_transaction_test_case import (
    MongoIntegrationTransactionTestCase, )
from core_main_app.utils.tests_tools.MockUser import create_mock_user
from core_main_app.utils.tests_tools.RequestMock import RequestMock
from tests.components.user.fixtures.fixtures import UserFixtures

user_fixture = UserFixtures()


class TestUserDetail(MongoIntegrationTransactionTestCase):
    def setUp(self):
        super(TestUserDetail, self).setUp()

    def test_get_returns_correct_user(self):
        # Arrange
        user = user_fixture.create_user()
        mock_user = create_mock_user("1", is_staff=True)

        # Act
        response = RequestMock.do_request_get(
            user_rest_views.UserRetrieveUpdateView.as_view(),
            mock_user,
            param={"pk": user.id},
        )

        # Assert