Skip to content

Commit d1d31f8

Browse files
committed
Fixed noop tests
1 parent d432081 commit d1d31f8

1 file changed

Lines changed: 76 additions & 82 deletions

File tree

tests/test_client.py

Lines changed: 76 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -114,33 +114,36 @@ def setUp(self):
114114
'some-secret')
115115
self.item = ItemDefinition(1, 'EUR20', 'http://example.com/', 'title')
116116

117-
def assertQueryString(self, url, key, value=None):
117+
def assertQueryString(self, url, key, value, msg=None):
118118
d = parse_qs(urlparse(url).query)
119-
if not value:
120-
return (key in d)
121-
return d.get(key, None) == value
119+
self.assertIn(key, d, msg=msg)
120+
121+
if not isinstance(value, list):
122+
value = [value]
123+
self.assertEqual(d[key], value, msg=msg)
124+
125+
def assertNotQueryString(self, url, key, msg=None):
126+
d = parse_qs(urlparse(url).query)
127+
self.assertNotIn(key, d, msg=msg)
122128

123129
def test_get_web_url_itemdefinition_value_none(self):
124130
# item with expiry not set.
125131
item = ItemDefinition(1, 'EUR20', 'http://help.me/', 'title')
126132
url = self.lp._get_web_url(item, 'PAGE_TYPE')
127-
self.assertFalse(
128-
self.assertQueryString(url, 'expiry'),
129-
'expiry url param is "None". Should be omitted.'
130-
)
133+
self.assertNotQueryString(url, 'expiry', msg='expiry url param is "None". Should be omitted.')
131134

132135
def test_web_url_product_key(self):
133136
# Default
134137
url = self.lp._get_web_url(self.item, 'PAGE_TYPE')
135-
self.assertFalse(self.assertQueryString(url, 'product_key'))
138+
self.assertNotQueryString(url, 'product')
136139

137140
# Enabled
138141
url = self.lp._get_web_url(self.item, 'PAGE_TYPE', product_key='foobar')
139-
self.assertQueryString(url, 'product_key', value='foobar')
142+
self.assertQueryString(url, 'product', 'foobar')
140143

141144
# Disabled
142145
url = self.lp._get_web_url(self.item, 'PAGE_TYPE', product_key=None)
143-
self.assertFalse(self.assertQueryString(url, 'product_key'))
146+
self.assertNotQueryString(url, 'product')
144147

145148
def test_web_url_dialog(self):
146149
# Default
@@ -158,24 +161,24 @@ def test_web_url_dialog(self):
158161
def test_web_url_jsevents(self):
159162
# Default
160163
url = self.lp._get_web_url(self.item, 'PAGE_TYPE')
161-
self.assertFalse(self.assertQueryString(url, 'jsevents'))
164+
self.assertNotQueryString(url, 'jsevents')
162165

163166
# Enabled
164167
url = self.lp._get_web_url(self.item, 'PAGE_TYPE', use_jsevents=True)
165-
self.assertQueryString(url, 'jsevents', value='1')
168+
self.assertQueryString(url, 'jsevents', '1')
166169

167170
# Disabled
168171
url = self.lp._get_web_url(self.item, 'PAGE_TYPE', use_jsevents=False)
169-
self.assertFalse(self.assertQueryString(url, 'jsevents'))
172+
self.assertNotQueryString(url, 'jsevents')
170173

171174
def test_web_url_transaction_reference(self):
172175
# Default
173176
url = self.lp._get_web_url(self.item, 'PAGE_TYPE')
174-
self.assertFalse(self.assertQueryString(url, 'transaction_reference'))
177+
self.assertNotQueryString(url, 'tref')
175178

176179
# Valid
177180
url = self.lp._get_web_url(self.item, 'PAGE_TYPE', transaction_reference='loremipsum')
178-
self.assertQueryString(url, 'transaction_reference', value='loremipsum')
181+
self.assertQueryString(url, 'tref', 'loremipsum')
179182

180183
# Invalid
181184
with self.assertRaises(APIException):
@@ -184,54 +187,54 @@ def test_web_url_transaction_reference(self):
184187
def test_web_url_consumable(self):
185188
# Default
186189
url = self.lp._get_web_url(self.item, 'PAGE_TYPE')
187-
self.assertFalse(self.assertQueryString(url, 'consumable'))
190+
self.assertNotQueryString(url, 'consumable')
188191

189192
# Enabled
190193
url = self.lp._get_web_url(self.item, 'PAGE_TYPE', consumable=True)
191-
self.assertQueryString(url, 'consumable', value='1')
194+
self.assertQueryString(url, 'consumable', '1')
192195

