2 new revisions:
Revision: 532d879ebf72
Branch: default
Author: Mikko Korpela <[email protected]>
Date: Thu Apr 18 03:05:50 2013
Log: ProcessLibrary: Switch Active Process
http://code.google.com/p/robotframework/source/detail?r=532d879ebf72
Revision: bf6bb587874a
Branch: default
Author: Mikko Korpela <[email protected]>
Date: Thu Apr 18 03:10:42 2013
Log: ProcessLibrary: Run Process does not change active process
http://code.google.com/p/robotframework/source/detail?r=bf6bb587874a
==============================================================================
Revision: 532d879ebf72
Branch: default
Author: Mikko Korpela <[email protected]>
Date: Thu Apr 18 03:05:50 2013
Log: ProcessLibrary: Switch Active Process
http://code.google.com/p/robotframework/source/detail?r=532d879ebf72
Modified:
/atest/robot/standard_libraries/test_process_library.txt
/atest/testdata/standard_libraries/test_process_library.txt
/src/robot/libraries/ProcessLibrary.py
=======================================
--- /atest/robot/standard_libraries/test_process_library.txt Wed Apr 17
05:08:45 2013
+++ /atest/robot/standard_libraries/test_process_library.txt Thu Apr 18
03:05:50 2013
@@ -15,6 +15,9 @@
Start And Wait Process
Check Test Case ${TESTNAME}
+
+Switching active process
+ Check Test Case ${TESTNAME}
Killing process
Check Test Case ${TESTNAME}
=======================================
--- /atest/testdata/standard_libraries/test_process_library.txt Wed Apr 17
06:05:30 2013
+++ /atest/testdata/standard_libraries/test_process_library.txt Thu Apr 18
03:05:50 2013
@@ -23,6 +23,18 @@
Should Be True ${is_alive}
Wait For Process ${handle}
Process Should Be Dead ${handle}
+
+Switching active process
+ ${process_one}= Endless process one
+ Kill Process one
+ ${process_two}= Endless process two
+ Process Should Be Alive ${process_two}
+ Switch Active Process one
+ Process Should Be Dead
+ Switch Active Process two
+ Process Should Be Alive
+ Kill Process
+
Killing process
${handle}= Endless process
=======================================
--- /src/robot/libraries/ProcessLibrary.py Wed Apr 17 06:05:30 2013
+++ /src/robot/libraries/ProcessLibrary.py Thu Apr 18 03:05:50 2013
@@ -54,11 +54,11 @@
self._started_processes.switch(handle)
return self._started_processes.current.poll() is None
- def process_should_be_alive(self, handle):
+ def process_should_be_alive(self, handle=None):
if not self.process_is_alive(handle):
raise AssertionError('Process is not alive')
- def process_should_be_dead(self, handle):
+ def process_should_be_dead(self, handle=None):
if self.process_is_alive(handle):
raise AssertionError('Process is alive')
@@ -97,6 +97,9 @@
with open(alog.stdout,'a') as f:
f.write(msg.encode('UTF-8'))
+ def switch_active_process(self, handle):
+ self._started_processes.switch(handle)
+
class ExecutionResult(object):
==============================================================================
Revision: bf6bb587874a
Branch: default
Author: Mikko Korpela <[email protected]>
Date: Thu Apr 18 03:10:42 2013
Log: ProcessLibrary: Run Process does not change active process
http://code.google.com/p/robotframework/source/detail?r=bf6bb587874a
Modified:
/atest/robot/standard_libraries/test_process_library.txt
/atest/testdata/standard_libraries/test_process_library.txt
/src/robot/libraries/ProcessLibrary.py
=======================================
--- /atest/robot/standard_libraries/test_process_library.txt Thu Apr 18
03:05:50 2013
+++ /atest/robot/standard_libraries/test_process_library.txt Thu Apr 18
03:10:42 2013
@@ -18,6 +18,9 @@
Switching active process
Check Test Case ${TESTNAME}
+
+Run process does not change active process
+ Check Test Case ${TESTNAME}
Killing process
Check Test Case ${TESTNAME}
=======================================
--- /atest/testdata/standard_libraries/test_process_library.txt Thu Apr 18
03:05:50 2013
+++ /atest/testdata/standard_libraries/test_process_library.txt Thu Apr 18
03:10:42 2013
@@ -34,6 +34,13 @@
Switch Active Process two
Process Should Be Alive
Kill Process
+
+Run process does not change active process
+ Endless process active
+ ${expected id}= Get Process Id
+ Run Python Process 1+1
+ ${id}= Get Process Id
+ Should Be Equal ${expected id} ${id}
Killing process
=======================================
--- /src/robot/libraries/ProcessLibrary.py Thu Apr 18 03:05:50 2013
+++ /src/robot/libraries/ProcessLibrary.py Thu Apr 18 03:10:42 2013
@@ -31,8 +31,12 @@
self._tempdir = tempfile.mkdtemp(suffix="processlib")
def run_process(self, command, *args, **conf):
- p = self.start_new_process(command, *args, **conf)
- return self.wait_for_process(p)
+ active_process_index = self._started_processes.current_index
+ try:
+ p = self.start_new_process(command, *args, **conf)
+ return self.wait_for_process(p)
+ finally:
+ self._started_processes.switch(active_process_index)
def start_new_process(self, command, *args, **conf):
cmd = [command]+[str(i) for i in args]
@@ -84,8 +88,9 @@
if self.process_is_alive(handle):
self.kill_process(handle)
- def get_process_id(self, handle):
- self._started_processes.switch(handle)
+ def get_process_id(self, handle=None):
+ if handle:
+ self._started_processes.switch(handle)
return self._started_processes.current.pid
def input_to_process(self, handle, msg):
--
---
You received this message because you are subscribed to the Google Groups "robotframework-commit" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.