def test_param_set(self): 'Set new param in url' u = URL('/path/to/something', query=dict(id=3, page=5, title='title')) self.assertEqual(u, '/path/to/something?title=title&id=3&page=5') u = u.set(page=6) self.assertEqual(u, '/path/to/something?title=title&id=3&page=6') u = u.set(page=7, title='land') self.assertEqual(u, '/path/to/something?id=3&page=7&title=land')
def test_param_get(self): 'Get param from url' u = URL('/path/to/something', query=dict(id=3, page=5, title='title')) page = u.get('page') self.assertEqual(page, 5) u = u.set(page=7) page = u.get('page') self.assertEqual(page, 7) not_here = u.get('not_here') self.assertEqual(not_here, None)
def test_quote(self): u = URL(quote('/path/to/+')) self.assertEqual(u, '/path/to/%2B') u = u.set(page=7) self.assertEqual(u, '/path/to/%2B?page=7')