From nobody Mon May 6 11:58:35 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=listsout.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=gmail.com Return-Path: Received: from listsout.gnu.org (listsout.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1546677899529838.9343047772072; Sat, 5 Jan 2019 00:44:59 -0800 (PST) Received: from localhost ([127.0.0.1]:36870 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gfhZh-0003bg-Qa for importer@patchew.org; Sat, 05 Jan 2019 03:44:57 -0500 Received: from eggsout.gnu.org ([209.51.188.92]:39908 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gfhYm-0002qv-NE for qemu-devel@nongnu.org; Sat, 05 Jan 2019 03:44:02 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gfhYg-0002MA-W5 for qemu-devel@nongnu.org; Sat, 05 Jan 2019 03:43:59 -0500 Received: from mail-pf1-x444.google.com ([2607:f8b0:4864:20::444]:36890) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gfhYf-0002LE-IF; Sat, 05 Jan 2019 03:43:54 -0500 Received: by mail-pf1-x444.google.com with SMTP id y126so19402641pfb.4; Sat, 05 Jan 2019 00:43:53 -0800 (PST) Received: from localhost.localdomain (223-136-24-202.emome-ip.hinet.net. [223.136.24.202]) by smtp.gmail.com with ESMTPSA id w10sm71172582pgi.81.2019.01.05.00.43.47 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 05 Jan 2019 00:43:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=HWLkFqyQBPt4/b/ORV+BPfApuy4bXAt3tveSLAz6GUg=; b=IJWo21mO1DGNZaP6SvyueU0xFNtOf3pGiazfGrgIhWJZNYTj24OFhc1ngTuBIAGCiD MfFle1Jk7feykkRn+DBQEhA91j3NTR3lhgzWb6SmC6t66r5Jg+auIgG55YPQE06ZEaP0 r9c6uA8SZhubtxc0xI6fUgFk1wJborVtx9KLB2OLnzoyhEMhxEZmQpv9oFlkGQBsqUP0 TInBwtlyyPWD9MTkvrkvsLvYxGaBrWWwhf+wLMcKXiUZwjvSbPs8BqNkK1Mr71MEDRfk VnXbNDTtqOMsFu/p9XfMROjnQmjmfo8nO9iMrFCuXmdh8ZWZxfWr1vSYVy7xvp9k6VJ5 JcbQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=HWLkFqyQBPt4/b/ORV+BPfApuy4bXAt3tveSLAz6GUg=; b=ok3jASD8v/qdi49kbAjahFBgZr3eaxLPGD4T46sZwGoCbrTpM0uMw1UZs3sb7K9hMm X7Ysgewl907vKGhC66vitWpPkFYioLw74X9vNFE2aONXVccNCwcUjjXnS8R38u9ydRI6 AmxKY9cCadzpMB16zkcqtCQwqQ9abQ3KSlr2jwLKdYVm7gaO+8656AI7hcMPi6WW6EX3 F1tsJ6PG4ZzwzHrOcysEPvJqeQYYiAmn+Xxtqe4F6iPrqXLCtA/NdqzlU1Dz8ax1Ue8m 3tsea2aKGHrXwq082LKjMbjwYy873gm3W6janHLmSLBJqEtixZbervql0avUuZCLmY6L wBRQ== X-Gm-Message-State: AJcUukfS3G/T4kEgBJRbQlgag1vTnVMykE5iqcj7FJRUlDdWcONAVfEO O3a5u35d7kppiV/Ey4lZlAm13yMNr6M= X-Google-Smtp-Source: ALg8bN4VS5wtGvkkSe4/Ohd28Dw/3Mlc0cOP/O/F6X2ZAutRzxaVmv10Ll1uLvtAi0ZNYjzudvU4VA== X-Received: by 2002:a63:f201:: with SMTP id v1mr3978150pgh.232.1546677831493; Sat, 05 Jan 2019 00:43:51 -0800 (PST) From: yuchenlin To: qemu-devel@nongnu.org Date: Sat, 5 Jan 2019 16:42:43 +0800 Message-Id: <20190105084243.9524-1-npes87184@gmail.com> X-Mailer: git-send-email 2.17.1 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::444 Subject: [Qemu-devel] [PATCH] qemu-iotests: add test case for dmg X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, yuchenlin , qemu-block@nongnu.org, stefanha@redhat.com, mreitz@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Recently, some bugs in dmg file have been fixed. To prevent reading dmg is broken someday in the future, add a simple test which ensures the conversion from dmg to raw should not hang or face any I/O error. Signed-off-by: yuchenlin Reviewed-by: Stefan Hajnoczi --- tests/qemu-iotests/236 | 53 ++++++++++++++++++ tests/qemu-iotests/236.out | 4 ++ tests/qemu-iotests/check | 7 +++ tests/qemu-iotests/group | 1 + .../sample_images/simple-dmg.dmg.bz2 | Bin 0 -> 3479 bytes 5 files changed, 65 insertions(+) create mode 100755 tests/qemu-iotests/236 create mode 100644 tests/qemu-iotests/236.out create mode 100644 tests/qemu-iotests/sample_images/simple-dmg.dmg.bz2 diff --git a/tests/qemu-iotests/236 b/tests/qemu-iotests/236 new file mode 100755 index 0000000000..6f085d573d --- /dev/null +++ b/tests/qemu-iotests/236 @@ -0,0 +1,53 @@ +#!/bin/bash +# +# Test case for dmg +# +# Copyright (C) 2019 yuchenlin +# +# 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 . +# + +# creator +owner=3Dnpes87184@gmail.com + +seq=3D`basename $0` +echo "QA output created by $seq" + +status=3D1 # failure is the default! + +_cleanup() +{ + rm -f "$TEST_IMG.raw" + _cleanup_test_img +} +trap "_cleanup; exit \$status" 0 1 2 3 15 + +# get standard environment, filters and checks +. ./common.rc + +_supported_fmt dmg +_supported_proto file +_supported_os Linux + +echo +echo "=3D=3D Testing conversion to raw should success =3D=3D" +_use_sample_img simple-dmg.dmg.bz2 +if ! $QEMU_IMG convert -f $IMGFMT -O raw "$TEST_IMG" "$TEST_IMG.raw" ; then + exit 1 +fi + +# success, all done +echo "*** done" +rm -f $seq.full +status=3D0 diff --git a/tests/qemu-iotests/236.out b/tests/qemu-iotests/236.out new file mode 100644 index 0000000000..a92fc657dd --- /dev/null +++ b/tests/qemu-iotests/236.out @@ -0,0 +1,4 @@ +QA output created by 236 + +=3D=3D Testing conversion to raw should success =3D=3D +*** done diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check index 89ed275988..895e1e3dcb 100755 --- a/tests/qemu-iotests/check +++ b/tests/qemu-iotests/check @@ -237,6 +237,7 @@ image format options -vhdx test vhdx -vmdk test vmdk -luks test luks + -dmg test dmg =20 image protocol options -file test file (default) @@ -304,6 +305,12 @@ testlist options xpand=3Dfalse ;; =20 + -dmg) + IMGFMT=3Ddmg + IMGFMT_GENERIC=3Dfalse + xpand=3Dfalse + ;; + -qed) IMGFMT=3Dqed xpand=3Dfalse diff --git a/tests/qemu-iotests/group b/tests/qemu-iotests/group index 61a6d98ebd..623ede30f5 100644 --- a/tests/qemu-iotests/group +++ b/tests/qemu-iotests/group @@ -233,3 +233,4 @@ 233 auto quick 234 auto quick migration 235 auto quick +236 rw auto quick diff --git a/tests/qemu-iotests/sample_images/simple-dmg.dmg.bz2 b/tests/qe= mu-iotests/sample_images/simple-dmg.dmg.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..05e719d03d48d6df4f0e995dd8b= ae1ce54c9f5f0 GIT binary patch literal 3479 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