mirror of
https://code.eliotberriot.com/funkwhale/funkwhale.git
synced 2025-10-05 03:09:23 +02:00
Implement tag models
This commit is contained in:
parent
c170ee9394
commit
6dde4b73cd
28 changed files with 1034 additions and 141 deletions
|
@ -2,10 +2,11 @@ import os
|
|||
|
||||
import factory
|
||||
|
||||
from funkwhale_api.factories import ManyToManyFromList, registry, NoUpdateOnCreate
|
||||
from funkwhale_api.factories import registry, NoUpdateOnCreate
|
||||
|
||||
from funkwhale_api.federation import factories as federation_factories
|
||||
from funkwhale_api.music import licenses
|
||||
from funkwhale_api.tags import models as tags_models
|
||||
from funkwhale_api.users import factories as users_factories
|
||||
|
||||
SAMPLES_PATH = os.path.join(
|
||||
|
@ -103,7 +104,6 @@ class TrackFactory(NoUpdateOnCreate, factory.django.DjangoModelFactory):
|
|||
album = factory.SubFactory(AlbumFactory)
|
||||
artist = factory.SelfAttribute("album.artist")
|
||||
position = 1
|
||||
tags = ManyToManyFromList("tags")
|
||||
playable = playable_factory("track")
|
||||
|
||||
class Meta:
|
||||
|
@ -127,6 +127,15 @@ class TrackFactory(NoUpdateOnCreate, factory.django.DjangoModelFactory):
|
|||
self.license = LicenseFactory(code=extracted)
|
||||
self.save()
|
||||
|
||||
@factory.post_generation
|
||||
def set_tags(self, create, extracted, **kwargs):
|
||||
if not create:
|
||||
# Simple build, do nothing.
|
||||
return
|
||||
|
||||
if extracted:
|
||||
tags_models.set_tags(self, *extracted)
|
||||
|
||||
|
||||
@registry.register
|
||||
class UploadFactory(NoUpdateOnCreate, factory.django.DjangoModelFactory):
|
||||
|
@ -164,18 +173,6 @@ class UploadVersionFactory(NoUpdateOnCreate, factory.django.DjangoModelFactory):
|
|||
model = "music.UploadVersion"
|
||||
|
||||
|
||||
@registry.register
|
||||
class TagFactory(NoUpdateOnCreate, factory.django.DjangoModelFactory):
|
||||
name = factory.SelfAttribute("slug")
|
||||
slug = factory.Faker("slug")
|
||||
|
||||
class Meta:
|
||||
model = "taggit.Tag"
|
||||
|
||||
|
||||
# XXX To remove
|
||||
|
||||
|
||||
class ImportBatchFactory(NoUpdateOnCreate, factory.django.DjangoModelFactory):
|
||||
submitted_by = factory.SubFactory(users_factories.UserFactory)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue