Example #1
0
def test_sales_ranges_around_zero():
    shop = get_default_shop()
    person = create_random_person()
    initial_group_count = person.groups.count()
    sales_ranges = [("silver", 0, 0), ("gold", 0, None), ("diamond", None, 0)]
    for identifier, min, max in sales_ranges:
        create_sales_range(identifier, shop, min, max)

    assert get_total_sales(shop, person) == 0
    assign_to_group_based_on_sales(ContactGroupSalesRange, shop, person)
    assert person.groups.count() == (initial_group_count + 1)
    assert bool(
        [group for group in person.groups.all() if group.identifier == "gold"])
Example #2
0
def test_sales_ranges_around_zero():
    shop = get_default_shop()
    person = create_random_person()
    initial_group_count = person.groups.count()
    sales_ranges = [
        ("silver", 0, 0),
        ("gold", 0, None),
        ("diamond", None, 0)
    ]
    for identifier, min, max in sales_ranges:
        create_sales_range(identifier, shop, min, max)

    assert get_total_sales(shop, person) == 0
    assign_to_group_based_on_sales(ContactGroupSalesRange, shop, person)
    assert person.groups.count() == (initial_group_count + 1)
    assert bool([group for group in person.groups.all() if group.identifier == "gold"])
 def save(self, *args, **kwargs):
     self.clean()
     super(ContactGroupSalesRange, self).save(*args, **kwargs)
     for customer in Contact.objects.all():
         assign_to_group_based_on_sales(ContactGroupSalesRange, self.shop, customer, sales_range=self)