Ejemplo n.º 1
0
def test_vfolder_unit_priorities(site_matrix):

    assert all(
        priority == 1
        for priority
        in Unit.objects.values_list("priority", flat=True))

    vfolder0 = VirtualFolderFactory(filter_rules="store0.po", priority=3)

    assert all(
        priority == 3
        for priority
        in vfolder0.units.values_list("priority", flat=True))

    assert all(
        priority == 1.0
        for priority
        in Unit.objects.filter(vfolders__isnull=True)
                       .values_list("priority", flat=True))

    vfolder0.filter_rules = "store1.po"
    vfolder0.save()

    assert all(
        priority == 3
        for priority
        in vfolder0.units.values_list("priority", flat=True))

    assert all(
        priority == 1.0
        for priority
        in Unit.objects.filter(vfolders__isnull=True)
                       .values_list("priority", flat=True))

    vfolder1 = VirtualFolderFactory(
        location='/{LANG}/project0/',
        filter_rules="store1.po",
        priority=4)
    vf1_pks = vfolder1.units.values_list("pk", flat=True)

    assert all(
        priority == 4.0
        for priority
        in vfolder1.units.values_list("priority", flat=True))

    assert all(
        priority == 3.0
        for priority
        in vfolder0.units.exclude(pk__in=vf1_pks)
                         .values_list("priority", flat=True))

    assert all(
        priority == 1.0
        for priority
        in Unit.objects.filter(vfolders__isnull=True)
                       .values_list("priority", flat=True))