1 from unittest import TestCase
2 from pylons import request
3 from datetime import date
4 from bluechips.lib import helpers as h
6 class TestHelpers(TestCase):
7 def test_grab_real_object(self):
11 foo.bar = 'some string'
12 assert h.grab(foo, 'bar') == 'some string'
15 except AttributeError:
20 def test_grab_any_fake(self):
21 assert h.grab(None, 'nonexistent') == ''
22 assert h.grab('', 'nonexistent') == ''
24 def test_grab_date(self):
25 assert h.grab(None, 'date') == date.today()
27 def test_grab_user(self):
28 class FakeRequest(object):
30 class FakeUser(object):
32 class SomeObject(object):
36 req.environ['user'] = FakeUser()
37 test_obj = SomeObject()
38 req.environ['user'].id = test_obj
39 request._push_object(req)
40 assert h.grab(None, 'spender_id') == test_obj
41 assert h.grab(None, 'creditor_id') == test_obj
42 assert h.grab(None, 'debtor_id') == test_obj
45 def test_grab_amount(self):
46 assert h.grab(None, 'amount') == 0