[Supervisor-checkins] r801 - in supervisor/branches/gsoc/src/supervisor: . tests
Siddhant Goel
siddhantgoel at gmail.com
Wed Aug 13 07:30:57 EDT 2008
Author: Siddhant Goel <siddhantgoel at gmail.com>
Date: Wed Aug 13 07:30:57 2008
New Revision: 801
Log:
Unit tests
Modified:
supervisor/branches/gsoc/src/supervisor/supervisorctl.py
supervisor/branches/gsoc/src/supervisor/tests/test_supervisorctl.py
Modified: supervisor/branches/gsoc/src/supervisor/supervisorctl.py
==============================================================================
--- supervisor/branches/gsoc/src/supervisor/supervisorctl.py (original)
+++ supervisor/branches/gsoc/src/supervisor/supervisorctl.py Wed Aug 13 07:30:57 2008
@@ -115,6 +115,7 @@
'restart','start','stop','version','clear',
'fg','open','quit','remove','shutdown','status',
'tail','help']
+ self.info=self.get_supervisor().getAllProcessInfo()
cmd.Cmd.__init__(self, completekey, stdin, stdout)
for name, factory, kwargs in self.options.plugin_factories:
plugin = factory(self, **kwargs)
@@ -222,12 +223,10 @@
return True
def completionmatches(self,text,line,flag=0):
- supervisor=self.get_supervisor()
- li=supervisor.getAllProcessInfo()
groups=[]
programs=[]
groupwiseprograms={}
- for i in li:
+ for i in self.info:
programs.append(i['name'])
if i['group'] not in groups:
groups.append(i['group'])
@@ -241,8 +240,8 @@
for n in groupwiseprograms[i]:
total.append(i+':'+n+' ')
if flag:
+ # add/remove require only the group name
return [i+' ' for i in groups if i.startswith(text)]
- current=line.split()[-1]
if len(line.split()) == 1:
return total
else:
Modified: supervisor/branches/gsoc/src/supervisor/tests/test_supervisorctl.py
==============================================================================
--- supervisor/branches/gsoc/src/supervisor/tests/test_supervisorctl.py (original)
+++ supervisor/branches/gsoc/src/supervisor/tests/test_supervisorctl.py Wed Aug 13 07:30:57 2008
@@ -74,6 +74,18 @@
self.assertEqual(controller.cmdqueue, [' help'])
self.assertEqual(plugin.helped, True)
+ def test_completionmatches(self):
+ options=DummyClientOptions()
+ controller=self._makeOne(options)
+ controller.stdout=StringIO()
+ plugin=DummyPlugin()
+ controller.options.plugin=(plugin,)
+ for i in ['add','remove']:
+ result=controller.completionmatches('',i+' ',1)
+ self.assertEqual(result,['foo ','bar ','baz '])
+ result=controller.completionmatches('','fg baz:')
+ self.assertEqual(result,['baz_01 '])
+
def test_nohelp(self):
options = DummyClientOptions()
controller = self._makeOne(options)
More information about the Supervisor-checkins
mailing list