Skip to content

Commit d843007

Browse files
committed
Fixed issues and updated tests.
1 parent a15dbc5 commit d843007

File tree

14 files changed

+153
-17
lines changed

14 files changed

+153
-17
lines changed

.travis.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,5 @@ python:
77
- 3.5
88
install:
99
- pip install -e .
10+
- pip install coverage
1011
script: nosetests . --with-coverage --cover-package=quickbooks

quickbooks/batch.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ def list_to_batch_request(self, obj_list):
4343

4444
for obj in obj_list:
4545
batch_item = BatchItemRequest()
46-
batch_item.bId = str(uuid.uuid1())
46+
batch_item.bId = str(uuid.uuid4())
4747
batch_item.operation = self._operation
4848
batch_item.set_object(obj)
4949

quickbooks/mixins.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -99,12 +99,12 @@ def where(cls, where_clause="", start_position="", max_results=""):
9999
where_clause = "WHERE " + where_clause
100100

101101
if start_position:
102-
start_position = " STARTPOSITION " + start_position
102+
start_position = " STARTPOSITION " + str(start_position)
103103

104104
if max_results:
105-
max_results = " MAXRESULTS " + max_results
105+
max_results = " MAXRESULTS " + str(max_results)
106106

107-
select = "select * from {0} {1}{2}{3}".format(cls.qbo_object_name, where_clause, start_position, max_results)
107+
select = "SELECT * FROM {0} {1}{2}{3}".format(cls.qbo_object_name, where_clause, start_position, max_results)
108108

109109
return cls.query(select)
110110

quickbooks/objects/deposit.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,11 @@ def __init__(self):
4848
self.CheckNum = ""
4949
self.TxnType = ""
5050

51+
self.Entity = None
52+
self.ClassRef = None
53+
self.AccountRef = None
54+
self.PaymentMethodRef = None
55+
5156

5257
@python_2_unicode_compatible
5358
class DepositLine(QuickbooksBaseObject):

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ def read(*parts):
1010
return fp.read()
1111

1212

13-
VERSION = (0, 3, 0)
13+
VERSION = (0, 3, 1)
1414
version = '.'.join(map(str, VERSION))
1515

