#! /bin/bash

test_mklabel()
{
	ped_test "mklabel" "mklabel mac"
}

test_mkpart()
{
	ped_test "mkpart" "mklabel mac mkpart primary ext2 10 20"
}

test_mkpartfs()
{
	ped_test "mkpartfs" "mklabel mac mkpartfs primary ext2 10 20"
}

test_rm()
{
	ped_test "rm" "mklabel mac mkpart primary ext2 10 20 rm 2"
}

test_outside_boundary()
{
	ped_test_expect_fail "partition outside disk boundaries"\
		"mklabel mac \
		 mkpart primary ext2 1 $[ $TEST_DRIVE_SIZE + 1 ]"
}

test_primary_overlap()
{
	ped_test_expect_fail "primary partition overlapping"\
		"mklabel mac \
		 mkpart primary ext2 0 100\
		 mkpart primary ext2 50 150"
}

test_nonexistant_remove()
{
	ped_test_expect_fail "removal of non-existant partition"\
		"mklabel mac \
		 rm 2"
}

test_create_extended()
{
	ped_test_expect_fail "creation of extended partition"\
		"mklabel mac \
		 mkpart extended 0 100"
}

test_create_small()
{
	ped_test "create small partition"\
		"mklabel mac \
		 mkpartfs primary ext2 1 2"
}

test_move()
{
	ped_test "move partition"\
		"mklabel mac \
		 mkpartfs primary ext2 1 100 \
		 mkpartfs primary ext2 101 200 \
		 move 2 201 301"
}

main()
{
	if ! test_mklabel; then
		exit 1
	fi

	test_mkpart
	test_mkpartfs
	test_rm
	test_outside_boundary
	test_primary_overlap
	test_nonexistant_remove
	test_create_extended
	test_create_small
	test_move
}

main

