feat: add basic Table views
very minimal so far, just laying foundations
This commit is contained in:
parent
d6a4c5e657
commit
6791abe96f
6 changed files with 212 additions and 0 deletions
56
tests/views/test_tables.py
Normal file
56
tests/views/test_tables.py
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
# -*- coding: utf-8; -*-
|
||||
|
||||
from unittest.mock import patch
|
||||
|
||||
from wuttaweb.testing import WebTestCase
|
||||
from wuttaweb.views import tables as mod
|
||||
|
||||
|
||||
class TestUpgradeView(WebTestCase):
|
||||
|
||||
def make_view(self):
|
||||
return mod.TableView(self.request)
|
||||
|
||||
def test_includeme(self):
|
||||
self.pyramid_config.include("wuttaweb.views.tables")
|
||||
|
||||
def test_get_grid_data(self):
|
||||
view = self.make_view()
|
||||
data = view.get_grid_data()
|
||||
self.assertIsInstance(data, list)
|
||||
self.assertGreater(len(data), 0)
|
||||
table = data[0]
|
||||
self.assertIsInstance(table, dict)
|
||||
self.assertIn("name", table)
|
||||
self.assertIn("schema", table)
|
||||
|
||||
def test_configure_grid(self):
|
||||
model = self.app.model
|
||||
view = self.make_view()
|
||||
|
||||
# sanity / coverage check
|
||||
grid = view.make_grid(columns=["name", "schema"])
|
||||
view.configure_grid(grid)
|
||||
|
||||
def test_get_instance(self):
|
||||
model = self.app.model
|
||||
view = self.make_view()
|
||||
|
||||
with patch.object(self.request, "matchdict", new={"name": "person"}):
|
||||
|
||||
table1 = view.get_instance()
|
||||
self.assertIsInstance(table1, dict)
|
||||
self.assertIn("name", table1)
|
||||
self.assertEqual(table1["name"], "person")
|
||||
self.assertIn("schema", table1)
|
||||
|
||||
table2 = view.get_instance()
|
||||
self.assertIs(table2, table1)
|
||||
self.assertEqual(table2["name"], "person")
|
||||
|
||||
def test_get_instance_title(self):
|
||||
model = self.app.model
|
||||
view = self.make_view()
|
||||
|
||||
table = {"name": "poser_foo"}
|
||||
self.assertEqual(view.get_instance_title(table), "poser_foo")
|
||||
Loading…
Add table
Add a link
Reference in a new issue