[Checkins] SVN: zc.zdaemonrecipe/trunk/zc/zdaemonrecipe/ Allow newlines in programs.

Jim Fulton jim at zope.com
Thu Jul 5 18:07:14 EDT 2007


Log message for revision 77487:
  Allow newlines in programs.
  

Changed:
  U   zc.zdaemonrecipe/trunk/zc/zdaemonrecipe/__init__.py
  U   zc.zdaemonrecipe/trunk/zc/zdaemonrecipe/tests.py

-=-
Modified: zc.zdaemonrecipe/trunk/zc/zdaemonrecipe/__init__.py
===================================================================
--- zc.zdaemonrecipe/trunk/zc/zdaemonrecipe/__init__.py	2007-07-05 21:46:36 UTC (rev 77486)
+++ zc.zdaemonrecipe/trunk/zc/zdaemonrecipe/__init__.py	2007-07-05 22:07:14 UTC (rev 77487)
@@ -87,7 +87,7 @@
             cStringIO.StringIO(zdaemon_conf))
 
         defaults = {
-            'program': "%s" % options['program'],
+            'program': "%s" % ' '.join(options['program'].split()),
             'daemon': 'on',
             'transcript': event_log_path,
             'socket-name': socket_path,

Modified: zc.zdaemonrecipe/trunk/zc/zdaemonrecipe/tests.py
===================================================================
--- zc.zdaemonrecipe/trunk/zc/zdaemonrecipe/tests.py	2007-07-05 21:46:36 UTC (rev 77486)
+++ zc.zdaemonrecipe/trunk/zc/zdaemonrecipe/tests.py	2007-07-05 22:07:14 UTC (rev 77487)
@@ -21,7 +21,45 @@
 import zope.testing
 from zope.testing import doctest, renormalizing
 
+def newlines_in_program():
+    """
+There can be newlines in the program option:
 
+    >>> write('buildout.cfg',
+    ... '''
+    ... [buildout]
+    ... parts = run
+    ...
+    ... [run]
+    ... recipe = zc.zdaemonrecipe
+    ... program = sleep
+    ...             1
+    ... ''')
+
+    >>> print system(buildout),
+    Installing run.
+    Generated script '/sample-buildout/bin/zdaemon'.
+    Generated script '/sample-buildout/bin/run'.
+
+    >>> cat('parts', 'run', 'zdaemon.conf')
+    <runner>
+      daemon on
+      directory /sample-buildout/parts/run
+      program sleep 1
+      socket-name /sample-buildout/parts/run/zdaemon.sock
+      transcript /sample-buildout/parts/run/transcript.log
+    </runner>
+    <BLANKLINE>
+    <eventlog>
+      <logfile>
+        path /sample-buildout/parts/run/transcript.log
+      </logfile>
+    </eventlog>
+
+    
+    """
+
+
 def setUp(test):
     zc.buildout.testing.buildoutSetUp(test)
     zc.buildout.testing.install_develop('zc.zdaemonrecipe', test)
@@ -51,5 +89,8 @@
             setUp=setUp, tearDown=zc.buildout.testing.buildoutTearDown,
             checker=checker,
             ),
-        
+        doctest.DocTestSuite(
+            setUp=setUp, tearDown=zc.buildout.testing.buildoutTearDown,
+            checker=checker,
+            ),
         ))



More information about the Checkins mailing list