| #!/usr/bin/env python |
| |
| # This Source Code Form is subject to the terms of the Mozilla Public |
| # License, v. 2.0. If a copy of the MPL was not distributed with this file, |
| # You can obtain one at http://mozilla.org/MPL/2.0/. |
| |
| import unittest |
| from mozprocess import processhandler |
| |
| class ParamTests(unittest.TestCase): |
| |
| |
| def test_process_outputline_handler(self): |
| """Parameter processOutputLine is accepted with a single function""" |
| def output(line): |
| print("output " + str(line)) |
| err = None |
| try: |
| processhandler.ProcessHandler(['ls','-l'], processOutputLine=output) |
| except (TypeError, AttributeError) as e: |
| err = e |
| self.assertFalse(err) |
| |
| def test_process_outputline_handler_list(self): |
| """Parameter processOutputLine is accepted with a list of functions""" |
| def output(line): |
| print("output " + str(line)) |
| err = None |
| try: |
| processhandler.ProcessHandler(['ls','-l'], processOutputLine=[output]) |
| except (TypeError, AttributeError) as e: |
| err = e |
| self.assertFalse(err) |
| |
| |
| def test_process_ontimeout_handler(self): |
| """Parameter onTimeout is accepted with a single function""" |
| def timeout(): |
| print("timeout!") |
| err = None |
| try: |
| processhandler.ProcessHandler(['sleep', '2'], onTimeout=timeout) |
| except (TypeError, AttributeError) as e: |
| err = e |
| self.assertFalse(err) |
| |
| def test_process_ontimeout_handler_list(self): |
| """Parameter onTimeout is accepted with a list of functions""" |
| def timeout(): |
| print("timeout!") |
| err = None |
| try: |
| processhandler.ProcessHandler(['sleep', '2'], onTimeout=[timeout]) |
| except (TypeError, AttributeError) as e: |
| err = e |
| self.assertFalse(err) |
| |
| def test_process_onfinish_handler(self): |
| """Parameter onFinish is accepted with a single function""" |
| def finish(): |
| print("finished!") |
| err = None |
| try: |
| processhandler.ProcessHandler(['sleep', '1'], onFinish=finish) |
| except (TypeError, AttributeError) as e: |
| err = e |
| self.assertFalse(err) |
| |
| def test_process_onfinish_handler_list(self): |
| """Parameter onFinish is accepted with a list of functions""" |
| def finish(): |
| print("finished!") |
| err = None |
| try: |
| processhandler.ProcessHandler(['sleep', '1'], onFinish=[finish]) |
| except (TypeError, AttributeError) as e: |
| err = e |
| self.assertFalse(err) |
| |
| |
| def main(): |
| unittest.main() |
| |
| if __name__ == '__main__': |
| main() |
| |