X Tutup
Skip to content

Commit e7e09f8

Browse files
committed
updated tests
1 parent 91bae67 commit e7e09f8

File tree

5 files changed

+41
-3
lines changed

5 files changed

+41
-3
lines changed

README.md

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,20 @@ Setup the client connection using the stored `access_token` and the `access_toke
6464
)
6565

6666

67+
If you need to access a minor version (See [Minor versions](https://developer.intuit.com/docs/0100_accounting/0300_developer_guides/minor_versions) for details)
68+
pass in minorversion when setting up the client:
69+
70+
QuickBooks(
71+
sandbox=True,
72+
consumer_key=QUICKBOOKS_CLIENT_KEY,
73+
consumer_secret=QUICKBOOKS_CLIENT_SECRET,
74+
access_token=access_token,
75+
access_token_secret=access_token_secret,
76+
company_id=realm_id,
77+
minorversion=4
78+
)
79+
80+
6781
List of objects:
6882

6983
from quickbooks.objects.customer import Customer
@@ -82,11 +96,17 @@ Filtered list of objects with paging:
8296
customers = Customer.filter(start_position=1, max_results=25, Active=True, FamilyName="Smith")
8397

8498

99+
List Filtered by values in list:
100+
101+
customer_names = ['Customer1', 'Customer2', 'Customer3']
102+
customers = Customer.choose(customer_names, field="DisplayName")
103+
104+
85105
List with custom Where Clause (do not include the "WHERE"):
86106

87107
customers = Customer.where("Active = True AND CompanyName LIKE 'S%'")
88108

89-
109+
90110
List with custom Where Clause with paging:
91111

92112

quickbooks/utils.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ def build_where_clause(**kwargs):
1717

1818
return where_clause
1919

20+
2021
def build_choose_clause(choices, field):
2122
where_clause = ""
2223

tests/unit/test_client.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@ def test_client_new(self):
2121
access_token_secret="access_token_secret",
2222
company_id="company_id",
2323
callback_url="callback_url",
24-
verbose=True
24+
verbose=True,
25+
minorversion=4
2526
)
2627

2728
self.assertEquals(self.qb_client.sandbox, False)
@@ -31,6 +32,7 @@ def test_client_new(self):
3132
self.assertEquals(self.qb_client.access_token_secret, "access_token_secret")
3233
self.assertEquals(self.qb_client.company_id, "company_id")
3334
self.assertEquals(self.qb_client.callback_url, "callback_url")
35+
self.assertEquals(self.qb_client.minorversion, 4)
3436

3537
def test_client_updated(self):
3638
self.qb_client = client.QuickBooks(

tests/unit/test_mixins.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,11 @@ def test_query(self, query):
3737
Department.query(select)
3838
query.assert_called_once_with(select)
3939

40+
@patch('quickbooks.mixins.ListMixin.where')
41+
def test_choose(self, where):
42+
Department.choose(['name1', 'name2'], field="Name")
43+
where.assert_called_once_with("Name in ('name1', 'name2')")
44+
4045

4146
class ReadMixinTest(unittest.TestCase):
4247
@patch('quickbooks.mixins.QuickBooks.get_single_object')

tests/unit/test_utils.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,14 @@ def setup(self):
99
def test_build_where_clause(self):
1010
where_clause = utils.build_where_clause(field1=1, field2="value2")
1111

12-
self.assertTrue(where_clause, "WHERE field1 = 1 AND field2 = 'value2")
12+
self.assertTrue(where_clause, "WHERE field1 = 1 AND field2 = 'value2")
13+
14+
def test_build_where_clause_integers(self):
15+
where_clause = utils.build_choose_clause(choices=[1, 2], field="field1")
16+
17+
self.assertTrue(where_clause, "WHERE field1 in (1, 2)")
18+
19+
def test_build_where_clause_strings(self):
20+
where_clause = utils.build_choose_clause(choices=["val1", "val2"], field="field1")
21+
22+
self.assertTrue(where_clause, "WHERE field1 in ('val1', 'val2')")

0 commit comments

Comments
 (0)
X Tutup