Example #1
0
    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)
Example #2
0
    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)