3
0
Fork 0

feat: add basic "delete results" grid tool

this is done synchronously with no progress indicator yet
This commit is contained in:
Lance Edgar 2024-08-24 14:26:13 -05:00
parent 6650ee698e
commit 6fa8b0aeaa
8 changed files with 426 additions and 13 deletions

View file

@ -254,6 +254,42 @@ class TestGrid(WebTestCase):
self.assertEqual(len(grid.actions), 1)
self.assertIsInstance(grid.actions[0], mod.GridAction)
def test_set_tools(self):
grid = self.make_grid()
self.assertEqual(grid.tools, {})
# null
grid.set_tools(None)
self.assertEqual(grid.tools, {})
# empty
grid.set_tools({})
self.assertEqual(grid.tools, {})
# full dict is replaced
grid.tools = {'foo': 'bar'}
self.assertEqual(grid.tools, {'foo': 'bar'})
grid.set_tools({'bar': 'baz'})
self.assertEqual(grid.tools, {'bar': 'baz'})
# can specify as list of html elements
grid.set_tools(['foo', 'bar'])
self.assertEqual(len(grid.tools), 2)
self.assertEqual(list(grid.tools.values()), ['foo', 'bar'])
def test_add_tool(self):
grid = self.make_grid()
self.assertEqual(grid.tools, {})
# with key
grid.add_tool('foo', key='foo')
self.assertEqual(grid.tools, {'foo': 'foo'})
# without key
grid.add_tool('bar')
self.assertEqual(len(grid.tools), 2)
self.assertEqual(list(grid.tools.values()), ['foo', 'bar'])
def test_get_pagesize_options(self):
grid = self.make_grid()