[Checkins] SVN: Sandbox/darrylcousins/mars.form/ Updates to get this old code working again

Darryl Cousins darryl at darrylcousins.net.nz
Sat Feb 9 21:15:14 EST 2008


Log message for revision 83683:
  Updates to get this old code working again

Changed:
  U   Sandbox/darrylcousins/mars.form/buildout.cfg
  U   Sandbox/darrylcousins/mars.form/setup.py
  U   Sandbox/darrylcousins/mars.form/src/mars/form/components.py
  U   Sandbox/darrylcousins/mars.form/src/mars/form/form.txt
  U   Sandbox/darrylcousins/mars.form/src/mars/form/ftests/form.py
  U   Sandbox/darrylcousins/mars.form/src/mars/form/ftests/ftesting.zcml
  U   Sandbox/darrylcousins/mars.form/src/mars/form/ftests/test_functional.py
  U   Sandbox/darrylcousins/mars.form/src/mars/form/meta.py
  U   Sandbox/darrylcousins/mars.form/src/mars/form/tests.py
  U   Sandbox/darrylcousins/mars.form/src/mars/form/widget.txt

-=-
Modified: Sandbox/darrylcousins/mars.form/buildout.cfg
===================================================================
--- Sandbox/darrylcousins/mars.form/buildout.cfg	2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/buildout.cfg	2008-02-10 02:15:13 UTC (rev 83683)
@@ -1,13 +1,13 @@
 [buildout]
 develop = .
 parts = test
-extends = http://grok.zope.org/releaseinfo/grok-0.11.1.cfg
+extends = http://download.zope.org/zope3.4/versions-3.4.0c1.cfg
 versions = versions
 
 [versions]
-martian = 0.9.2
+grok = 0.12dev
+martian = 0.9.3
 
-
 [test]
 recipe = zc.recipe.testrunner
 eggs = mars.form [test]

