diff --git a/lib/utils.py b/lib/utils.py index 242a8e4a3935e325253df097c25b57426571d265..1d0750e30ac3aae8b61bef56a3b1b057ebce3f4e 100644 --- a/lib/utils.py +++ b/lib/utils.py @@ -1383,28 +1383,21 @@ def EnsureDirs(dirs): raise errors.GenericError("%s is not a directory" % dir_name) -def ReadFile(file_name, size=-1, oneline=False): +def ReadFile(file_name, size=-1): """Reads a file. @type size: int @param size: Read at most size bytes (if negative, entire file) - @type oneline: bool - @param oneline: Whether to read only one line (newline char is not included) @rtype: str @return: the (possibly partial) content of the file """ f = open(file_name, "r") try: - if oneline: - data = f.readline(size).rstrip("\r\n") - else: - data = f.read(size) + return f.read(size) finally: f.close() - return data - def WriteFile(file_name, fn=None, data=None, mode=None, uid=-1, gid=-1, diff --git a/test/ganeti.utils_unittest.py b/test/ganeti.utils_unittest.py index 99c2ae4386daa31c526095cb7f7c7d06b12e748b..59e2517c9763574908d24254473602f268110105 100755 --- a/test/ganeti.utils_unittest.py +++ b/test/ganeti.utils_unittest.py @@ -518,16 +518,6 @@ class TestMatchNameComponent(unittest.TestCase): class TestReadFile(testutils.GanetiTestCase): - def setUp(self): - testutils.GanetiTestCase.setUp(self) - - self.tmpdir = tempfile.mkdtemp() - self.fname = utils.PathJoin(self.tmpdir, "data1") - - def tearDown(self): - testutils.GanetiTestCase.tearDown(self) - - shutil.rmtree(self.tmpdir) def testReadAll(self): data = utils.ReadFile(self._TestDataFilename("cert1.pem")) @@ -546,51 +536,9 @@ class TestReadFile(testutils.GanetiTestCase): h.update(data) self.assertEqual(h.hexdigest(), "893772354e4e690b9efd073eed433ce7") - def testReadOneline(self): - data = utils.ReadFile(self._TestDataFilename("cert1.pem"), - oneline=True) - self.assertEqual(len(data), 27) - self.assertEqual(data, "-----BEGIN CERTIFICATE-----") - - def testReadOnelineSize(self): - dummydata = (1024 * "Hello World! ") - self.assertFalse(set("\r\n") & set(dummydata)) - - utils.WriteFile(self.fname, data=dummydata) - - data = utils.ReadFile(self.fname, oneline=True, size=555) - self.assertEqual(len(data), 555) - self.assertEqual(data, dummydata[:555]) - self.assertFalse(set("\r\n") & set(data)) - - def testReadOnelineSize2(self): - for end in ["\n", "\r\n"]: - dummydata = (1024 * ("Hello World%s" % end)) - self.assert_(set("\r\n") & set(dummydata)) - - utils.WriteFile(self.fname, data=dummydata) - - data = utils.ReadFile(self.fname, oneline=True, size=555) - self.assertEqual(len(data), len("Hello World")) - self.assertEqual(data, dummydata[:11]) - self.assertFalse(set("\r\n") & set(data)) - - def testReadOnelineWhitespace(self): - for ws in [" ", "\t", "\t\t \t", "\t "]: - dummydata = (1024 * ("Foo bar baz %s\n" % ws)) - self.assert_(set("\r\n") & set(dummydata)) - - utils.WriteFile(self.fname, data=dummydata) - - data = utils.ReadFile(self.fname, oneline=True, size=555) - explen = len("Foo bar baz ") + len(ws) - self.assertEqual(len(data), explen) - self.assertEqual(data, dummydata[:explen]) - self.assertFalse(set("\r\n") & set(data)) - def testError(self): self.assertRaises(EnvironmentError, utils.ReadFile, - utils.PathJoin(self.tmpdir, "does-not-exist")) + "/dev/null/does-not-exist") class TestTimestampForFilename(unittest.TestCase):