def setUp(self): super(StreamReaderTests, self).setUp() self.runner = MockBackupStream(filename='123.xbstream.enc.gz', user='******', password='******') self.stream = StreamReader(self.runner, self.runner.manifest, max_file_size=100)
class StreamReaderTests(trove_testtools.TestCase): def setUp(self): super(StreamReaderTests, self).setUp() self.runner = MockBackupStream(filename='123.xbstream.enc.gz', user='******', password='******') self.stream = StreamReader(self.runner, self.runner.manifest, 'database_backups', max_file_size=100) def test_base_filename(self): self.assertEqual('123', self.stream.base_filename) def test_base_filename_no_extension(self): stream_reader = StreamReader(self.runner, 'foo', 'database_backups') self.assertEqual('foo', stream_reader.base_filename) def test_prefix(self): self.assertEqual('database_backups/123_', self.stream.prefix) def test_segment(self): self.assertEqual('123_00000000', self.stream.segment) def test_end_of_file(self): self.assertFalse(self.stream.end_of_file) def test_end_of_segment(self): self.assertFalse(self.stream.end_of_segment) def test_segment_almost_complete(self): self.stream.segment_length = 98 results = self.stream.read(2) self.assertEqual('XX', results) self.assertEqual('123_00000000', self.stream.segment, "The Segment should still be the same") self.assertEqual(100, self.stream.segment_length) checksum = hashlib.md5('XX') checksum = checksum.hexdigest() segment_checksum = self.stream.segment_checksum.hexdigest() self.assertEqual(checksum, segment_checksum, "Segment checksum did not match") def test_segment_complete(self): self.stream.segment_length = 99 results = self.stream.read(2) self.assertEqual('', results, "Results should be empty.") self.assertEqual('123_00000001', self.stream.segment) def test_stream_complete(self): results = self.stream.read(0) self.assertEqual('', results, "Results should be empty.") self.assertTrue(self.stream.end_of_file)
def test_base_filename_no_extension(self): stream_reader = StreamReader(self.runner, 'foo', 'database_backups') self.assertEqual('foo', stream_reader.base_filename)