def test_vfolder_calc_priority(settings, store0): vf = VirtualFolderDBFactory(filter_rules=store0.name) vf.priority = 5 vf.save() assert store0.calculate_priority() == 5.0 settings.INSTALLED_APPS.remove("virtualfolder") assert store0.calculate_priority() == 1.0
def test_vfolder_store_priorities(): # remove the default vfolders and update units to reset priorities VirtualFolder.objects.all().delete() [store.save() for store in Store.objects.all()] assert all( priority == 1 for priority in Store.objects.values_list("priority", flat=True)) vfolder0 = VirtualFolderDBFactory(filter_rules="store0.po") vfolder0.priority = 3 vfolder0.save() vfolder0_stores = vfolder0.units.values_list("store", flat=True).distinct() assert all(priority == 3 for priority in Store.objects.filter( id__in=vfolder0_stores).values_list("priority", flat=True)) assert all(priority == 1.0 for priority in Store.objects.exclude( id__in=vfolder0_stores).values_list("priority", flat=True)) vfolder0.filter_rules = "store1.po" vfolder0.save() vfolder0_stores = vfolder0.units.values_list("store", flat=True).distinct() assert all(priority == 3 for priority in Store.objects.filter( id__in=vfolder0_stores).values_list("priority", flat=True)) assert all(priority == 1.0 for priority in Store.objects.exclude( id__in=vfolder0_stores).values_list("priority", flat=True)) vfolder1 = VirtualFolderDBFactory(location='/{LANG}/project0/', filter_rules="store1.po") vfolder1.priority = 4 vfolder1.save() vfolder1_stores = vfolder1.units.values_list("store", flat=True).distinct() assert all(priority == 4.0 for priority in Store.objects.filter( id__in=vfolder1_stores).values_list("priority", flat=True)) assert all( priority == 3.0 for priority in Store.objects.filter(id__in=vfolder0_stores).exclude( id__in=vfolder1_stores).values_list("priority", flat=True)) assert all( priority == 1.0 for priority in Store.objects.exclude(id__in=vfolder0_stores).exclude( id__in=vfolder1_stores).values_list("priority", flat=True))
def test_vfolder_store_priorities(project0): # remove the default vfolders and update units to reset priorities VirtualFolder.objects.all().delete() assert all( priority == 1 for priority in Store.objects.values_list("priority", flat=True)) vfolder0 = VirtualFolderDBFactory(filter_rules="store0.po", name="FOO") vfolder0.priority = 3 vfolder0.save() vfolder0_stores = vfolder0.stores.values_list("pk", flat=True) assert all(priority == 3 for priority in Store.objects.filter( id__in=vfolder0_stores).values_list("priority", flat=True)) assert all(priority == 1.0 for priority in Store.objects.exclude( id__in=vfolder0_stores).values_list("priority", flat=True)) vfolder0.filter_rules = "store1.po" vfolder0.save() vfolder0_stores = vfolder0.stores.values_list("pk", flat=True) assert all(priority == 3 for priority in Store.objects.filter( id__in=vfolder0_stores).values_list("priority", flat=True)) assert all(priority == 1.0 for priority in Store.objects.exclude( id__in=vfolder0_stores).values_list("priority", flat=True)) vfolder1 = VirtualFolderDBFactory(filter_rules="store1.po") vfolder1.languages.add(*Language.objects.all()) vfolder1.projects.add(project0) vfolder1.priority = 4 vfolder1.save() vfolder1_stores = vfolder1.stores.values_list("pk", flat=True) assert all(priority == 4.0 for priority in Store.objects.filter( id__in=vfolder1_stores).values_list("priority", flat=True)) assert all( priority == 3.0 for priority in Store.objects.filter(id__in=vfolder0_stores).exclude( id__in=vfolder1_stores).values_list("priority", flat=True)) assert all( priority == 1.0 for priority in Store.objects.exclude(id__in=vfolder0_stores).exclude( id__in=vfolder1_stores).values_list("priority", flat=True))
def test_vfolder_store_priorities(project0): # remove the default vfolders and update units to reset priorities VirtualFolder.objects.all().delete() assert all( priority == 1 for priority in Store.objects.values_list("priority", flat=True)) vfolder0 = VirtualFolderDBFactory(filter_rules="store0.po", name="FOO") vfolder0.priority = 3 vfolder0.save() vfolder0_stores = vfolder0.stores.values_list("pk", flat=True) assert all( priority == 3 for priority in Store.objects.filter(id__in=vfolder0_stores) .values_list("priority", flat=True)) assert all( priority == 1.0 for priority in Store.objects.exclude(id__in=vfolder0_stores) .values_list("priority", flat=True)) vfolder0.filter_rules = "store1.po" vfolder0.save() vfolder0_stores = vfolder0.stores.values_list("pk", flat=True) assert all( priority == 3 for priority in Store.objects.filter(id__in=vfolder0_stores) .values_list("priority", flat=True)) assert all( priority == 1.0 for priority in Store.objects.exclude(id__in=vfolder0_stores) .values_list("priority", flat=True)) vfolder1 = VirtualFolderDBFactory( filter_rules="store1.po") vfolder1.languages.add(*Language.objects.all()) vfolder1.projects.add(project0) vfolder1.priority = 4 vfolder1.save() vfolder1_stores = vfolder1.stores.values_list("pk", flat=True) assert all( priority == 4.0 for priority in Store.objects.filter(id__in=vfolder1_stores) .values_list("priority", flat=True)) assert all( priority == 3.0 for priority in Store.objects.filter(id__in=vfolder0_stores) .exclude(id__in=vfolder1_stores) .values_list("priority", flat=True)) assert all( priority == 1.0 for priority in Store.objects.exclude(id__in=vfolder0_stores) .exclude(id__in=vfolder1_stores) .values_list("priority", flat=True))