Complete comments form integration test.
svn path=/plone.app.discussion/trunk/; revision=39610
This commit is contained in:
parent
4f4f9f9cec
commit
a410c72333
@ -28,6 +28,7 @@ from Products.Five.testbrowser import Browser
|
|||||||
from Products.PloneTestCase.ptc import PloneTestCase
|
from Products.PloneTestCase.ptc import PloneTestCase
|
||||||
from Products.PloneTestCase.ptc import FunctionalTestCase
|
from Products.PloneTestCase.ptc import FunctionalTestCase
|
||||||
|
|
||||||
|
from plone.app.discussion.comment import Comment
|
||||||
from plone.app.discussion.browser.comments import CommentsViewlet
|
from plone.app.discussion.browser.comments import CommentsViewlet
|
||||||
from plone.app.discussion.browser.comments import CommentForm
|
from plone.app.discussion.browser.comments import CommentForm
|
||||||
from plone.app.discussion.interfaces import IConversation
|
from plone.app.discussion.interfaces import IConversation
|
||||||
@ -64,38 +65,38 @@ class TestCommentForm(PloneTestCase):
|
|||||||
provides=Interface,
|
provides=Interface,
|
||||||
factory=CommentForm,
|
factory=CommentForm,
|
||||||
name=u"comment-form")
|
name=u"comment-form")
|
||||||
|
|
||||||
class Comment(Implicit):
|
|
||||||
__allow_access_to_unprotected_subobjects__ = 1
|
|
||||||
implements(Interface)
|
|
||||||
|
|
||||||
context = Comment()
|
|
||||||
request = make_request(form={})
|
request = make_request(form={})
|
||||||
|
|
||||||
commentForm = getMultiAdapter((self.context, request), name=u"comment-form")
|
commentForm = getMultiAdapter((self.context, request),
|
||||||
|
name=u"comment-form")
|
||||||
commentForm.update()
|
commentForm.update()
|
||||||
data, errors = commentForm.extractData()
|
data, errors = commentForm.extractData()
|
||||||
|
|
||||||
self.assertEquals(len(errors), 2)
|
self.assertEquals(len(errors), 2)
|
||||||
|
self.failIf(commentForm.handleComment(commentForm, "foo"))
|
||||||
|
|
||||||
context = Comment()
|
|
||||||
request = make_request(form={'form.widgets.text': 'foo'})
|
request = make_request(form={'form.widgets.text': 'foo'})
|
||||||
|
|
||||||
commentForm = getMultiAdapter((self.context, request), name=u"comment-form")
|
commentForm = getMultiAdapter((self.context, request),
|
||||||
|
name=u"comment-form")
|
||||||
commentForm.update()
|
commentForm.update()
|
||||||
data, errors = commentForm.extractData()
|
data, errors = commentForm.extractData()
|
||||||
|
|
||||||
self.assertEquals(len(errors), 1)
|
self.assertEquals(len(errors), 1)
|
||||||
|
|
||||||
|
|
||||||
context = Comment()
|
|
||||||
request = make_request(form={'form.widgets.title': 'foo',
|
request = make_request(form={'form.widgets.title': 'foo',
|
||||||
'form.widgets.text': 'bar'})
|
'form.widgets.text': 'bar'})
|
||||||
|
|
||||||
commentForm = getMultiAdapter((self.context, request), name=u"comment-form")
|
commentForm = getMultiAdapter((self.context, request),
|
||||||
|
name=u"comment-form")
|
||||||
commentForm.update()
|
commentForm.update()
|
||||||
data, errors = commentForm.extractData()
|
data, errors = commentForm.extractData()
|
||||||
|
|
||||||
self.assertEquals(len(errors), 0)
|
self.assertEquals(len(errors), 0)
|
||||||
|
self.failIf(commentForm.handleComment(commentForm, "foo"))
|
||||||
|
|
||||||
|
|
||||||
class TestCommentsViewletIntegration(FunctionalTestCase):
|
class TestCommentsViewletIntegration(FunctionalTestCase):
|
||||||
@ -131,6 +132,13 @@ class TestCommentsViewletIntegration(FunctionalTestCase):
|
|||||||
self.failUnless('formfield-form-widgets-title' in browser.contents)
|
self.failUnless('formfield-form-widgets-title' in browser.contents)
|
||||||
self.failUnless('formfield-form-widgets-text' in browser.contents)
|
self.failUnless('formfield-form-widgets-text' in browser.contents)
|
||||||
|
|
||||||
|
browser.getControl(name='form.widgets.title').value = "My Comment"
|
||||||
|
browser.getControl(name='form.widgets.text').value = "Lorem ipsum"
|
||||||
|
browser.getControl(name='form.buttons.comment').click()
|
||||||
|
|
||||||
|
self.failUnless("My Comment" in browser.contents)
|
||||||
|
self.failUnless("Lorem ipsum" in browser.contents)
|
||||||
|
|
||||||
|
|
||||||
class TestCommentsViewlet(PloneTestCase):
|
class TestCommentsViewlet(PloneTestCase):
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user