def test_dx_tinymcewidget_single_mimetype(self): """A RichTextWidget with only one available mimetype should render the pattern class directly on itself. """ if IMarkupSchema: # if not, don't run this test self._set_mimetypes(allowed=('text/html',)) from plone.app.z3cform.widget import RichTextWidget widget = FieldWidget(self.field, RichTextWidget(self.request)) # set the context so we can get tinymce settings widget.context = self.portal rendered = widget.render() self.assertTrue('<select' not in rendered) self.assertTrue('pat-tinymce' in rendered) self.assertTrue('data-pat-tinymce' in rendered)
def test_dx_tinymcewidget_single_mimetype(self): """A RichTextWidget with only one available mimetype should render the pattern class directly on itself. """ if IMarkupSchema: # if not, don't run this test self._set_mimetypes(allowed=('text/html', )) from plone.app.z3cform.widget import RichTextWidget widget = FieldWidget(self.field, RichTextWidget(self.request)) # set the context so we can get tinymce settings widget.context = self.portal rendered = widget.render() self.assertTrue('<select' not in rendered) self.assertTrue('pat-tinymce' in rendered) self.assertTrue('data-pat-tinymce' in rendered)
def test_dx_tinymcewidget_multiple_mimetypes_create(self): """A RichTextWidget with multiple available mimetypes should render a mimetype selection widget along with the textfield. When there is no field value, the default mimetype should be preselected. """ if IMarkupSchema: # if not, don't run this test self._set_mimetypes(allowed=('text/html', 'text/plain')) from plone.app.z3cform.widget import RichTextWidget widget = FieldWidget(self.field, RichTextWidget(self.request)) # set the context so we can get tinymce settings widget.context = self.portal rendered = widget.render() self.assertTrue('<select' in rendered) self.assertTrue('pat-textareamimetypeselector' in rendered) self.assertTrue('data-pat-textareamimetypeselector' in rendered) self.assertTrue( '<option value="text/html" selected="selected">' in rendered) self.assertTrue('pat-tinymce' not in rendered)
def test_dx_tinymcewidget_multiple_mimetypes_edit(self): """A RichTextWidget with multiple available mimetypes should render a mimetype selection widget along with the textfield. When there is already a RichTextValue, it's mimetype should be preselected. """ if IMarkupSchema: # if not, don't run this test self._set_mimetypes(allowed=('text/html', 'text/plain')) from collective.patterns.widgets.dx import RichTextWidget from plone.app.textfield.value import RichTextValue widget = FieldWidget(self.field, RichTextWidget(self.request)) # set the context so we can get tinymce settings widget.context = self.portal widget.value = RichTextValue(u'Hello world', mimeType='text/plain') rendered = widget.render() self.assertTrue('<select' in rendered) self.assertTrue('pat-textareamimetypeselector' in rendered) self.assertTrue('data-pat-textareamimetypeselector' in rendered) self.assertTrue( '<option value="text/plain" selected="selected">' in rendered) self.assertTrue('pat-tinymce' not in rendered)