diff --git a/tests/views/test_email.py b/tests/views/test_email.py index 6613ae2..3ca374d 100644 --- a/tests/views/test_email.py +++ b/tests/views/test_email.py @@ -2,12 +2,13 @@ from unittest.mock import patch -from wuttjamaican.email import EmailSetting +from wuttjamaican.email import EmailSetting, EmailHandler import colander from pyramid.httpexceptions import HTTPNotFound from pyramid.response import Response +from wuttaweb import emails as wuttaweb_emails from wuttaweb.views import email as mod from wuttaweb.testing import WebTestCase @@ -23,23 +24,35 @@ class TestEmailSettingViews(WebTestCase): def test_get_grid_data(self): self.config.setdefault("wutta.email.default.sender", "test@example.com") view = self.make_view() - data = view.get_grid_data() - self.assertIsInstance(data, list) - self.assertTrue(data) # 1+ items - setting = data[0] - self.assertIn("key", setting) - self.assertIn("subject", setting) - self.assertIn("sender", setting) - self.assertIn("to", setting) - self.assertIn("cc", setting) - self.assertIn("notes", setting) + + # nb. avoid issues with arbitrary installed packages + email_modules = [wuttaweb_emails] + with patch.object( + EmailHandler, "get_email_modules", return_value=email_modules + ): + data = view.get_grid_data() + self.assertIsInstance(data, list) + self.assertTrue(data) # 1+ items + setting = data[0] + self.assertIn("key", setting) + self.assertIn("subject", setting) + self.assertIn("sender", setting) + self.assertIn("to", setting) + self.assertIn("cc", setting) + self.assertIn("notes", setting) def test_configure_grid(self): self.config.setdefault("wutta.email.default.sender", "test@example.com") view = self.make_view() - grid = view.make_model_grid() - self.assertIn("key", grid.searchable_columns) - self.assertIn("subject", grid.searchable_columns) + + # nb. avoid issues with arbitrary installed packages + email_modules = [wuttaweb_emails] + with patch.object( + EmailHandler, "get_email_modules", return_value=email_modules + ): + grid = view.make_model_grid() + self.assertIn("key", grid.searchable_columns) + self.assertIn("subject", grid.searchable_columns) def test_render_to_short(self): view = self.make_view()