[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH for-2.6 v3 3/3] iotests: Test case for drive-mir
From: |
Jeff Cody |
Subject: |
Re: [Qemu-devel] [PATCH for-2.6 v3 3/3] iotests: Test case for drive-mirror with unaligned image size |
Date: |
Wed, 20 Apr 2016 10:50:23 -0400 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Wed, Apr 20, 2016 at 04:32:46PM +0200, Kevin Wolf wrote:
> From: Fam Zheng <address@hidden>
>
> This is the regression test for the virtual size mismatch issue between
> target and source images.
>
> [ kwolf: Added test_unaligned_with_update ]
>
> Signed-off-by: Fam Zheng <address@hidden>
> Signed-off-by: Kevin Wolf <address@hidden>
> ---
> tests/qemu-iotests/152 | 62
> ++++++++++++++++++++++++++++++++++++++++++++++
> tests/qemu-iotests/152.out | 5 ++++
> tests/qemu-iotests/group | 1 +
> 3 files changed, 68 insertions(+)
> create mode 100644 tests/qemu-iotests/152
> create mode 100644 tests/qemu-iotests/152.out
>
> diff --git a/tests/qemu-iotests/152 b/tests/qemu-iotests/152
> new file mode 100644
> index 0000000..fec546d
> --- /dev/null
> +++ b/tests/qemu-iotests/152
> @@ -0,0 +1,62 @@
> +#!/usr/bin/env python
> +#
> +# Tests for drive-mirror with source size unaligned to granularity
> +#
> +# Copyright (C) 2016 Red Hat, Inc.
> +#
> +# This program is free software; you can redistribute it and/or modify
> +# it under the terms of the GNU General Public License as published by
> +# the Free Software Foundation; either version 2 of the License, or
> +# (at your option) any later version.
> +#
> +# This program is distributed in the hope that it will be useful,
> +# but WITHOUT ANY WARRANTY; without even the implied warranty of
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> +# GNU General Public License for more details.
> +#
> +# You should have received a copy of the GNU General Public License
> +# along with this program. If not, see <http://www.gnu.org/licenses/>.
> +#
> +
> +import os
> +import iotests
> +from iotests import qemu_img
> +
> +test_img = os.path.join(iotests.test_dir, 'test.img')
> +target_img = os.path.join(iotests.test_dir, 'target.img')
> +
> +class TestUnaligned(iotests.QMPTestCase):
> + def setUp(self):
> + qemu_img('create', '-f', iotests.imgfmt, test_img, '512')
> + self.vm = iotests.VM().add_drive(test_img)
> + self.vm.launch()
> +
> + def tearDown(self):
> + self.vm.shutdown()
> + os.remove(test_img)
> + try:
> + os.remove(target_img)
> + except OSError:
> + pass
> +
> + def test_unaligned(self):
> + result = self.vm.qmp('drive-mirror', device='drive0', sync='full',
> + granularity=65536, target=target_img)
> + self.complete_and_wait()
> + self.vm.shutdown()
> + self.assertEqual(iotests.image_size(test_img),
> iotests.image_size(target_img),
> + "Target size doesn't match source when granularity
> when unaligend")
> +
> + def test_unaligned_with_update(self):
> + result = self.vm.qmp('drive-mirror', device='drive0', sync='full',
> + granularity=65536, target=target_img)
> + self.wait_ready()
> + self.vm.hmp_qemu_io('drive0', 'write 0 512')
> + self.complete_and_wait(wait_ready=False)
> + self.vm.shutdown()
> + self.assertEqual(iotests.image_size(test_img),
> iotests.image_size(target_img),
> + "Target size doesn't match source when granularity
> when unaligend")
> +
> +
> +if __name__ == '__main__':
> + iotests.main(supported_fmts=['raw', 'qcow2'])
> diff --git a/tests/qemu-iotests/152.out b/tests/qemu-iotests/152.out
> new file mode 100644
> index 0000000..fbc63e6
> --- /dev/null
> +++ b/tests/qemu-iotests/152.out
> @@ -0,0 +1,5 @@
> +..
> +----------------------------------------------------------------------
> +Ran 2 tests
> +
> +OK
> diff --git a/tests/qemu-iotests/group b/tests/qemu-iotests/group
> index 2952b9d..822953b 100644
> --- a/tests/qemu-iotests/group
> +++ b/tests/qemu-iotests/group
> @@ -152,3 +152,4 @@
> 148 rw auto quick
> 149 rw auto sudo
> 150 rw auto quick
> +152 rw auto quick
> --
> 1.8.3.1
>
Reviewed-by: Jeff Cody <address@hidden>
- [Qemu-devel] [PATCH for-2.6 v3 0/3] block: Fix drive-mirror with image size unaligned with granularity, Kevin Wolf, 2016/04/20
- [Qemu-devel] [PATCH for-2.6 v3 3/3] iotests: Test case for drive-mirror with unaligned image size, Kevin Wolf, 2016/04/20
- [Qemu-devel] [PATCH for-2.6 v3 2/3] iotests: Add iotests.image_size, Kevin Wolf, 2016/04/20
- [Qemu-devel] [PATCH for-2.6 v3 1/3] mirror: Don't extend the last sub-chunk, Kevin Wolf, 2016/04/20
- Re: [Qemu-devel] [PATCH for-2.6 v3 0/3] block: Fix drive-mirror with image size unaligned with granularity, Jeff Cody, 2016/04/20
- Re: [Qemu-devel] [PATCH for-2.6 v3 0/3] block: Fix drive-mirror with image size unaligned with granularity, Fam Zheng, 2016/04/20