diff --git a/quickbooks/objects/invoice.py b/quickbooks/objects/invoice.py index 7db64818..ddcdb943 100644 --- a/quickbooks/objects/invoice.py +++ b/quickbooks/objects/invoice.py @@ -104,3 +104,12 @@ def email_sent(self): return True return False + + def to_ref(self): + ref = Ref() + + ref.name = self.DocNumber + ref.type = self.qbo_object_name + ref.value = self.Id + + return ref diff --git a/tests/unit/objects/test_invoice.py b/tests/unit/objects/test_invoice.py index 9a45a628..53d2d669 100644 --- a/tests/unit/objects/test_invoice.py +++ b/tests/unit/objects/test_invoice.py @@ -39,6 +39,17 @@ def test_valid_object_name(self): self.assertTrue(result) + def test_to_ref(self): + invoice = Invoice() + invoice.DocNumber = 1 + invoice.Id = 2 + + ref = invoice.to_ref() + self.assertIsInstance(ref, Ref) + self.assertEquals(ref.type, "Invoice") + self.assertEquals(ref.name, 1) # should be DocNumber + self.assertEquals(ref.value, 2) # should be Id + class DeliveryInfoTests(unittest.TestCase): def test_init(self):