Skip to content
Snippets Groups Projects
factories.py 974 B
Newer Older
  • Learn to ignore specific revisions
  • import factory
    
    from funkwhale_api.factories import registry, NoUpdateOnCreate
    from funkwhale_api.federation import factories as federation_factories
    from funkwhale_api.music import factories as music_factories
    
    from . import models
    
    
    def set_actor(o):
        return models.generate_actor(str(o.uuid))
    
    
    @registry.register
    class ChannelFactory(NoUpdateOnCreate, factory.django.DjangoModelFactory):
        uuid = factory.Faker("uuid4")
        attributed_to = factory.SubFactory(federation_factories.ActorFactory)
        library = factory.SubFactory(
            federation_factories.MusicLibraryFactory,
            actor=factory.SelfAttribute("..attributed_to"),
        )
        actor = factory.LazyAttribute(set_actor)
        artist = factory.SubFactory(music_factories.ArtistFactory)
    
        class Meta:
            model = "audio.Channel"
    
        class Params:
            local = factory.Trait(
                attributed_to__fid=factory.Faker("federation_url", local=True),
                artist__local=True,
            )