def test_get_blocks_insufficient_data_partial_block_null_data(self):

        counts = [
            2, 5, 10
        ]

        bytes_remainder = 1024

        for count in counts:
            reader = make_reader((((count - 1) * 1024 * 1024)
                                 + bytes_remainder),
                                 null_data=True)

            splitter = UniformSplitter(self.project_id,
                                       self.vault_id,
                                       reader)
            self.assertEqual(splitter.chunk_size,
                             (1024 * 1024))

            running_offset = 0
            blocks = splitter.get_blocks(count)
            self.assertIsInstance(blocks, list)
            self.assertEqual(count, len(blocks))
            for offset, block in blocks:
                self.assertIsInstance(block, api.Block)
                self.assertEqual(offset, running_offset)
                running_offset = running_offset + splitter.chunk_size
                # one block will be bytes_remainder bytes, the rest
                # will be chunk_size bytes
                if len(block) == bytes_remainder:
                    pass
                else:
                    self.assertEqual(splitter.chunk_size,
                                     len(block))
    def test_get_blocks_insufficient_null_data(self):

        counts = [
            2, 5, 10
        ]

        for count in counts:
            reader = make_reader((count - 1) * 1024 * 1024,
                                 null_data=True)

            splitter = UniformSplitter(self.project_id,
                                       self.vault_id,
                                       reader)
            self.assertEqual(splitter.chunk_size,
                             (1024 * 1024))

            running_offset = 0
            blocks = splitter.get_blocks(count)
            self.assertIsInstance(blocks, list)
            self.assertEqual((count - 1), len(blocks))
            for offset, block in blocks:
                self.assertIsInstance(block, api.Block)
                self.assertEqual(splitter.chunk_size,
                                 len(block))
                self.assertEqual(offset, running_offset)
                running_offset = running_offset + splitter.chunk_size