def test_unicode(self): d = opendir.opendir(self.path) seen = set() for name in d: self.assertTrue(isinstance(name, unicode)) seen.add(name) self.assertEqual(seen, self.contents)
def test_unicode_non_decodable(self): d = opendir.opendir(self.path) real_getfilesystemencoding = opendir.sys.getfilesystemencoding opendir.sys.getfilesystemencoding = lambda: 'ascii' try: self.assertEqual(set(d), self.str_contents) finally: opendir.sys.getfilesystemencoding = real_getfilesystemencoding
def test_tell_seek(self): d = opendir.opendir(self.str_path) it = iter(d) pos = d.tell() name = it.next() d.seek(pos) self.assertEqual(d.tell(), pos) self.assertEqual(it.next(), name)
def test_rewind(self): d = opendir.opendir(self.str_path) self.assertEqual(set(iter(d)), self.str_contents) d.rewind() self.assertEqual(set(iter(d)), self.str_contents)
def test_closing_again(self): d = opendir.opendir(self.str_path) d.close() d.close()
def test_read(self): d = opendir.opendir(self.str_path) for _ in xrange(len(self.str_contents)): self.assertTrue(d.read() in self.str_contents) self.assertTrue(d.read() is None) self.assertTrue(d.read() is None)