feat: improve widget, rendering for Role notes
This commit is contained in:
parent
b4b72d92aa
commit
bdfa0197b2
11 changed files with 201 additions and 19 deletions
|
@ -75,6 +75,25 @@ class TestGrid(TestCase):
|
|||
grid.remove('two', 'three')
|
||||
self.assertEqual(grid.columns, ['one', 'four'])
|
||||
|
||||
def test_set_renderer(self):
|
||||
grid = self.make_grid(columns=['foo', 'bar'])
|
||||
self.assertEqual(grid.renderers, {})
|
||||
|
||||
def render1(record, key, value):
|
||||
pass
|
||||
|
||||
# basic
|
||||
grid.set_renderer('foo', render1)
|
||||
self.assertIs(grid.renderers['foo'], render1)
|
||||
|
||||
def render2(record, key, value, extra=None):
|
||||
return extra
|
||||
|
||||
# can pass kwargs to get a partial
|
||||
grid.set_renderer('foo', render2, extra=42)
|
||||
self.assertIsNot(grid.renderers['foo'], render2)
|
||||
self.assertEqual(grid.renderers['foo'](None, None, None), 42)
|
||||
|
||||
def test_linked_columns(self):
|
||||
grid = self.make_grid(columns=['foo', 'bar'])
|
||||
self.assertEqual(grid.linked_columns, [])
|
||||
|
@ -143,6 +162,11 @@ class TestGrid(TestCase):
|
|||
self.assertIsNot(data, mydata)
|
||||
self.assertEqual(data, [{'foo': 'bar', '_action_url_view': '/blarg'}])
|
||||
|
||||
# also can override value rendering
|
||||
grid.set_renderer('foo', lambda record, key, value: "blah blah")
|
||||
data = grid.get_vue_data()
|
||||
self.assertEqual(data, [{'foo': 'blah blah', '_action_url_view': '/blarg'}])
|
||||
|
||||
|
||||
class TestGridAction(TestCase):
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue