1*65374c1aSVladimir Sementsov-Ogievskiy#!/usr/bin/env python 2*65374c1aSVladimir Sementsov-Ogievskiy# 3*65374c1aSVladimir Sementsov-Ogievskiy# Tests for NBD BLOCK_STATUS extension 4*65374c1aSVladimir Sementsov-Ogievskiy# 5*65374c1aSVladimir Sementsov-Ogievskiy# Copyright (c) 2018 Virtuozzo International GmbH 6*65374c1aSVladimir Sementsov-Ogievskiy# 7*65374c1aSVladimir Sementsov-Ogievskiy# This program is free software; you can redistribute it and/or modify 8*65374c1aSVladimir Sementsov-Ogievskiy# it under the terms of the GNU General Public License as published by 9*65374c1aSVladimir Sementsov-Ogievskiy# the Free Software Foundation; either version 2 of the License, or 10*65374c1aSVladimir Sementsov-Ogievskiy# (at your option) any later version. 11*65374c1aSVladimir Sementsov-Ogievskiy# 12*65374c1aSVladimir Sementsov-Ogievskiy# This program is distributed in the hope that it will be useful, 13*65374c1aSVladimir Sementsov-Ogievskiy# but WITHOUT ANY WARRANTY; without even the implied warranty of 14*65374c1aSVladimir Sementsov-Ogievskiy# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15*65374c1aSVladimir Sementsov-Ogievskiy# GNU General Public License for more details. 16*65374c1aSVladimir Sementsov-Ogievskiy# 17*65374c1aSVladimir Sementsov-Ogievskiy# You should have received a copy of the GNU General Public License 18*65374c1aSVladimir Sementsov-Ogievskiy# along with this program. If not, see <http://www.gnu.org/licenses/>. 19*65374c1aSVladimir Sementsov-Ogievskiy# 20*65374c1aSVladimir Sementsov-Ogievskiy 21*65374c1aSVladimir Sementsov-Ogievskiyimport iotests 22*65374c1aSVladimir Sementsov-Ogievskiyfrom iotests import qemu_img_create, qemu_io, qemu_img_verbose, qemu_nbd, \ 23*65374c1aSVladimir Sementsov-Ogievskiy file_path 24*65374c1aSVladimir Sementsov-Ogievskiy 25*65374c1aSVladimir Sementsov-Ogievskiyiotests.verify_image_format(supported_fmts=['qcow2']) 26*65374c1aSVladimir Sementsov-Ogievskiy 27*65374c1aSVladimir Sementsov-Ogievskiydisk, nbd_sock = file_path('disk', 'nbd-sock') 28*65374c1aSVladimir Sementsov-Ogievskiynbd_uri = 'nbd+unix:///exp?socket=' + nbd_sock 29*65374c1aSVladimir Sementsov-Ogievskiy 30*65374c1aSVladimir Sementsov-Ogievskiyqemu_img_create('-f', iotests.imgfmt, disk, '1M') 31*65374c1aSVladimir Sementsov-Ogievskiyqemu_io('-f', iotests.imgfmt, '-c', 'write 0 512K', disk) 32*65374c1aSVladimir Sementsov-Ogievskiy 33*65374c1aSVladimir Sementsov-Ogievskiyqemu_nbd('-k', nbd_sock, '-x', 'exp', '-f', iotests.imgfmt, disk) 34*65374c1aSVladimir Sementsov-Ogievskiyqemu_img_verbose('map', '-f', 'raw', '--output=json', nbd_uri) 35