def test_module_search_error(self): from ptahcrowd.views import CrowdModuleView mod = self._make_mod() form = CrowdModuleView(mod, DummyRequest( POST=MultiDict((('form.buttons.search', 'Search'),)))) form.csrf = False form.update() self.assertIn('Please specify search term', ptah.render_messages(form.request))
def test_module_clear(self): from ptahcrowd.views import CrowdModuleView mod = self._make_mod() form = CrowdModuleView(mod, DummyRequest( session = {'ptah-search-term': 'test'}, POST=MultiDict((('form.buttons.clear', 'Clear'),)))) form.csrf = False form.update() self.assertNotIn('ptah-search-term', form.request.session)
def test_module_remove(self): from ptahcrowd.views import CrowdModuleView mod = self._make_mod() user = self._make_user() user.suspended = False uri = user.__uri__ form = CrowdModuleView(mod, DummyRequest( POST=MultiDict((('uid', user.id), ('remove', 'remove'))))) form.update() self.assertIn('The selected accounts have been removed.', ptah.render_messages(form.request)) transaction.commit() user = ptah.resolve(uri) self.assertIsNone(user)
def test_module_suspend(self): from ptahcrowd.provider import CrowdUser from ptahcrowd.views import CrowdModuleView mod = self._make_mod() user = self._make_user() user.suspended = False id = user.id form = CrowdModuleView(mod, DummyRequest( POST=MultiDict((('uid', id), ('suspend', 'suspend'))))) form.request.POST[form.csrfname] = form.request.session.get_csrf_token() form.update() self.assertIn('The selected accounts have been suspended.', ptah.render_messages(form.request)) transaction.commit() user = ptah.get_session().query(CrowdUser)\ .filter(CrowdUser.id==id).first() self.assertTrue(user.suspended)
def test_module_search(self): from ptahcrowd.views import CrowdModuleView mod = self._make_mod() form = CrowdModuleView(mod, DummyRequest( POST=MultiDict((('form.buttons.search', 'Search'), ('term', 'search term'))))) form.csrf = False res = form.update() self.assertIn('ptah-search-term', form.request.session) self.assertEqual( form.request.session['ptah-search-term'], 'search term')