def test_with_security_policy(self): self._register() registerLayoutProvider() import datetime _NOW = datetime.datetime.now() context = testing.DummyModel(title='title') context.sessions = DummySessions() from opencore.models.interfaces import IForum alsoProvides(context, IForum) context['profiles'] = profiles = testing.DummyModel() profiles['dummy'] = DummyProfile() context['comments'] = testing.DummyModel() comment = testing.DummyModel(text='sometext') comment.creator = 'dummy' comment.created = _NOW context['comments']['1'] = comment context['attachments'] = testing.DummyModel() request = testing.DummyRequest() request.context = context request.api = DummyApi() request.environ['repoze.browserid'] = 1 def dummy_byline_info(context, request): return context from opencore.views.interfaces import IBylineInfo testing.registerAdapter(dummy_byline_info, (Interface, Interface), IBylineInfo) self._register() testing.registerDummySecurityPolicy(permissive=False) renderer = testing.registerDummyRenderer( 'templates/show_forum_topic.pt') self._callFUT(context, request) self.assertEqual(renderer.comments[0]['edit_url'], None)
def test_not_confirmed(self): from opencore.testing import registerLayoutProvider registerLayoutProvider() request = testing.DummyRequest() context = testing.DummyModel(title='oldtitle') context.__name__ = 'thename' context.catalog = oitesting.DummyCatalog({}) context.users = oitesting.DummyUsers({}) testing.registerDummyRenderer('templates/delete_resource.pt') self._register() response = self._callFUT(context, request) self.assertEqual(response.status, '200 OK')
def test_comment_ordering(self): self._register() registerLayoutProvider() import datetime _NOW = datetime.datetime.now() _BEFORE = _NOW - datetime.timedelta(hours=1) context = testing.DummyModel() context.sessions = DummySessions() context.title = 'title' context['comments'] = testing.DummyModel() comment = testing.DummyModel() comment.creator = 'dummy' comment.created = _NOW comment.text = 'My dog has fleas.' context['comments']['1'] = comment comment2 = testing.DummyModel() comment2.creator = 'dummy' comment2.created = _BEFORE comment2.text = "My cat's breath smells like cat food." context['comments']['2'] = comment2 context['attachments'] = testing.DummyModel() from opencore.models.interfaces import ISite from opencore.models.interfaces import IForum directlyProvides(context, ISite) alsoProvides(context, IForum) context['profiles'] = profiles = testing.DummyModel() profiles['dummy'] = DummyProfile(title='Dummy Profile') request = testing.DummyRequest() request.context = context request.api = DummyApi() request.environ['repoze.browserid'] = 1 def dummy_byline_info(context, request): return context from opencore.views.interfaces import IBylineInfo testing.registerAdapter(dummy_byline_info, (Interface, Interface), IBylineInfo) renderer = testing.registerDummyRenderer( 'templates/show_forum_topic.pt') self._callFUT(context, request) self.assertEqual(len(renderer.comments), 2) self.assertEqual(renderer.comments[0]['text'], "My cat's breath smells like cat food.") self.assertEqual(renderer.comments[1]['text'], 'My dog has fleas.')
def test_it(self): self._register() registerLayoutProvider() from opencore.models.interfaces import ICatalogSearch from opencore.models.interfaces import IForumsFolder testing.registerAdapter(DummySearchAdapter, (Interface), ICatalogSearch) context = testing.DummyModel(title='abc') alsoProvides(context, IForumsFolder) intranets = testing.DummyModel(title='Intranets') intranets['forums'] = context request = testing.DummyRequest() renderer = testing.registerDummyRenderer('templates/show_forum.pt') self._callFUT(context, request) self.assertEqual(renderer._received.get('title'), 'abc') self.assertEqual(renderer._received.get('backto')['title'], 'Intranets')
def test_no_security_policy(self): self._register() registerLayoutProvider() import datetime _NOW = datetime.datetime.now() context = testing.DummyModel() context.sessions = DummySessions() context.title = 'title' context['comments'] = testing.DummyModel() comment = testing.DummyModel() comment.creator = 'dummy' comment.created = _NOW comment.text = 'sometext' context['comments']['1'] = comment context['attachments'] = testing.DummyModel() from opencore.models.interfaces import ISite from opencore.models.interfaces import IForum directlyProvides(context, ISite) alsoProvides(context, IForum) context['profiles'] = profiles = testing.DummyModel() profiles['dummy'] = DummyProfile(title='Dummy Profile') request = testing.DummyRequest() request.context = context request.api = DummyApi() request.environ['repoze.browserid'] = 1 def dummy_byline_info(context, request): return context from opencore.views.interfaces import IBylineInfo testing.registerAdapter(dummy_byline_info, (Interface, Interface), IBylineInfo) renderer = testing.registerDummyRenderer( 'templates/show_forum_topic.pt') self._callFUT(context, request) self.assertEqual(len(renderer.comments), 1) c0 = renderer.comments[0] self.assertEqual(c0['text'], 'sometext') self.assertEqual(renderer.comments[0]['date'], 'Wednesday, January 28, 2009 08:32 AM') self.assertEqual(c0['author_name'], 'Dummy Profile') self.assertEqual(renderer.comments[0]['edit_url'], 'http://example.com/comments/1/edit.html')
def setUp(self): cleanUp() registerLayoutProvider()