def test_widgets_registry(self): """Test the widget registry module.""" from pages import widgets_registry as wreg for widget in wreg.registry: w = widget() w.render('name', 'value') try: wreg.register_widget(wreg.registry[0]) raise AssertionError("Error not raised properly.") except wreg.WidgetAlreadyRegistered: pass try: wreg.get_widget('wrong') raise AssertionError("Error not raised properly.") except wreg.WidgetNotFound: pass
def get_widget(self, page, language, fallback=Textarea): """Given the name of a placeholder return a `Widget` subclass like Textarea or TextInput.""" if isinstance(self.widget, str): widget = get_widget(self.widget) else: widget = self.widget try: return widget(page=page, language=language) except: pass return widget()
def get_widget(self, page, language, fallback=Textarea): """Given the name of a placeholder return a `Widget` subclass like Textarea or TextInput.""" is_str = type(self.widget) == type(str()) is_unicode = type(self.widget) == type(unicode()) if is_str or is_unicode: widget = get_widget(self.widget) else: widget = self.widget try: return widget(page=page, language=language) except: pass return widget()