193196
# Disabled
194197
url = self.lp._get_web_url(self.item, 'PAGE_TYPE', consumable=False)
195-
self.assertFalse(self.assertQueryString(url, 'consumable'))
198+
self.assertNotQueryString(url, 'consumable')
196199

197200
def test_web_url_return_url(self):
198201
# Default
199202
url = self.lp._get_web_url(self.item, 'PAGE_TYPE')
200-
self.assertFalse(self.assertQueryString(url, 'return_url'))
203+
self.assertNotQueryString(url, 'return_url')
201204

202205
# Given
203206
url = self.lp._get_web_url(self.item, 'PAGE_TYPE', return_url='http://example.com/foo?foo=bar&lorem=ipsum')
204-
self.assertQueryString(url, 'return_url', value='http://example.com/foo?foo=bar&lorem=ipsum')
207+
self.assertQueryString(url, 'return_url', 'http://example.com/foo?foo=bar&lorem=ipsum')
205208

206209
# Omitted
207210
url = self.lp._get_web_url(self.item, 'PAGE_TYPE', return_url=None)
208-
self.assertFalse(self.assertQueryString(url, 'return_url'))
211+
self.assertNotQueryString(url, 'return_url')
209212

210213
def test_web_url_failure_url(self):
211214
# Default
212215
url = self.lp._get_web_url(self.item, 'PAGE_TYPE')
213-
self.assertFalse(self.assertQueryString(url, 'failure_url'))
216+
self.assertNotQueryString(url, 'failure_url')
214217

215218
# Given
216219
url = self.lp._get_web_url(self.item, 'PAGE_TYPE', failure_url='http://example.com/foo?foo=bar&lorem=ipsum')
217-
self.assertQueryString(url, 'failure_url', value='http://example.com/foo?foo=bar&lorem=ipsum')
220+
self.assertQueryString(url, 'failure_url', 'http://example.com/foo?foo=bar&lorem=ipsum')
218221

219222
# Omitted
220223
url = self.lp._get_web_url(self.item, 'PAGE_TYPE', failure_url=None)
221-
self.assertFalse(self.assertQueryString(url, 'failure_url'))
224+
self.assertNotQueryString(url, 'failure_url')
222225

223226
def test_web_url_muid(self):
224227
# Default
225228
url = self.lp._get_web_url(self.item, 'PAGE_TYPE')
226-
self.assertFalse(self.assertQueryString(url, 'muid'))
229+
self.assertNotQueryString(url, 'muid')
227230

228231
# Given
229232
url = self.lp._get_web_url(self.item, 'PAGE_TYPE', muid='0zA9-aZ09-0A9z')
230-
self.assertQueryString(url, 'muid', value='0zA9-aZ09-0A9z')
233+
self.assertQueryString(url, 'muid', '0zA9-aZ09-0A9z')
231234

232235
# Omitted
233236
url = self.lp._get_web_url(self.item, 'PAGE_TYPE', muid=None)
234-
self.assertFalse(self.assertQueryString(url, 'muid'))
237+
self.assertNotQueryString(url, 'muid')
235238

236239
def test_get_add_url(self):
237240
item = ItemDefinition(1, 'EUR20', 'http://example.net/t', 'title')
@@ -248,42 +251,39 @@ def test_get_add_url(self):
248251
something='else',
249252
BLUB=[u'u2', b'b1', b'b2', u'u1'],
250253
)
251-
self.assertFalse(
252-
self.assertQueryString(url, 'expiry'),
253-
'expiry url param is "None". Should be omitted.'
254-
)
255-
self.assertQueryString(url, 'product_key', value='some-product-key')
254+
self.assertNotQueryString(url, 'expiry', msg='expiry url param is "None". Should be omitted.')
255+
self.assertQueryString(url, 'product', 'some-product-key')
256256
self.assertTrue(url.startswith('https://web.laterpay.net/add?'))
257-
self.assertQueryString(url, 'use_jsevents', value='1')
258-
self.assertQueryString(url, 'transaction_reference', value='TX-REF')
259-
self.assertQueryString(url, 'consumable', value='1')
260-
self.assertQueryString(url, 'return_url', value='http://return.url/foo?bar=buz&lorem=ipsum')
261-
self.assertQueryString(url, 'failure_url', value='http://failure.url/FOO?BAR=BUZ&LOREM=IPSUM')
262-
self.assertQueryString(url, 'muid', value='someone')
263-
self.assertQueryString(url, 'something', value='else')
264-
self.assertQueryString(url, 'BLUB', value=[b'b1', 'b2', u'u1', 'u2'])
257+
self.assertQueryString(url, 'jsevents', '1')
258+
self.assertQueryString(url, 'tref', 'TX-REF')
259+
self.assertQueryString(url, 'consumable', '1')
260+
self.assertQueryString(url, 'return_url', 'http://return.url/foo?bar=buz&lorem=ipsum')
261+
self.assertQueryString(url, 'failure_url', 'http://failure.url/FOO?BAR=BUZ&LOREM=IPSUM')
262+
self.assertQueryString(url, 'muid', 'someone')
263+
self.assertQueryString(url, 'something', 'else')
264+
self.assertQueryString(url, 'BLUB', ['u2', 'b1', 'b2', 'u1'])
265265

