From 19fd85790621ee8dff9ba5091f40d4b4e8f85a7f Mon Sep 17 00:00:00 2001 From: Thomas Heller Date: Tue, 4 Apr 2006 18:31:35 +0000 Subject: [PATCH] Add a simple test for os.startfile(). --- Lib/test/empty.vbs | 1 + Lib/test/test_startfile.py | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 Lib/test/empty.vbs create mode 100644 Lib/test/test_startfile.py diff --git a/Lib/test/empty.vbs b/Lib/test/empty.vbs new file mode 100644 index 00000000000..f35f076fdb9 --- /dev/null +++ b/Lib/test/empty.vbs @@ -0,0 +1 @@ +'Empty VBS file, does nothing. Helper for Lib\test\test_startfile.py. \ No newline at end of file diff --git a/Lib/test/test_startfile.py b/Lib/test/test_startfile.py new file mode 100644 index 00000000000..2b198e4a441 --- /dev/null +++ b/Lib/test/test_startfile.py @@ -0,0 +1,36 @@ +# Ridiculously simple test of the os.startfile function for Windows. +# +# empty.vbs is an empty file (except for a comment), which does +# nothing when run with cscript or wscript. +# +# A possible improvement would be to have empty.vbs do something that +# we can detect here, to make sure that not only the os.startfile() +# call succeeded, but also the the script actually has run. + +import unittest +from test import test_support +import os + + +class TestCase(unittest.TestCase): + def test_nonexisting(self): + self.assertRaises(OSError, os.startfile, "nonexisting.vbs") + + def test_nonexisting_u(self): + self.assertRaises(OSError, os.startfile, u"nonexisting.vbs") + + def test_empty(self): + empty = os.path.join(os.path.dirname(__file__), "empty.vbs") + os.startfile(empty) + os.startfile(empty, "open") + + def test_empty_u(self): + empty = os.path.join(os.path.dirname(__file__), "empty.vbs") + os.startfile(unicode(empty, "mbcs")) + os.startfile(unicode(empty, "mbcs"), "open") + +def test_main(): + test_support.run_unittest(TestCase) + +if __name__=="__main__": + test_main()