style: format file with black==23.7.0

environments/review-docs-pre-c-w6o74p/deployments/18158
jo 2023-07-25 19:04:32 +02:00
rodzic 9bc1f09ef1
commit abadf6c9fb
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: B2FEC9B22722B984
45 zmienionych plików z 18 dodań i 66 usunięć

Wyświetl plik

@ -46,7 +46,7 @@ def custom_preprocessing_hook(endpoints):
# your modifications to the list of operations that are exposed in the schema # your modifications to the list of operations that are exposed in the schema
api_type = os.environ.get("API_TYPE", "v1") api_type = os.environ.get("API_TYPE", "v1")
for (path, path_regex, method, callback) in endpoints: for path, path_regex, method, callback in endpoints:
if path.startswith("/api/v1/providers"): if path.startswith("/api/v1/providers"):
continue continue

Wyświetl plik

@ -9,7 +9,6 @@ from . import serializers, utils
class ActivityViewSet(viewsets.GenericViewSet): class ActivityViewSet(viewsets.GenericViewSet):
serializer_class = serializers.AutoSerializer serializer_class = serializers.AutoSerializer
permission_classes = [ConditionalAuthentication] permission_classes = [ConditionalAuthentication]
queryset = TrackFavorite.objects.none() queryset = TrackFavorite.objects.none()

Wyświetl plik

@ -26,7 +26,6 @@ class PodcastRSSRenderer(renderers.JSONRenderer):
class PodcastRSSContentNegociation(negotiation.DefaultContentNegotiation): class PodcastRSSContentNegociation(negotiation.DefaultContentNegotiation):
def select_renderer(self, request, renderers, format_suffix=None): def select_renderer(self, request, renderers, format_suffix=None):
return (PodcastRSSRenderer(), PodcastRSSRenderer.media_type) return (PodcastRSSRenderer(), PodcastRSSRenderer.media_type)

Wyświetl plik

@ -57,7 +57,7 @@ class SmartSearchFilter(django_filters.CharFilter):
return qs return qs
try: try:
cleaned = self.config.clean(value) cleaned = self.config.clean(value)
except (forms.ValidationError): except forms.ValidationError:
return qs.none() return qs.none()
return search.apply(qs, cleaned) return search.apply(qs, cleaned)

Wyświetl plik