266266
def test_get_add_url_contribution(self):
267267
item = ItemDefinition(
268268
2, 'EUR20', 'http://example.net/t', 'Save the World!', item_type=constants.ITEM_TYPE_CONTRIBUTION,
269269
)
270270
url = self.lp.get_add_url(item, item_type='contribution')
271271
self.assertTrue(url.startswith('https://web.laterpay.net/dialog/contribute/pay_later?'))
272-
self.assertQueryString(url, 'campaign_id', value='2')
273-
self.assertQueryString(url, 'pricing', value='EUR20')
274-
self.assertQueryString(url, 'url', value='http://example.net/t')
275-
self.assertQueryString(url, 'title', value='Save the World!')
272+
self.assertQueryString(url, 'campaign_id', '2')
273+
self.assertQueryString(url, 'pricing', 'EUR20')
274+
self.assertQueryString(url, 'url', 'http://example.net/t')
275+
self.assertQueryString(url, 'title', 'Save the World!')
276276

277277
def test_get_add_url_donation(self):
278278
item = ItemDefinition(
279279
'2', 'EUR20', 'http://example.net/t', 'Save the World!', item_type=constants.ITEM_TYPE_DONATION,
280280
)
281281
url = self.lp.get_add_url(item, item_type='donation')
282282
self.assertTrue(url.startswith('https://web.laterpay.net/dialog/donate/pay_later?'))
283-
self.assertQueryString(url, 'campaign_id', value='2')
284-
self.assertQueryString(url, 'pricing', value='EUR20')
285-
self.assertQueryString(url, 'url', value='http://example.net/t')
286-
self.assertQueryString(url, 'title', value='Save the World!')
283+
self.assertQueryString(url, 'campaign_id', '2')
284+
self.assertQueryString(url, 'pricing', 'EUR20')
285+
self.assertQueryString(url, 'url', 'http://example.net/t')
286+
self.assertQueryString(url, 'title', 'Save the World!')
287287

288288
def test_get_buy_url(self):
289289
item = ItemDefinition(1, 'EUR20', 'http://example.net/t', 'title')
@@ -300,20 +300,17 @@ def test_get_buy_url(self):
300300
something='else',
301301
BLUB=[u'u2', b'b1', b'b2', u'u1'],
302302
)
303-
self.assertFalse(
304-
self.assertQueryString(url, 'expiry'),
305-
'expiry url param is "None". Should be omitted.'
306-
)
307-
self.assertQueryString(url, 'product_key', value='some-product-key')
303+
self.assertNotQueryString(url, 'expiry', msg='expiry url param is "None". Should be omitted.')
304+
self.assertQueryString(url, 'product', 'some-product-key')
308305
self.assertTrue(url.startswith('https://web.laterpay.net/buy?'))
309-
self.assertQueryString(url, 'use_jsevents', value='1')
310-
self.assertQueryString(url, 'transaction_reference', value='TX-REF')
311-
self.assertQueryString(url, 'consumable', value='1')
312-
self.assertQueryString(url, 'return_url', value='http://return.url/foo?bar=buz&lorem=ipsum')
313-
self.assertQueryString(url, 'failure_url', value='http://failure.url/FOO?BAR=BUZ&LOREM=IPSUM')
314-
self.assertQueryString(url, 'muid', value='someone')
315-
self.assertQueryString(url, 'something', value='else')
316-
self.assertQueryString(url, 'BLUB', value=[b'b1', 'b2', u'u1', 'u2'])
306+
self.assertQueryString(url, 'jsevents', '1')
307+
self.assertQueryString(url, 'tref', 'TX-REF')
308+
self.assertQueryString(url, 'consumable', '1')
309+
self.assertQueryString(url, 'return_url', 'http://return.url/foo?bar=buz&lorem=ipsum')
310+
self.assertQueryString(url, 'failure_url', 'http://failure.url/FOO?BAR=BUZ&LOREM=IPSUM')
311+
self.assertQueryString(url, 'muid', 'someone')
312+
self.assertQueryString(url, 'something', 'else')
313+
self.assertQueryString(url, 'BLUB', ['u2', 'b1', 'b2', 'u1'])
317314

