def test_multiple_generate_idempotent(self): client = ClientFactory.create() WorkEntryFactory.create( project__client=client, start=datetime(2015, 9, 14, 8, 0).replace(tzinfo=timezone.utc), end=datetime(2015, 9, 14, 12, 0).replace(tzinfo=timezone.utc) ) invoice = InvoiceFactory.create(client=client, date=date(2015, 9, 30)) invoice.generate() items = InvoiceItem.objects.all() self.assertEqual(items.count(), 1) # second call may not generate new items invoice.generate() self.assertEqual(items.count(), 1)
def test_multiple_generate_idempotent(self): client = ClientFactory.create() WorkEntryFactory.create(project__client=client, start=datetime(2015, 9, 14, 8, 0).replace(tzinfo=timezone.utc), end=datetime(2015, 9, 14, 12, 0).replace(tzinfo=timezone.utc)) invoice = InvoiceFactory.create(client=client, date=date(2015, 9, 30)) invoice.generate() items = InvoiceItem.objects.all() self.assertEqual(items.count(), 1) # second call may not generate new items invoice.generate() self.assertEqual(items.count(), 1)