Lib.test.test_os_jy.py Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jython-standalone Show documentation
Show all versions of jython-standalone Show documentation
Jython is an implementation of the high-level, dynamic, object-oriented
language Python written in 100% Pure Java, and seamlessly integrated with
the Java platform. It thus allows you to run Python on any Java platform.
"""Misc os module tests
Made for Jython.
"""
import os
import unittest
from test import test_support
class OSFileTestCase(unittest.TestCase):
def setUp(self):
open(test_support.TESTFN, 'w').close()
def tearDown(self):
if os.path.exists(test_support.TESTFN):
os.remove(test_support.TESTFN)
def test_issue1727(self):
os.stat(*(test_support.TESTFN,))
def test_issue1755(self):
os.remove(test_support.TESTFN)
self.assertRaises(OSError, os.utime, test_support.TESTFN, None)
@unittest.skipUnless(hasattr(os, 'link'), "os.link not available")
def test_issue1824(self):
os.remove(test_support.TESTFN)
self.assertRaises(OSError, os.link,
test_support.TESTFN, test_support.TESTFN)
def test_issue1825(self):
os.remove(test_support.TESTFN)
testfnu = unicode(test_support.TESTFN)
try:
os.open(testfnu, os.O_RDONLY)
except OSError, e:
self.assertTrue(isinstance(e.filename, unicode))
self.assertEqual(e.filename, testfnu)
else:
self.assertTrue(False)
# XXX: currently fail
#for fn in os.chdir, os.listdir, os.rmdir:
for fn in (os.rmdir,):
try:
fn(testfnu)
except OSError, e:
self.assertTrue(isinstance(e.filename, unicode))
self.assertEqual(e.filename, testfnu)
else:
self.assertTrue(False)
class OSDirTestCase(unittest.TestCase):
def setUp(self):
self.base = test_support.TESTFN
self.path = os.path.join(self.base, 'dir1', 'dir2', 'dir3')
os.makedirs(self.path)
def test_rmdir(self):
# Remove end directory
os.rmdir(self.path)
# Fail to remove a chain of directories
self.assertRaises(OSError, os.rmdir, self.base)
def test_issue2083(self):
# Should fail to remove/unlink directory
self.assertRaises(OSError, os.remove, self.path)
self.assertRaises(OSError, os.unlink, self.path)
def tearDown(self):
# Some dirs may have been deleted. Find the longest that exists.
p = self.path
while not os.path.exists(p) and p != self.base:
p = os.path.dirname(p)
os.removedirs(p)
def test_main():
test_support.run_unittest(
OSFileTestCase,
OSDirTestCase,
)
if __name__ == '__main__':
test_main()