318315
def test_get_buy_url_contribution(self):
319316
item = ItemDefinition(
@@ -322,10 +319,10 @@ def test_get_buy_url_contribution(self):
322319
)
323320
url = self.lp.get_buy_url(item)
324321
self.assertTrue(url.startswith('https://web.laterpay.net/dialog/contribute/pay_now?'))
325-
self.assertQueryString(url, 'campaign_id', value='2')
326-
self.assertQueryString(url, 'pricing', value='EUR20')
327-
self.assertQueryString(url, 'url', value='http://example.net/t')
328-
self.assertQueryString(url, 'title', value='Save the World!')
322+
self.assertQueryString(url, 'campaign_id', 'save-the-world')
323+
self.assertQueryString(url, 'pricing', 'EUR20')
324+
self.assertQueryString(url, 'url', 'http://example.net/t')
325+
self.assertQueryString(url, 'title', 'Save the World!')
329326

330327
def test_get_buy_url_donation(self):
331328
item = ItemDefinition(
@@ -334,10 +331,10 @@ def test_get_buy_url_donation(self):
334331
)
335332
url = self.lp.get_buy_url(item)
336333
self.assertTrue(url.startswith('https://web.laterpay.net/dialog/donate/pay_now?'))
337-
self.assertQueryString(url, 'campaign_id', value='2')
338-
self.assertQueryString(url, 'pricing', value='EUR20')
339-
self.assertQueryString(url, 'url', value='http://example.net/t')
340-
self.assertQueryString(url, 'title', value='Save the World!')
334+
self.assertQueryString(url, 'campaign_id', 'save-the-world')
335+
self.assertQueryString(url, 'pricing', 'EUR20')
336+
self.assertQueryString(url, 'url', 'http://example.net/t')
337+
self.assertQueryString(url, 'title', 'Save the World!')
341338

342339
def test_get_subscribe_url(self):
343340
item = ItemDefinition(1, 'EUR20', 'http://example.net/t', 'title', sub_id='a0_-9Z', period=12345)
@@ -352,19 +349,16 @@ def test_get_subscribe_url(self):
352349
period=12345,
353350
BLUB=[u'u2', b'b1', b'b2', u'u1'],
354351
)
355-
self.assertFalse(
356-
self.assertQueryString(url, 'expiry'),
357-
'expiry url param is "None". Should be omitted.'
358-
)
359-
self.assertQueryString(url, 'sub_id', value='a0_-9Z')
360-
self.assertQueryString(url, 'product_key', value='some-product-key')
352+
self.assertNotQueryString(url, 'expiry', msg='expiry url param is "None". Should be omitted.')
353+
self.assertQueryString(url, 'sub_id', 'a0_-9Z')
354+
self.assertQueryString(url, 'product', 'some-product-key')
361355
self.assertTrue(url.startswith('https://web.laterpay.net/subscribe?'))
362-
self.assertQueryString(url, 'return_url', value='http://return.url/foo?bar=buz&lorem=ipsum')
363-
self.assertQueryString(url, 'failure_url', value='http://failure.url/FOO?BAR=BUZ&LOREM=IPSUM')
364-
self.assertQueryString(url, 'muid', value='someone')
365-
self.assertQueryString(url, 'something', value='else')
366-
self.assertQueryString(url, 'period', value='12345')
367-
self.assertQueryString(url, 'BLUB', value=[b'b1', 'b2', u'u1', 'u2'])
356+
self.assertQueryString(url, 'return_url', 'http://return.url/foo?bar=buz&lorem=ipsum')
357+
self.assertQueryString(url, 'failure_url', 'http://failure.url/FOO?BAR=BUZ&LOREM=IPSUM')
358+
self.assertQueryString(url, 'muid', 'someone')
359+
self.assertQueryString(url, 'something', 'else')
360+
self.assertQueryString(url, 'period', '12345')
361+
self.assertQueryString(url, 'BLUB', ['u2', 'b1', 'b2', 'u1'])
368362

369363
def test_get_login_dialog_url_with_use_dialog_api_false(self):
370364
url = self.lp.get_login_dialog_url('http://example.org')

0 commit comments

Comments
 (0)