1616
setup(

tests/unit/objects/test_base.py

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
import unittest
22

33
from quickbooks.objects.base import CustomerMemo, CustomField, Ref, WebAddress, EmailAddress, PhoneNumber, \
4-
Address, LinkedTxn, MetaData, MarkupInfo, AttachableRef
4+
Address, LinkedTxn, MetaData, MarkupInfo, AttachableRef, LinkedTxnMixin
5+
6+
from quickbooks.objects.deposit import Deposit
57

68

79
class AddressTests(unittest.TestCase):
@@ -100,4 +102,17 @@ def test_init(self):
100102
self.assertEquals(attachable.IncludeOnSend, False)
101103
self.assertEquals(attachable.Inactive, False)
102104
self.assertEquals(attachable.NoRefOnly, False)
103-
self.assertEquals(attachable.EntityRef, None)
105+
self.assertEquals(attachable.EntityRef, None)
106+
107+
108+
class LinkedTxnMixinTests(unittest.TestCase):
109+
def test_to_linked_txn(self):
110+
111+
deposit = Deposit()
112+
deposit.Id = 100
113+
114+
linked_txn = deposit.to_linked_txn()
115+
116+
self.assertEquals(linked_txn.TxnId, 100)
117+
self.assertEquals(linked_txn.TxnType, "Deposit")
118+
self.assertEquals(linked_txn.TxnLineId, 1)

tests/unit/objects/test_bill.py

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import unittest
22

3-
from quickbooks.objects.bill import Bill, BillLine, AccountBasedExpenseLineDetail
3+
from quickbooks.objects.bill import Bill, BillLine, AccountBasedExpenseLineDetail, ItemBasedExpenseLineDetail
44

55

66
class AccountBasedExpenseLineDetailTests(unittest.TestCase):
@@ -25,3 +25,19 @@ def test_unicode(self):
2525
bill_line.Amount = 1000
2626

2727
self.assertEquals(str(bill_line), "1000")
28+
29+
30+
class ItemBasedExpenseLineDetailTest(unittest.TestCase):
31+
def test_init(self):
32+
detail = ItemBasedExpenseLineDetail()
33+
34+
self.assertEquals(detail.BillableStatus, "")
35+
self.assertEquals(detail.UnitPrice, 0)
36+
self.assertEquals(detail.TaxInclusiveAmt, 0)
37+
self.assertEquals(detail.Qty, 0)
38+
self.assertEquals(detail.ItemRef, None)
39+
self.assertEquals(detail.ClassRef, None)
40+
self.assertEquals(detail.PriceLevelRef, None)
41+
self.assertEquals(detail.TaxCodeRef, None)
42+
self.assertEquals(detail.MarkupInfo, None)
43+
self.assertEquals(detail.CustomerRef, None)

tests/unit/objects/test_creditmemo.py

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import unittest
22

3-
from quickbooks.objects.creditmemo import SalesItemLineDetail, CreditMemoLine, CreditMemo, DiscountLineDetail
3+
from quickbooks.objects.creditmemo import SalesItemLineDetail, CreditMemoLine, CreditMemo, \
4+
DiscountLineDetail, SubtotalLineDetail, DiscountOverride, DescriptionLineDetail
45

56

67
class SalesItemLineDetailTests(unittest.TestCase):
@@ -36,3 +37,28 @@ def test_init(self):
3637
self.assertEquals(discount_detail.ClassRef, None)
3738
self.assertEquals(discount_detail.TaxCodeRef, None)
3839
self.assertEquals(discount_detail.Discount, None)
40+
41+
42+
class SubtotalLineDetailTests(unittest.TestCase):
43+
def test_init(self):
44+
detail = SubtotalLineDetail()
45+
46+
self.assertEquals(detail.ItemRef, None)
47+
48+
49+
class DiscountOverrideTests(unittest.TestCase):
50+
def test_init(self):
51+
discount_detail = DiscountOverride()
52+
53+
self.assertEquals(discount_detail.PercentBased, False)
54+
self.assertEquals(discount_detail.DiscountPercent, 0)
55+
self.assertEquals(discount_detail.DiscountAccountRef, None)
56+
self.assertEquals(discount_detail.DiscountRef, None)
57+
58+
59+
class DescriptionLineDetailTests(unittest.TestCase):
60+
def test_init(self):
61+
detail = DescriptionLineDetail()
62+
63+
self.assertEquals(detail.ServiceDate, "")
64+
self.assertEquals(detail.TaxCodeRef, None)

tests/unit/objects/test_deposit.py

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import unittest
22

3-
from quickbooks.objects.deposit import Deposit, DepositLine, AttachableRef, CashBackInfo
3+
from quickbooks.objects.deposit import Deposit, DepositLine, AttachableRef, CashBackInfo, DepositLineDetail
44

55

66
class DepositTests(unittest.TestCase):
@@ -37,3 +37,15 @@ def test_init(self):
3737
self.assertEquals(cash_back_info.Amount, 0)
3838
self.assertEquals(cash_back_info.Memo, "")
3939
self.assertEquals(cash_back_info.AccountRef, None)
40+
41+
42+
class DepositLineDetailTests(unittest.TestCase):
43+
def test_init(self):
44+
detail = DepositLineDetail()
45+
46+
self.assertEquals(detail.Entity, None)
47+
self.assertEquals(detail.ClassRef, None)
48+
self.assertEquals(detail.AccountRef, None)
49+
self.assertEquals(detail.PaymentMethodRef, None)
50+
self.assertEquals(detail.CheckNum, "")
51+
self.assertEquals(detail.TxnType, "")

tests/unit/objects/test_journalentry.py

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import unittest
22

3-
from quickbooks.objects.journalentry import JournalEntry, JournalEntryLine, JournalEntryLineDetail
3+
from quickbooks.objects.journalentry import JournalEntry, JournalEntryLine, JournalEntryLineDetail, Entity, \
4+
DescriptionLineDetail, DescriptionOnlyLine
5+
46

57

68
class JournalentryTests(unittest.TestCase):
@@ -32,3 +34,25 @@ def test_init(self):
3234
self.assertEquals(journalentry.ClassRef, None)
3335
self.assertEquals(journalentry.DepartmentRef, None)
3436
self.assertEquals(journalentry.TaxCodeRef, None)
37+
38+
39+
class EntityTests(unittest.TestCase):
40+
def test_init(self):
41+
entity = Entity()
42+
43+
self.assertEquals(entity.Type, "")
44+
self.assertEquals(entity.EntityRef, None)
45+
46+
47+
class DescriptionLineDetailTests(unittest.TestCase):
48+
def test_init(self):
49+
detail = DescriptionLineDetail()
50+
51+
self.assertEquals(detail.ServiceDate, "")
52+
53+
54+
class DescriptionOnlyLineTests(unittest.TestCase):
55+
def test_init(self):
56+
line = DescriptionOnlyLine()
57+
58+
self.assertEquals(line.DetailType, "DescriptionOnly")

0 commit comments

Comments
 (0)