def test_widget(self): from plone.app.widgets.dx import AjaxSelectWidget widget = AjaxSelectWidget(self.request) widget.update() self.assertEqual( { 'name': None, 'value': u'', 'pattern': 'select2', 'pattern_options': {'separator': ';'}, }, widget._base_args() ) widget.vocabulary = 'example' self.assertEqual( widget._base_args(), { 'name': None, 'value': u'', 'pattern': 'select2', 'pattern_options': { 'vocabularyUrl': '/@@getVocabulary?name=example', 'separator': ';' }, } ) widget.value = 'three;two' self.assertEqual( widget._base_args(), { 'name': None, 'value': 'three;two', 'pattern': 'select2', 'pattern_options': { 'vocabularyUrl': '/@@getVocabulary?name=example', 'initialValues': {'three': u'Three', 'two': u'Two'}, 'separator': ';' }, } )