From 9c944d92baa1900ad52bbea347ca518db025cfb9 Mon Sep 17 00:00:00 2001 From: Joel Granados Moreno Date: Wed, 3 Jun 2009 20:36:56 +0200 Subject: [PATCH] tests: ensure that we preserve the first 446 byts of a GPT pmbr * tests/t0202-gpt-pmbr.sh: Ensure that the first 446 bytes are unchanged after creating a GPT partition. --- tests/Makefile.am | 1 + tests/t0202-gpt-pmbr.sh | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100755 tests/t0202-gpt-pmbr.sh diff --git a/tests/Makefile.am b/tests/Makefile.am index de09d38..7b532ff 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -3,6 +3,7 @@ TESTS = \ t0100-print.sh \ t0200-gpt.sh \ t0201-gpt.sh \ + t0202-gpt-pmbr.sh \ t1000-mkpartfs.sh \ t1100-busy-label.sh \ t1500-small-ext2.sh \ diff --git a/tests/t0202-gpt-pmbr.sh b/tests/t0202-gpt-pmbr.sh new file mode 100755 index 0000000..2c365c2 --- /dev/null +++ b/tests/t0202-gpt-pmbr.sh @@ -0,0 +1,46 @@ +#!/bin/sh + +# Copyright (C) 2009 Free Software Foundation, 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 3 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 . + +test_description='Preserve first 446B of the Protected MBR for gpt partitions.' + +: ${srcdir=.} +. $srcdir/test-lib.sh + +dev=loop-file +test_expect_success \ + 'Create a 100k test file with random content' \ + 'dd if=/dev/urandom of=$dev bs=1c count=446 && + dd if=/dev/zero of=$dev bs=1c seek=446 count=101954 > /dev/null 2>&1' + +test_expect_success \ + 'Extract the first 446 Bytes before GPT creation' \ + 'dd if=$dev of=before bs=1c count=446 > /dev/null 2>&1' + +test_expect_success \ + 'create a GPT partition table' \ + 'parted -s $dev mklabel gpt > out 2>&1' +test_expect_success 'expect no output' 'compare out /dev/null' + +test_expect_success \ + 'Extract the first 446 Bytes after GPT creation' \ + 'dd if=$dev of=after bs=1c count=446 > /dev/null 2>&1' + +test_expect_success \ + 'Compare the before and after' \ + 'compare before after' + +test_done -- 2.11.0