test(api): fix lint errors

This commit is contained in:
jo 2022-06-28 20:56:46 +02:00 committed by Kyle Robbertze
parent 6cc20013ef
commit 7503618599
2 changed files with 22 additions and 15 deletions

View File

@ -121,6 +121,7 @@ class User(AbstractBaseUser):
def is_superuser(self): def is_superuser(self):
return self.role == Role.ADMIN return self.role == Role.ADMIN
# pylint: disable=unused-argument
def get_user_permissions(self, obj=None): def get_user_permissions(self, obj=None):
""" """
Users do not have permissions directly, only through groups Users do not have permissions directly, only through groups
@ -129,14 +130,14 @@ class User(AbstractBaseUser):
def get_group_permissions(self, obj=None): def get_group_permissions(self, obj=None):
permissions = GROUPS[self.role] permissions = GROUPS[self.role]
if obj: if obj is not None:
obj_name = obj.__class__.__name__.lower() obj_name = obj.__class__.__name__.lower()
permissions = [perm for perm in permissions if obj_name in perm] permissions = [perm for perm in permissions if obj_name in perm]
# get permissions objects # get permissions objects
q = models.Q() query = models.Q()
for perm in permissions: for perm in permissions:
q = q | models.Q(codename=perm) query = query | models.Q(codename=perm)
return list(Permission.objects.filter(q)) return list(Permission.objects.filter(query))
def get_all_permissions(self, obj=None): def get_all_permissions(self, obj=None):
return self.get_user_permissions(obj) + self.get_group_permissions(obj) return self.get_user_permissions(obj) + self.get_group_permissions(obj)

View File

@ -36,11 +36,17 @@ def _track_type():
) )
class MockImporter(Importer):
_handle_file: MagicMock
_upload_file: MagicMock
_delete_file: MagicMock
@pytest.fixture(name="importer") @pytest.fixture(name="importer")
def _importer(requests_mock: Mocker): def _importer(requests_mock: Mocker):
requests_mock.post(f"{FAKE_URL}/rest/media", status_code=200) requests_mock.post(f"{FAKE_URL}/rest/media", status_code=200)
obj = Importer(FAKE_URL, "auth") obj: MockImporter = Importer(FAKE_URL, "auth") # type: ignore
obj._handle_file = MagicMock(wraps=obj._handle_file) obj._handle_file = MagicMock(wraps=obj._handle_file)
obj._upload_file = MagicMock(wraps=obj._upload_file) obj._upload_file = MagicMock(wraps=obj._upload_file)
obj._delete_file = MagicMock(wraps=obj._delete_file) obj._delete_file = MagicMock(wraps=obj._delete_file)
@ -48,10 +54,10 @@ def _importer(requests_mock: Mocker):
yield obj yield obj
@pytest.mark.django_db
def test_importer( def test_importer(
db,
import_paths: Tuple[Path, Path], import_paths: Tuple[Path, Path],
importer: Importer, importer: MockImporter,
track_type, track_type,
): ):
importer.import_dir(import_paths[0], track_type.code, [".mp3"]) importer.import_dir(import_paths[0], track_type.code, [".mp3"])
@ -61,10 +67,10 @@ def test_importer(
importer._delete_file.assert_not_called() importer._delete_file.assert_not_called()
@pytest.mark.django_db
def test_importer_and_delete( def test_importer_and_delete(
db,
import_paths: Tuple[Path, Path], import_paths: Tuple[Path, Path],
importer: Importer, importer: MockImporter,
track_type, track_type,
): ):
importer.delete_after_upload = True importer.delete_after_upload = True
@ -75,10 +81,10 @@ def test_importer_and_delete(
importer._delete_file.assert_called_with(import_paths[1]) importer._delete_file.assert_called_with(import_paths[1])
@pytest.mark.django_db
def test_importer_existing_file( def test_importer_existing_file(
db,
import_paths: Tuple[Path, Path], import_paths: Tuple[Path, Path],
importer: Importer, importer: MockImporter,
track_type, track_type,
): ):
baker.make("storage.File", md5="46305a7cf42ee53976c88d337e47e940") baker.make("storage.File", md5="46305a7cf42ee53976c88d337e47e940")
@ -90,10 +96,10 @@ def test_importer_existing_file(
importer._delete_file.assert_not_called() importer._delete_file.assert_not_called()
@pytest.mark.django_db
def test_importer_existing_file_and_delete( def test_importer_existing_file_and_delete(
db,
import_paths: Tuple[Path, Path], import_paths: Tuple[Path, Path],
importer: Importer, importer: MockImporter,
track_type, track_type,
): ):
baker.make("storage.File", md5="46305a7cf42ee53976c88d337e47e940") baker.make("storage.File", md5="46305a7cf42ee53976c88d337e47e940")
@ -106,10 +112,10 @@ def test_importer_existing_file_and_delete(
importer._delete_file.assert_called_with(import_paths[1]) importer._delete_file.assert_called_with(import_paths[1])
@pytest.mark.django_db
def test_importer_missing_track_type( def test_importer_missing_track_type(
db,
import_paths: Tuple[Path, Path], import_paths: Tuple[Path, Path],
importer: Importer, importer: MockImporter,
): ):
with pytest.raises( with pytest.raises(
ValueError, ValueError,