feat: add basic Grid
class, and /settings master view
This commit is contained in:
parent
2ad1ae9c49
commit
754e0989e4
18 changed files with 640 additions and 12 deletions
|
@ -215,6 +215,37 @@ class TestMasterView(WebTestCase):
|
|||
self.assertEqual(master.MasterView.get_template_prefix(), '/machines')
|
||||
del master.MasterView.model_class
|
||||
|
||||
def test_get_grid_key(self):
|
||||
|
||||
# error by default (since no model class)
|
||||
self.assertRaises(AttributeError, master.MasterView.get_grid_key)
|
||||
|
||||
# subclass may specify grid key
|
||||
master.MasterView.grid_key = 'widgets'
|
||||
self.assertEqual(master.MasterView.get_grid_key(), 'widgets')
|
||||
del master.MasterView.grid_key
|
||||
|
||||
# or it may specify route prefix
|
||||
master.MasterView.route_prefix = 'trucks'
|
||||
self.assertEqual(master.MasterView.get_grid_key(), 'trucks')
|
||||
del master.MasterView.route_prefix
|
||||
|
||||
# or it may specify *normalized* model name
|
||||
master.MasterView.model_name_normalized = 'blaster'
|
||||
self.assertEqual(master.MasterView.get_grid_key(), 'blasters')
|
||||
del master.MasterView.model_name_normalized
|
||||
|
||||
# or it may specify *standard* model name
|
||||
master.MasterView.model_name = 'Dinosaur'
|
||||
self.assertEqual(master.MasterView.get_grid_key(), 'dinosaurs')
|
||||
del master.MasterView.model_name
|
||||
|
||||
# or it may specify model class
|
||||
MyModel = MagicMock(__name__='Machine')
|
||||
master.MasterView.model_class = MyModel
|
||||
self.assertEqual(master.MasterView.get_grid_key(), 'machines')
|
||||
del master.MasterView.model_class
|
||||
|
||||
def test_get_config_title(self):
|
||||
|
||||
# error by default (since no model class)
|
||||
|
@ -296,11 +327,13 @@ class TestMasterView(WebTestCase):
|
|||
master.MasterView.model_name = 'AppInfo'
|
||||
master.MasterView.route_prefix = 'appinfo'
|
||||
master.MasterView.template_prefix = '/appinfo'
|
||||
master.MasterView.grid_columns = ['foo', 'bar']
|
||||
view = master.MasterView(self.request)
|
||||
response = view.index()
|
||||
del master.MasterView.model_name
|
||||
del master.MasterView.route_prefix
|
||||
del master.MasterView.template_prefix
|
||||
del master.MasterView.grid_columns
|
||||
|
||||
def test_configure(self):
|
||||
model = self.app.model
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue