Revision b774bb10 test/ganeti.utils_unittest.py
b/test/ganeti.utils_unittest.py | ||
---|---|---|
38 | 38 |
import warnings |
39 | 39 |
import distutils.version |
40 | 40 |
import glob |
41 |
import md5 |
|
41 | 42 |
|
42 | 43 |
import ganeti |
43 | 44 |
import testutils |
... | ... | |
516 | 517 |
None) |
517 | 518 |
|
518 | 519 |
|
520 |
class TestReadFile(testutils.GanetiTestCase): |
|
521 |
def setUp(self): |
|
522 |
testutils.GanetiTestCase.setUp(self) |
|
523 |
|
|
524 |
self.tmpdir = tempfile.mkdtemp() |
|
525 |
self.fname = utils.PathJoin(self.tmpdir, "data1") |
|
526 |
|
|
527 |
def tearDown(self): |
|
528 |
testutils.GanetiTestCase.tearDown(self) |
|
529 |
|
|
530 |
shutil.rmtree(self.tmpdir) |
|
531 |
|
|
532 |
def testReadAll(self): |
|
533 |
data = utils.ReadFile(self._TestDataFilename("cert1.pem")) |
|
534 |
self.assertEqual(len(data), 814) |
|
535 |
|
|
536 |
h = md5.new() |
|
537 |
h.update(data) |
|
538 |
self.assertEqual(h.hexdigest(), "a491efb3efe56a0535f924d5f8680fd4") |
|
539 |
|
|
540 |
def testReadSize(self): |
|
541 |
data = utils.ReadFile(self._TestDataFilename("cert1.pem"), |
|
542 |
size=100) |
|
543 |
self.assertEqual(len(data), 100) |
|
544 |
|
|
545 |
h = md5.new() |
|
546 |
h.update(data) |
|
547 |
self.assertEqual(h.hexdigest(), "893772354e4e690b9efd073eed433ce7") |
|
548 |
|
|
549 |
def testReadOneline(self): |
|
550 |
data = utils.ReadFile(self._TestDataFilename("cert1.pem"), |
|
551 |
oneline=True) |
|
552 |
self.assertEqual(len(data), 27) |
|
553 |
self.assertEqual(data, "-----BEGIN CERTIFICATE-----") |
|
554 |
|
|
555 |
def testReadOnelineSize(self): |
|
556 |
dummydata = (1024 * "Hello World! ") |
|
557 |
self.assertFalse(set("\r\n") & set(dummydata)) |
|
558 |
|
|
559 |
utils.WriteFile(self.fname, data=dummydata) |
|
560 |
|
|
561 |
data = utils.ReadFile(self.fname, oneline=True, size=555) |
|
562 |
self.assertEqual(len(data), 555) |
|
563 |
self.assertEqual(data, dummydata[:555]) |
|
564 |
self.assertFalse(set("\r\n") & set(data)) |
|
565 |
|
|
566 |
def testReadOnelineSize2(self): |
|
567 |
for end in ["\n", "\r\n"]: |
|
568 |
dummydata = (1024 * ("Hello World%s" % end)) |
|
569 |
self.assert_(set("\r\n") & set(dummydata)) |
|
570 |
|
|
571 |
utils.WriteFile(self.fname, data=dummydata) |
|
572 |
|
|
573 |
data = utils.ReadFile(self.fname, oneline=True, size=555) |
|
574 |
self.assertEqual(len(data), len("Hello World")) |
|
575 |
self.assertEqual(data, dummydata[:11]) |
|
576 |
self.assertFalse(set("\r\n") & set(data)) |
|
577 |
|
|
578 |
def testReadOnelineWhitespace(self): |
|
579 |
for ws in [" ", "\t", "\t\t \t", "\t "]: |
|
580 |
dummydata = (1024 * ("Foo bar baz %s\n" % ws)) |
|
581 |
self.assert_(set("\r\n") & set(dummydata)) |
|
582 |
|
|
583 |
utils.WriteFile(self.fname, data=dummydata) |
|
584 |
|
|
585 |
data = utils.ReadFile(self.fname, oneline=True, size=555) |
|
586 |
explen = len("Foo bar baz ") + len(ws) |
|
587 |
self.assertEqual(len(data), explen) |
|
588 |
self.assertEqual(data, dummydata[:explen]) |
|
589 |
self.assertFalse(set("\r\n") & set(data)) |
|
590 |
|
|
591 |
def testError(self): |
|
592 |
self.assertRaises(EnvironmentError, utils.ReadFile, |
|
593 |
utils.PathJoin(self.tmpdir, "does-not-exist")) |
|
594 |
|
|
595 |
|
|
519 | 596 |
class TestTimestampForFilename(unittest.TestCase): |
520 | 597 |
def test(self): |
521 | 598 |
self.assert_("." not in utils.TimestampForFilename()) |
Also available in: Unified diff