Modified: Sandbox/darrylcousins/mars.form/setup.py
===================================================================
--- Sandbox/darrylcousins/mars.form/setup.py	2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/setup.py	2008-02-10 02:15:13 UTC (rev 83683)
@@ -14,15 +14,20 @@
 This package uses ``martian`` and ``grok`` to provide registrations using z3c.form
 for applications built on the ``zope`` framework.""",
     long_description=(
-        read('src/mars/form/README.txt') +
+        read('mars/form/README.txt') +
         read('CHANGES.txt')),
-    packages=find_packages('src'),
-    package_dir = {'': 'src'},
-    include_package_data = True,
-    namespace_packages = ['mars'],
-    zip_safe=False,
+    classifiers = ['Development Status :: 1 - Planning',
+                    'Intended Audience :: Developers',
+                    'License :: Other/Proprietary License',
+                    'Programming Language :: Python',
+                    'Operating System :: OS Independent',
+                    'Topic :: Software Development :: Build Tools',
+                    'Framework :: Zope3',
+                    ],
+    packages=find_packages(),
+    namespace_packages=['mars'],
+    zip_safe=True,
     license='ZPL',
-    dependency_links = ['http://download.zope.org/distribution'],
     extras_require = dict(
                 test=['zope.app.testing',
                       'zope.testbrowser',

Modified: Sandbox/darrylcousins/mars.form/src/mars/form/components.py
===================================================================
--- Sandbox/darrylcousins/mars.form/src/mars/form/components.py	2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/src/mars/form/components.py	2008-02-10 02:15:13 UTC (rev 83683)
@@ -8,16 +8,19 @@
 
 from grok.interfaces import IGrokView
 
-from mars.layer import ILayer
+import grok
 
 ## layers
-class IFormLayer(ILayer, IZ3CFormLayer, IPageletBrowserLayer):
+class IFormLayer(grok.IGrokLayer, IZ3CFormLayer, 
+                                  IPageletBrowserLayer):
     pass
 
-class IDivFormLayer(ILayer, IZ3CDivFormLayer, IZ3CFormLayer, IPageletBrowserLayer):
+class IDivFormLayer(grok.IGrokLayer, IZ3CDivFormLayer, IZ3CFormLayer,
+                                     IPageletBrowserLayer):
     pass
 
-class ITableFormLayer(ILayer, IZ3CTableFormLayer, IZ3CFormLayer, IPageletBrowserLayer):
+class ITableFormLayer(grok.IGrokLayer, IZ3CTableFormLayer, IZ3CFormLayer,
+                                       IPageletBrowserLayer):
     pass
 
 ## a widget template factory
@@ -26,4 +29,4 @@
 
 class FormView(object):
     """Vanilla view to mixin with z3c.form views"""
-    zope.interface.implements(IPagelet, IGrokView)
+    zope.interface.implements(IPagelet, grok.interfaces.IGrokView)

Modified: Sandbox/darrylcousins/mars.form/src/mars/form/form.txt
===================================================================
--- Sandbox/darrylcousins/mars.form/src/mars/form/form.txt	2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/src/mars/form/form.txt	2008-02-10 02:15:13 UTC (rev 83683)
@@ -74,12 +74,13 @@
 Grok our form and template
     
   >>> from mars.form.meta import FormViewGrokker
-  >>> FormViewGrokker().grok('', Add, None, module_info, None)
+  >>> FormViewGrokker().grok('', Add, module_info, config)
   True
 
   >>> from mars.template.meta import TemplateFactoryGrokker
-  >>> TemplateFactoryGrokker().grok('', Template, None, module_info, None)
+  >>> TemplateFactoryGrokker().grok('', Template, module_info, config)
   True
+  >>> config.execute_actions()
 
   >>> view = zope.component.getMultiAdapter((document, request),
   ...                                       name='add')
@@ -116,8 +117,9 @@
   ...     grok.template(layout) 
     
   >>> from mars.template.meta import LayoutFactoryGrokker
-  >>> LayoutFactoryGrokker().grok('', Layout, None, module_info, None)
+  >>> LayoutFactoryGrokker().grok('', Layout, module_info, config)
   True
+  >>> config.execute_actions()
 
 We need to register the content provider ``pagelet`` before we
 can use them. This is usually registered by inclusion of z3c.pagelet in

Modified: Sandbox/darrylcousins/mars.form/src/mars/form/ftests/form.py
===================================================================
--- Sandbox/darrylcousins/mars.form/src/mars/form/ftests/form.py	2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/src/mars/form/ftests/form.py	2008-02-10 02:15:13 UTC (rev 83683)
@@ -1,7 +1,5 @@
 """
 
-  >>> import grok
-  >>> grok.grok('mars.form.ftests.form')
   >>> root = getRootFolder()
 
   >>> from zope.testbrowser.testing import Browser
@@ -106,9 +104,9 @@
 class IMyFormLayer(mars.form.IDivFormLayer):
     pass
 
-mars.layer.layer(IMyFormLayer)
+grok.layer(IMyFormLayer)
 
-class FormSkin(mars.layer.Skin):
+class FormSkin(grok.Skin):
     pass
 
 class Template(mars.template.LayoutFactory):

Modified: Sandbox/darrylcousins/mars.form/src/mars/form/ftests/ftesting.zcml
===================================================================
--- Sandbox/darrylcousins/mars.form/src/mars/form/ftests/ftesting.zcml	2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/src/mars/form/ftests/ftesting.zcml	2008-02-10 02:15:13 UTC (rev 83683)
@@ -1,16 +1,8 @@
 <configure xmlns="http://namespaces.zope.org/zope"
-           xmlns:meta="http://namespaces.zope.org/meta"
-           xmlns:browser="http://namespaces.zope.org/browser"
+           xmlns:grok="http://namespaces.zope.org/grok"
            i18n_domain="zope"
            package="mars.form.ftests">
 
-  <include package="grok" file="meta.zcml" />
-  <include package="mars.template" file="meta.zcml" />
-  <include package="mars.layer" file="meta.zcml" />
-  <include package="mars.view" file="meta.zcml" />
-  <include package="mars.adapter" file="meta.zcml" />
-  <include package="mars.form" file="meta.zcml" />
-
   <include package="grok" />
 
   <include package="zope.contentprovider" />
