def test_group(release): subject = GroupFactory() release.participants = [subject] out = Template("{% load music_tags %}" "{% contextual_participants release=release context=object %}").render( Context({"release": release, "object": subject}) ) assert out.rstrip("\n") == ""
def test_solo_work(release): # When an idol is the subject object and the only participant in a release, # "Solo Work" should be rendered. subject = IdolFactory() release.participants = [subject] out = Template("{% load music_tags %}" "{% contextual_participants release=release context=object %}").render( Context({"release": release, "object": subject}) ) assert out.rstrip("\n") == '<span class="pill status-solo">Solo Work</span>'
def test_idols_and_single_groups(release): # When an idol is the subject object and there is a single participating # group, it should not render a result. subject = IdolFactory() primary_group = GroupFactory() subject.primary_membership = MembershipFactory(idol=subject, group=primary_group) release.participants = [primary_group] out = Template("{% load music_tags %}" "{% contextual_participants release=release context=object %}").render( Context({"release": release, "object": subject}) ) assert out.rstrip("\n") == ""
def test_soloist(release): # When a soloist is the subject object, it should not render a result. subject = IdolFactory() group = GroupFactory(romanized_name="Soloist") membership = MembershipFactory(idol=subject, group=group) subject.primary_membership = membership release.participants = [subject] out = Template("{% load music_tags %}" "{% contextual_participants release=release context=object %}").render( Context({"release": release, "object": subject}) ) assert out.rstrip("\n") == ""