@ -119,7 +119,6 @@ class MultipleQueryFilter(filters.TypedMultipleChoiceFilter):
def filter_target(value): def filter_target(value):
config = { config = {
"artist": ["artist", "target_id", int], "artist": ["artist", "target_id", int],
"album": ["album", "target_id", int], "album": ["album", "target_id", int],
@ -177,7 +176,6 @@ class ActorScopeFilter(filters.CharFilter):
super().__init__(*args, **kwargs) super().__init__(*args, **kwargs)
def filter(self, queryset, value): def filter(self, queryset, value):
if not value: if not value:
return queryset return queryset

Wyświetl plik

@ -46,7 +46,6 @@ def create_local_accounts(factories, count, dependencies):
def create_taggable_items(dependency): def create_taggable_items(dependency):
def inner(factories, count, dependencies): def inner(factories, count, dependencies):
objs = [] objs = []
tagged_objects = dependencies.get( tagged_objects = dependencies.get(
dependency, list(CONFIG_BY_ID[dependency]["model"].objects.all().only("pk")) dependency, list(CONFIG_BY_ID[dependency]["model"].objects.all().only("pk"))
@ -260,7 +259,6 @@ class Command(BaseCommand):
self.stdout.write("") self.stdout.write("")
if options["dry_run"]: if options["dry_run"]:
self.stdout.write( self.stdout.write(
"Run this command with --no-dry-run to commit the changes to the database" "Run this command with --no-dry-run to commit the changes to the database"
) )

Wyświetl plik

@ -167,7 +167,6 @@ def render_tags(tags):
<meta hello="world" /> <meta hello="world" />
""" """
for tag in tags: for tag in tags:
yield "<{tag} {attrs} />".format( yield "<{tag} {attrs} />".format(
tag=tag.pop("tag"), tag=tag.pop("tag"),
attrs=" ".join( attrs=" ".join(
@ -408,7 +407,6 @@ class PymallocMiddleware:
self.get_response = get_response self.get_response = get_response
def __call__(self, request): def __call__(self, request):
if tracemalloc.is_tracing(): if tracemalloc.is_tracing():
snapshot = tracemalloc.take_snapshot() snapshot = tracemalloc.take_snapshot()
stats = snapshot.statistics("lineno") stats = snapshot.statistics("lineno")

Wyświetl plik

@ -155,7 +155,7 @@ class ListenBrainzClient:
def _get_payload_many(tracks): def _get_payload_many(tracks):
payload = [] payload = []
for (listened_at, track) in tracks: for listened_at, track in tracks:
data = _get_payload(track, listened_at) data = _get_payload(track, listened_at)
payload.append(data) payload.append(data)
return payload return payload

Wyświetl plik

@ -19,7 +19,6 @@ class TrackFavoriteViewSet(
mixins.ListModelMixin, mixins.ListModelMixin,
viewsets.GenericViewSet, viewsets.GenericViewSet,
): ):
filterset_class = filters.TrackFavoriteFilter filterset_class = filters.TrackFavoriteFilter
serializer_class = serializers.UserTrackFavoriteSerializer serializer_class = serializers.UserTrackFavoriteSerializer
queryset = models.TrackFavorite.objects.all().select_related( queryset = models.TrackFavorite.objects.all().select_related(

Wyświetl plik

@ -180,7 +180,6 @@ def receive(activity, on_behalf_of, inbox_actor=None):
inbox_items = [] inbox_items = []
for recipients, type in [(local_to_recipients, "to"), (local_cc_recipients, "cc")]: for recipients, type in [(local_to_recipients, "to"), (local_cc_recipients, "cc")]:
for r in recipients: for r in recipients:
inbox_items.append(models.InboxItem(actor_id=r, type=type, activity=copy)) inbox_items.append(models.InboxItem(actor_id=r, type=type, activity=copy))

Wyświetl plik

@ -208,7 +208,6 @@ class InboxItemViewSet(
mixins.RetrieveModelMixin, mixins.RetrieveModelMixin,
viewsets.GenericViewSet, viewsets.GenericViewSet,
): ):
queryset = ( queryset = (
models.InboxItem.objects.select_related("activity__actor") models.InboxItem.objects.select_related("activity__actor")
.prefetch_related("activity__object", "activity__target") .prefetch_related("activity__object", "activity__target")
@ -239,7 +238,6 @@ class InboxItemViewSet(
class FetchViewSet( class FetchViewSet(
mixins.CreateModelMixin, mixins.RetrieveModelMixin, viewsets.GenericViewSet mixins.CreateModelMixin, mixins.RetrieveModelMixin, viewsets.GenericViewSet
): ):
queryset = models.Fetch.objects.select_related("actor") queryset = models.Fetch.objects.select_related("actor")
serializer_class = api_serializers.FetchSerializer serializer_class = api_serializers.FetchSerializer
permission_classes = [permissions.IsAuthenticated] permission_classes = [permissions.IsAuthenticated]

Wyświetl plik

@ -154,7 +154,6 @@ def dereference(value, references):
def get_value(value, keep=None, attr=None): def get_value(value, keep=None, attr=None):
if keep == "first": if keep == "first":
value = value[0] value = value[0]
if attr: if attr:
@ -253,7 +252,6 @@ class JsonLdSerializer(serializers.Serializer):
def run_validation(self, data=empty): def run_validation(self, data=empty):
if data and data is not empty: if data and data is not empty:
self.jsonld_context = data.get("@context", []) self.jsonld_context = data.get("@context", [])
if self.context.get("expand", self.jsonld_expand): if self.context.get("expand", self.jsonld_expand):
try: try:

Wyświetl plik

@ -756,7 +756,6 @@ class FollowActionSerializer(serializers.Serializer):
class AcceptFollowSerializer(FollowActionSerializer): class AcceptFollowSerializer(FollowActionSerializer):
type = serializers.ChoiceField(choices=["Accept"]) type = serializers.ChoiceField(choices=["Accept"])
action_type = "accept" action_type = "accept"
@ -770,7 +769,6 @@ class AcceptFollowSerializer(FollowActionSerializer):
class RejectFollowSerializer(FollowActionSerializer): class RejectFollowSerializer(FollowActionSerializer):
type = serializers.ChoiceField(choices=["Reject"]) type = serializers.ChoiceField(choices=["Reject"])
action_type = "reject" action_type = "reject"

Wyświetl plik

@ -139,7 +139,6 @@ def dispatch_outbox(activity):
"delivery", "delivery",
) )
def deliver_to_remote(delivery): def deliver_to_remote(delivery):
if not preferences.get("federation__enabled"): if not preferences.get("federation__enabled"):
# federation is disabled, we only deliver to local recipients # federation is disabled, we only deliver to local recipients
return return

Wyświetl plik

@ -145,7 +145,6 @@ def is_local(url) -> bool:
def get_actor_data_from_username(username): def get_actor_data_from_username(username):
parts = username.split("@") parts = username.split("@")
return { return {
@ -243,7 +242,6 @@ FID_MODEL_LABELS = [
def get_object_by_fid(fid, local=None): def get_object_by_fid(fid, local=None):
if local: if local:
parsed = urllib.parse.urlparse(fid) parsed = urllib.parse.urlparse(fid)
if parsed.netloc != settings.FEDERATION_HOSTNAME: if parsed.netloc != settings.FEDERATION_HOSTNAME:

Wyświetl plik

@ -17,7 +17,6 @@ class ListeningViewSet(
mixins.RetrieveModelMixin, mixins.RetrieveModelMixin,
viewsets.GenericViewSet, viewsets.GenericViewSet,
): ):
serializer_class = serializers.ListeningSerializer serializer_class = serializers.ListeningSerializer
queryset = models.Listening.objects.all().select_related( queryset = models.Listening.objects.all().select_related(
"user__actor__attachment_icon" "user__actor__attachment_icon"

Wyświetl plik

@ -395,7 +395,6 @@ class ManageNestedTrackSerializer(serializers.ModelSerializer):
class ManageNestedAlbumSerializer(ManageBaseAlbumSerializer): class ManageNestedAlbumSerializer(ManageBaseAlbumSerializer):
tracks_count = serializers.SerializerMethodField() tracks_count = serializers.SerializerMethodField()
class Meta: class Meta:
@ -662,7 +661,6 @@ class ManageUploadSerializer(serializers.ModelSerializer):
class ManageTagSerializer(ManageBaseAlbumSerializer): class ManageTagSerializer(ManageBaseAlbumSerializer):
tracks_count = serializers.SerializerMethodField() tracks_count = serializers.SerializerMethodField()
albums_count = serializers.SerializerMethodField() albums_count = serializers.SerializerMethodField()
artists_count = serializers.SerializerMethodField() artists_count = serializers.SerializerMethodField()

Wyświetl plik

@ -674,7 +674,6 @@ class ManageChannelViewSet(
mixins.DestroyModelMixin, mixins.DestroyModelMixin,
viewsets.GenericViewSet, viewsets.GenericViewSet,
): ):
url_lookups = [ url_lookups = [
{ {
"lookup_field": "uuid", "lookup_field": "uuid",

Wyświetl plik

@ -36,7 +36,6 @@ def check_allow_list(payload, **kwargs):
} }
if relevant_domains - allowed_domains: if relevant_domains - allowed_domains:
raise mrf.Discard( raise mrf.Discard(
"These domains are not allowed: {}".format( "These domains are not allowed: {}".format(
", ".join(relevant_domains - allowed_domains) ", ".join(relevant_domains - allowed_domains)

Wyświetl plik

@ -46,7 +46,6 @@ class RelatedFilterSet(filters.FilterSet):
class ChannelFilterSet(filters.FilterSet): class ChannelFilterSet(filters.FilterSet):
channel = filters.CharFilter(field_name="_", method="filter_channel") channel = filters.CharFilter(field_name="_", method="filter_channel")
def filter_channel(self, queryset, name, value): def filter_channel(self, queryset, name, value):
@ -70,7 +69,6 @@ class ChannelFilterSet(filters.FilterSet):
class LibraryFilterSet(filters.FilterSet): class LibraryFilterSet(filters.FilterSet):
library = filters.CharFilter(field_name="_", method="filter_library") library = filters.CharFilter(field_name="_", method="filter_library")
def filter_library(self, queryset, name, value): def filter_library(self, queryset, name, value):
@ -96,7 +94,6 @@ class ArtistFilter(
audio_filters.IncludeChannelsFilterSet, audio_filters.IncludeChannelsFilterSet,
moderation_filters.HiddenContentFilterSet, moderation_filters.HiddenContentFilterSet,
): ):
q = fields.SearchFilter(search_fields=["name"], fts_search_fields=["body_text"]) q = fields.SearchFilter(search_fields=["name"], fts_search_fields=["body_text"])
playable = filters.BooleanFilter(field_name="_", method="filter_playable") playable = filters.BooleanFilter(field_name="_", method="filter_playable")
has_albums = filters.BooleanFilter(field_name="_", method="filter_has_albums") has_albums = filters.BooleanFilter(field_name="_", method="filter_has_albums")

Wyświetl plik

@ -810,7 +810,6 @@ def check_updates(stdout, library, extensions, paths, batch_size):
) )
for upload in rows: for upload in rows:
check_upload(stdout, upload) check_upload(stdout, upload)
checked_paths.add(upload.source.replace("file://", "", 1)) checked_paths.add(upload.source.replace("file://", "", 1))

Wyświetl plik

@ -136,7 +136,6 @@ def clean_flac_pictures(apic):
def clean_ogg_pictures(metadata_block_picture): def clean_ogg_pictures(metadata_block_picture):
pictures = [] pictures = []
for b64_data in [metadata_block_picture]: for b64_data in [metadata_block_picture]:
try: try:
data = base64.b64decode(b64_data) data = base64.b64decode(b64_data)
except (TypeError, ValueError): except (TypeError, ValueError):

Wyświetl plik

@ -437,7 +437,6 @@ class TrackQuerySet(common_models.LocalFromFidQuerySet, models.QuerySet):
) )
def annotate_playable_by_actor(self, actor): def annotate_playable_by_actor(self, actor):
files = ( files = (
Upload.objects.playable_by(actor) Upload.objects.playable_by(actor)
.filter(track=models.OuterRef("id")) .filter(track=models.OuterRef("id"))
@ -448,7 +447,6 @@ class TrackQuerySet(common_models.LocalFromFidQuerySet, models.QuerySet):
return self.annotate(is_playable_by_actor=subquery) return self.annotate(is_playable_by_actor=subquery)
def playable_by(self, actor, include=True): def playable_by(self, actor, include=True):
if settings.MUSIC_USE_DENORMALIZATION: if settings.MUSIC_USE_DENORMALIZATION:
if actor is not None: if actor is not None:
query = models.Q(actor=None) | models.Q(actor=actor) query = models.Q(actor=None) | models.Q(actor=actor)

Wyświetl plik

@ -445,7 +445,6 @@ def get_best_candidate_or_create(model, query, defaults, sort_fields):
""" """
candidates = model.objects.filter(query) candidates = model.objects.filter(query)
if candidates: if candidates:
return sort_candidates(candidates, sort_fields)[0], False return sort_candidates(candidates, sort_fields)[0], False
return model.objects.create(**defaults), True return model.objects.create(**defaults), True

Wyświetl plik

@ -20,7 +20,6 @@ class PlaylistViewSet(
mixins.ListModelMixin, mixins.ListModelMixin,
viewsets.GenericViewSet, viewsets.GenericViewSet,
): ):
serializer_class = serializers.PlaylistSerializer serializer_class = serializers.PlaylistSerializer
queryset = ( queryset = (
models.Playlist.objects.all() models.Playlist.objects.all()

Wyświetl plik

@ -54,7 +54,6 @@ class RadioSessionTrackSerializer(serializers.ModelSerializer):
class RadioSessionSerializer(serializers.ModelSerializer): class RadioSessionSerializer(serializers.ModelSerializer):
related_object_id = serializers.CharField(required=False, allow_null=True) related_object_id = serializers.CharField(required=False, allow_null=True)
class Meta: class Meta:

Wyświetl plik

@ -20,7 +20,6 @@ class RadioViewSet(
mixins.DestroyModelMixin, mixins.DestroyModelMixin,
viewsets.GenericViewSet, viewsets.GenericViewSet,
): ):
serializer_class = serializers.RadioSerializer serializer_class = serializers.RadioSerializer
permission_classes = [ permission_classes = [
oauth_permissions.ScopePermission, oauth_permissions.ScopePermission,
@ -87,7 +86,6 @@ class RadioViewSet(
class RadioSessionViewSet( class RadioSessionViewSet(
mixins.CreateModelMixin, mixins.RetrieveModelMixin, viewsets.GenericViewSet mixins.CreateModelMixin, mixins.RetrieveModelMixin, viewsets.GenericViewSet
): ):
serializer_class = serializers.RadioSessionSerializer serializer_class = serializers.RadioSessionSerializer
queryset = models.RadioSession.objects.all() queryset = models.RadioSession.objects.all()
permission_classes = [] permission_classes = []

Wyświetl plik

@ -387,7 +387,6 @@ class SubsonicViewSet(viewsets.GenericViewSet):
try: try:
offset = int(data.get("offset", 0)) offset = int(data.get("offset", 0))
except (TypeError, ValueError): except (TypeError, ValueError):
offset = 0 offset = 0
try: try:

Wyświetl plik

@ -14,7 +14,6 @@ class MyUserChangeForm(UserChangeForm):
class MyUserCreationForm(UserCreationForm): class MyUserCreationForm(UserCreationForm):
error_message = UserCreationForm.error_messages.update( error_message = UserCreationForm.error_messages.update(
{"duplicate_username": "This username has already been taken."} {"duplicate_username": "This username has already been taken."}
) )

Wyświetl plik

@ -114,7 +114,6 @@ class UserManager(BaseUserManager):
class User(AbstractUser): class User(AbstractUser):
# First Name and Last Name do not cover name patterns # First Name and Last Name do not cover name patterns
# around the globe. # around the globe.
name = models.CharField(_("Name of User"), blank=True, max_length=255) name = models.CharField(_("Name of User"), blank=True, max_length=255)

Wyświetl plik

@ -47,7 +47,6 @@ METHOD_SCOPE_MAPPING = {
class ScopePermission(permissions.BasePermission): class ScopePermission(permissions.BasePermission):
def has_permission(self, request, view): def has_permission(self, request, view):
if request.method.lower() in ["options", "head"]: if request.method.lower() in ["options", "head"]:
return True return True
@ -103,7 +102,6 @@ class ScopePermission(permissions.BasePermission):
) )
def has_permission_token(self, token, required_scope): def has_permission_token(self, token, required_scope):
if token.is_expired(): if token.is_expired():
return False return False

Wyświetl plik

@ -185,7 +185,6 @@ class UserWriteSerializer(serializers.ModelSerializer):
class UserReadSerializer(serializers.ModelSerializer): class UserReadSerializer(serializers.ModelSerializer):
permissions = serializers.SerializerMethodField() permissions = serializers.SerializerMethodField()
full_username = serializers.SerializerMethodField() full_username = serializers.SerializerMethodField()
avatar = common_serializers.AttachmentSerializer(source="get_avatar") avatar = common_serializers.AttachmentSerializer(source="get_avatar")

Wyświetl plik

@ -138,7 +138,6 @@ def test_channel_update_permission(logged_in_api_client, factories):
def test_channel_delete(logged_in_api_client, factories, mocker): def test_channel_delete(logged_in_api_client, factories, mocker):
actor = logged_in_api_client.user.create_actor() actor = logged_in_api_client.user.create_actor()
channel = factories["audio.Channel"](attributed_to=actor) channel = factories["audio.Channel"](attributed_to=actor)
@ -336,7 +335,6 @@ def test_channel_rss_feed_authentication_required(factories, api_client, prefere
def test_channel_metadata_choices(factories, api_client): def test_channel_metadata_choices(factories, api_client):
expected = { expected = {
"language": [ "language": [
{"value": code, "label": name} for code, name in locales.ISO_639_CHOICES {"value": code, "label": name} for code, name in locales.ISO_639_CHOICES

Wyświetl plik

@ -16,7 +16,6 @@ from funkwhale_api.federation import (
def test_receive_validates_basic_attributes_and_stores_activity( def test_receive_validates_basic_attributes_and_stores_activity(
mrf_inbox_registry, factories, now, mocker mrf_inbox_registry, factories, now, mocker
): ):
mocker.patch.object( mocker.patch.object(
activity.InboxRouter, "get_matching_handlers", return_value=True activity.InboxRouter, "get_matching_handlers", return_value=True
) )
@ -598,7 +597,6 @@ def test_prepare_deliveries_and_inbox_items_allow_list(factories, preferences):
def test_prepare_deliveries_and_inbox_items_instances_with_followers(factories): def test_prepare_deliveries_and_inbox_items_instances_with_followers(factories):
domain1 = factories["federation.Domain"](with_service_actor=True) domain1 = factories["federation.Domain"](with_service_actor=True)
domain2 = factories["federation.Domain"](with_service_actor=True) domain2 = factories["federation.Domain"](with_service_actor=True)
library = factories["music.Library"](actor__local=True) library = factories["music.Library"](actor__local=True)

Wyświetl plik

@ -237,7 +237,6 @@ async def test_fetch_many(a_responses):
def test_dereference(): def test_dereference():
followers_doc = { followers_doc = {
"@context": jsonld.get_default_context(), "@context": jsonld.get_default_context(),
"id": "https://noop/federation/actors/demo/followers", "id": "https://noop/federation/actors/demo/followers",

Wyświetl plik

@ -401,7 +401,6 @@ def test_inbox_delete_library(factories):
def test_inbox_delete_album(factories): def test_inbox_delete_album(factories):
album = factories["music.Album"](attributed=True) album = factories["music.Album"](attributed=True)
payload = { payload = {
"type": "Delete", "type": "Delete",

Wyświetl plik

@ -4,7 +4,6 @@ from funkwhale_api.federation import routes, serializers
def test_pleroma_actor_from_ap_with_tags(factories): def test_pleroma_actor_from_ap_with_tags(factories):
payload = { payload = {
"@context": [ "@context": [
"https://www.w3.org/ns/activitystreams", "https://www.w3.org/ns/activitystreams",
@ -73,7 +72,6 @@ def test_pleroma_actor_from_ap_with_tags(factories):
def test_pleroma_actor_from_ap(factories): def test_pleroma_actor_from_ap(factories):
payload = { payload = {
"@context": [ "@context": [
"https://www.w3.org/ns/activitystreams", "https://www.w3.org/ns/activitystreams",

Wyświetl plik

@ -156,7 +156,6 @@ def test_import_track_with_different_artist_than_release(factories, mocker):
"extension,mimetype", [("ogg", "audio/ogg"), ("mp3", "audio/mpeg")] "extension,mimetype", [("ogg", "audio/ogg"), ("mp3", "audio/mpeg")]
) )
def test_audio_track_mime_type(extension, mimetype, factories): def test_audio_track_mime_type(extension, mimetype, factories):
name = ".".join(["test", extension]) name = ".".join(["test", extension])
path = os.path.join(DATA_DIR, name) path = os.path.join(DATA_DIR, name)
upload = factories["music.Upload"](audio_file__from_path=path, mimetype=None) upload = factories["music.Upload"](audio_file__from_path=path, mimetype=None)
@ -166,7 +165,6 @@ def test_audio_track_mime_type(extension, mimetype, factories):
@pytest.mark.parametrize("name", ["test.ogg", "test.mp3"]) @pytest.mark.parametrize("name", ["test.ogg", "test.mp3"])
def test_audio_track_checksum(name, factories): def test_audio_track_checksum(name, factories):
path = os.path.join(DATA_DIR, name) path = os.path.join(DATA_DIR, name)
upload = factories["music.Upload"](audio_file__from_path=path, mimetype=None) upload = factories["music.Upload"](audio_file__from_path=path, mimetype=None)

Wyświetl plik

@ -135,7 +135,6 @@ def test_clean_config_is_called_on_serializer_save(mocker, factories):
@pytest.mark.parametrize("radio_type", ["random", "less-listened", "favorites"]) @pytest.mark.parametrize("radio_type", ["random", "less-listened", "favorites"])
def test_create_radio_session(radio_type, logged_in_api_client): def test_create_radio_session(radio_type, logged_in_api_client):
url = reverse("api:v1:radios:sessions-list") url = reverse("api:v1:radios:sessions-list")
response = logged_in_api_client.post(url, {"radio_type": radio_type}) response = logged_in_api_client.post(url, {"radio_type": radio_type})

Wyświetl plik

@ -2,7 +2,6 @@ from funkwhale_api.radios import filters
def test_clean_config_artist_name_sorting(factories): def test_clean_config_artist_name_sorting(factories):
artist3 = factories["music.Artist"](name="The Green Eyes") artist3 = factories["music.Artist"](name="The Green Eyes")
artist2 = factories["music.Artist"](name="The Green Eyed Machine") artist2 = factories["music.Artist"](name="The Green Eyed Machine")
artist1 = factories["music.Artist"](name="The Green Seed") artist1 = factories["music.Artist"](name="The Green Seed")
@ -21,7 +20,6 @@ def test_clean_config_artist_name_sorting(factories):
def test_clean_config_tag_name_sorting(factories): def test_clean_config_tag_name_sorting(factories):
tag3 = factories["tags.Tag"](name="Rock") tag3 = factories["tags.Tag"](name="Rock")
tag2 = factories["tags.Tag"](name="Classic") tag2 = factories["tags.Tag"](name="Classic")
tag1 = factories["tags.Tag"](name="Punk") tag1 = factories["tags.Tag"](name="Punk")

Wyświetl plik

@ -419,7 +419,7 @@ def test_can_start_custom_multiple_radio_from_api(api_client, factories):
tracks = factories["music.Track"].create_batch(5) tracks = factories["music.Track"].create_batch(5)
url = reverse("api:v1:radios:sessions-list") url = reverse("api:v1:radios:sessions-list")
map_filters_to_type = {"tags": "names", "artists": "ids", "playlists": "names"} map_filters_to_type = {"tags": "names", "artists": "ids", "playlists": "names"}
for (key, value) in map_filters_to_type.items(): for key, value in map_filters_to_type.items():
attr = value[:-1] attr = value[:-1]
track_filter_key = [getattr(a.artist, attr) for a in tracks] track_filter_key = [getattr(a.artist, attr) for a in tracks]
config = {"filters": [{"type": key, value: track_filter_key}]} config = {"filters": [{"type": key, value: track_filter_key}]}

Wyświetl plik

@ -2,5 +2,4 @@ from . import utils as test_utils
def test_to_api_date(now): def test_to_api_date(now):
assert test_utils.to_api_date(now) == now.isoformat().split("+")[0] + "Z" assert test_utils.to_api_date(now) == now.isoformat().split("+")[0] + "Z"

Wyświetl plik

@ -187,5 +187,4 @@ from funkwhale_api.users.oauth import scopes
], ],
) )
def test_get_scopes_from_user_permissions(user_perms, expected): def test_get_scopes_from_user_permissions(user_perms, expected):
assert scopes.get_from_permissions(**user_perms) == expected assert scopes.get_from_permissions(**user_perms) == expected

Wyświetl plik

@ -7,7 +7,6 @@ from distutils.version import StrictVersion
def get_versions(): def get_versions():
output = subprocess.check_output( output = subprocess.check_output(
["git", "tag", "-l", "--format=%(creatordate:iso-strict)|%(refname:short)"] ["git", "tag", "-l", "--format=%(creatordate:iso-strict)|%(refname:short)"]
) )
@ -16,7 +15,7 @@ def get_versions():
for line in output.decode().splitlines(): for line in output.decode().splitlines():
try: try:
date, tag = line.split("|") date, tag = line.split("|")
except (ValueError): except ValueError:
continue continue
if not date or not tag: if not date or not tag:

Wyświetl plik

@ -267,7 +267,11 @@ REPLACEMENTS = {
("background", "var(--site-background)"), ("background", "var(--site-background)"),
("color", "var(--text-color)"), ("color", "var(--text-color)"),
], ],
("::-webkit-selection", "::-moz-selection", "::selection",): [ (
"::-webkit-selection",
"::-moz-selection",
"::selection",
): [
("color", "var(--text-selection-color)"), ("color", "var(--text-selection-color)"),
("background-color", "var(--text-selection-background)"), ("background-color", "var(--text-selection-background)"),
], ],
@ -448,7 +452,10 @@ REPLACEMENTS = {
): [ ): [
("color", "var(--input-focus-placeholder-color)"), ("color", "var(--input-focus-placeholder-color)"),
], ],
(".ui.form .field > label", ".ui.form .inline.fields .field > label",): [ (
".ui.form .field > label",
".ui.form .inline.fields .field > label",
): [
("color", "var(--form-label-color)"), ("color", "var(--form-label-color)"),
], ],
}, },
@ -779,7 +786,10 @@ REPLACEMENTS = {
".structured", ".structured",
"tablet stackable", "tablet stackable",
], ],
(".ui.table", ".ui.table > thead > tr > th",): [ (
".ui.table",
".ui.table > thead > tr > th",
): [
("color", "var(--text-color)"), ("color", "var(--text-color)"),
("background", "var(--table-background)"), ("background", "var(--table-background)"),
], ],