@@ -24,5 +16,35 @@
   <include package="z3c.formui" />
   <include package="z3c.pagelet" />
 
+  <include package="mars.template" file="meta.zcml" />
+  <include package="mars.view" file="meta.zcml" />
+  <include package="mars.adapter" file="meta.zcml" />
+  <include package="mars.form" file="meta.zcml" />
+  <grok:grok package="mars.form.ftests" />
+
+  <securityPolicy
+      component="zope.securitypolicy.zopepolicy.ZopeSecurityPolicy"
+      />
+
+  <unauthenticatedPrincipal
+      id="zope.anybody"
+      title="Unauthenticated User"
+      />
+  <grant
+      permission="zope.View"
+      principal="zope.anybody"
+      />
+
+  <principal
+      id="zope.mgr"
+      title="Manager"
+      login="mgr"
+      password="mgrpw"
+      />
+
+  <role id="zope.Manager" title="Site Manager" />
+  <grantAll role="zope.Manager" />
+  <grant role="zope.Manager" principal="zope.mgr" />
+
 </configure>
 

Modified: Sandbox/darrylcousins/mars.form/src/mars/form/ftests/test_functional.py
===================================================================
--- Sandbox/darrylcousins/mars.form/src/mars/form/ftests/test_functional.py	2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/src/mars/form/ftests/test_functional.py	2008-02-10 02:15:13 UTC (rev 83683)
@@ -1,10 +1,15 @@
+import os
 import unittest
-from zope.testing import doctest
 
+from zope.testing import doctest
 from zope.app.testing.functional import FunctionalTestSetup, getRootFolder
 from zope.app.testing import functional
-functional.defineLayer('TestLayer', 'ftesting.zcml')
 
+ftesting_zcml = os.path.join(os.path.dirname(__file__), 'ftesting.zcml')
+TestLayer = functional.ZCMLLayer(
+                       ftesting_zcml, __name__, 'TestLayer')
+
+
 optionflags = doctest.NORMALIZE_WHITESPACE + doctest.ELLIPSIS
 globs = dict(getRootFolder=getRootFolder)
 
@@ -19,14 +24,8 @@
     dottedname = 'mars.form.ftests.%s'
     for name in ['form']:
         test = doctest.DocTestSuite(
-                    dottedname % name, setUp=setUp, globs=globs,
+                    dottedname % name, setUp=setUp, extraglobs=globs,
                     tearDown=tearDown, optionflags=optionflags)
         test.layer = TestLayer
         suite.addTest(test)
     return suite
-
-if __name__ == '__main__':
-    unittest.main(defaultTest='test_suite')
-
-
-

Modified: Sandbox/darrylcousins/mars.form/src/mars/form/meta.py
===================================================================
--- Sandbox/darrylcousins/mars.form/src/mars/form/meta.py	2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/src/mars/form/meta.py	2008-02-10 02:15:13 UTC (rev 83683)
@@ -16,7 +16,7 @@
 from martian.error import GrokError
 
 import grok
-from grok.util import check_adapts
+from grok.util import determine_class_directive
 
 import mars.form
 import mars.template
@@ -26,23 +26,27 @@
 class FormViewGrokker(ViewGrokkerBase):
     component_class = mars.form.FormView
 
-    def register(self, factory, module_info):
+    def register(self, factory, config):
 
-        # is name defined for layout?
         # if defined a named template is looked up
         factory._layout_name = util.class_annotation(factory, 'mars.view.layout', '')
 
-        zope.component.provideAdapter(factory,
-                                 adapts=(self.view_context, self.view_layer),
-                                 provides=self.provides,
-                                 name=self.view_name)
+        adapts = (self.view_context, self.view_layer)
+        config.action( 
+            discriminator=('adapter', adapts, self.provides, self.view_name),
+            callable=zope.component.provideAdapter,
+            args=(factory, adapts, self.provides, self.view_name),
+            )
 
 class WidgetTemplateFactoryGrokker(martian.ClassGrokker):
     component_class = mars.form.WidgetTemplateFactory
     provides = IPageTemplate
 
