[Checkins] SVN: grokcore.view/trunk/ - Make it possible to instantiate an ungrokked view by being slightly more
Martin Aspeli
optilude at gmx.net
Thu Apr 9 11:43:40 EDT 2009
Log message for revision 99036:
- Make it possible to instantiate an ungrokked view by being slightly more
defensive in __init__. This makes it easier to write unit tests.
Changed:
U grokcore.view/trunk/CHANGES.txt
U grokcore.view/trunk/src/grokcore/view/components.py
A grokcore.view/trunk/src/grokcore/view/tests/view/ungrokked.py
-=-
Modified: grokcore.view/trunk/CHANGES.txt
===================================================================
--- grokcore.view/trunk/CHANGES.txt 2009-04-09 15:24:50 UTC (rev 99035)
+++ grokcore.view/trunk/CHANGES.txt 2009-04-09 15:43:39 UTC (rev 99036)
@@ -4,9 +4,9 @@
1.5 (unreleased)
----------------
-- Nothing changed yet.
+- Make it possible to instantiate an ungrokked view by being slightly more
+ defensive in __init__. This makes it easier to write unit tests.
-
1.4 (2009-04-08)
----------------
Modified: grokcore.view/trunk/src/grokcore/view/components.py
===================================================================
--- grokcore.view/trunk/src/grokcore/view/components.py 2009-04-09 15:24:50 UTC (rev 99035)
+++ grokcore.view/trunk/src/grokcore/view/components.py 2009-04-09 15:43:39 UTC (rev 99036)
@@ -36,12 +36,16 @@
def __init__(self, context, request):
super(View, self).__init__(context, request)
- self.__name__ = self.__view_name__
- self.static = component.queryAdapter(
- self.request,
- interface.Interface,
- name=self.module_info.package_dotted_name
- )
+ self.__name__ = getattr(self, '__view_name__', None)
+
+ if getattr(self, 'module_info', None) is not None:
+ self.static = component.queryAdapter(
+ self.request,
+ interface.Interface,
+ name=self.module_info.package_dotted_name
+ )
+ else:
+ self.static = None
@property
def response(self):
Added: grokcore.view/trunk/src/grokcore/view/tests/view/ungrokked.py
===================================================================
--- grokcore.view/trunk/src/grokcore/view/tests/view/ungrokked.py (rev 0)
+++ grokcore.view/trunk/src/grokcore/view/tests/view/ungrokked.py 2009-04-09 15:43:39 UTC (rev 99036)
@@ -0,0 +1,17 @@
+"""
+Prove that we can instantiate things from unit tests without grokking.
+
+ >>> view = Ungrokked(None, None)
+
+This should not raise an exception, at least.
+
+ >>> view.static is None
+ True
+ >>> view.__name__ is None
+ True
+
+"""
+import grokcore.view as grok
+
+class Ungrokked(grok.View):
+ pass
\ No newline at end of file
More information about the Checkins
mailing list