-    def grok(self, name, factory, context, module_info, templates):
-        view_context = util.determine_class_context(factory, context)
+    def grok(self, name, factory, module_info, config, *kws):
+
+        view_context = determine_class_directive('grok.context',
+                                               factory, module_info,
+                                               default=zope.interface.Interface)
         factory.module_info = module_info
         factory_name = factory.__name__.lower()
 
@@ -77,9 +81,13 @@
         #print '\nname:', mode,'context:', view_context,'factory:',\
         #      factory, 'provides', provides, 'view:', view, 'field:', field, \
         #      'widget:', widget, '\n'
-        zope.component.provideAdapter(factory,
-                                 adapts=(view_context, view_layer, view, field, widget),
-                                 provides=provides,
-                                 name=mode)
+
+        adapts = (view_context, view_layer, view, field, widget)
+        config.action( 
+            discriminator=('adapter', adapts, self.provides, mode),
+            callable=zope.component.provideAdapter,
+            args=(factory, adapts, self.provides, mode),
+            )
+
         return True
 

Modified: Sandbox/darrylcousins/mars.form/src/mars/form/tests.py
===================================================================
--- Sandbox/darrylcousins/mars.form/src/mars/form/tests.py	2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/src/mars/form/tests.py	2008-02-10 02:15:13 UTC (rev 83683)
@@ -1,7 +1,9 @@
 import unittest
+
 from zope.testing import doctest
 from zope.app.testing import setup
 import zope.interface
+from zope.configuration.config import ConfigurationMachine
 
 from martian.interfaces import IModuleInfo
 
@@ -14,13 +16,16 @@
         return default
 
 from zope.app.testing import setup
-globs = dict(module_info=ModuleInfo(), root=setup.placefulSetUp(True))
+globs = dict(module_info=ModuleInfo(),
+             root=setup.placefulSetUp(True),
+             config=ConfigurationMachine())
 
 optionflags = doctest.NORMALIZE_WHITESPACE + doctest.ELLIPSIS
 
 def setUp(test):
     from z3c.form import testing
     testing.setupFormDefaults()
+
     # register provider TALES
     from zope.app.pagetemplate import metaconfigure
     from zope.contentprovider import tales

Modified: Sandbox/darrylcousins/mars.form/src/mars/form/widget.txt
===================================================================
--- Sandbox/darrylcousins/mars.form/src/mars/form/widget.txt	2008-02-10 02:14:23 UTC (rev 83682)
+++ Sandbox/darrylcousins/mars.form/src/mars/form/widget.txt	2008-02-10 02:15:13 UTC (rev 83683)
@@ -1,8 +1,8 @@
 Widget Template Factory
 =======================
 
-The widget template factory seeks to provide a way to define and register using
-``martian`` widget templates.
+The widget template factory seeks to provide a way to define and register widget
+templates using ``martian``
 
 First lets create a simple widget to use in the tests.
 
@@ -43,15 +43,15 @@
   >>> import mars.form
   >>> class AgeWidgetTemplateFactory(mars.form.WidgetTemplateFactory):
   ...     grok.name(INPUT_MODE)
-  ...     grok.context(zope.interface.Interface)
   ...     grok.template(template)
 
 We need to ``grok`` the template.
 
   >>> from mars.form.meta import WidgetTemplateFactoryGrokker
-  >>> WidgetTemplateFactoryGrokker().grok('', AgeWidgetTemplateFactory,
-  ...                           zope.interface.Interface, module_info, None)
+  >>> WidgetTemplateFactoryGrokker().grok('', AgeWidgetTemplateFactory, 
+  ...                                         module_info, config)
   True
+  >>> config.execute_actions()
 
 Render the widget
 -----------------



More information about the Checkins mailing list