sysdeploy/tests/drive.sh

56 lines
1.5 KiB
Bash
Executable File

#!/bin/bash
function test_partitioning()
{
local img
local test_version=20210228
local min_version=20210101
local max_version=20211231
img=$(mktemp -u)
dd if=/dev/zero of="$img" bs=1M seek=16384 count=0 2> /dev/null
setup_drive "$img"
output=$(parted -ms "$img" -- print)
sed -i "s|T_E_M_P|$img|g;" tests/data/parted.dat
assertEquals "setup_drive" "$(cat tests/data/parted.dat)" "$output"
rename_partition "$img" 2 "root_$test_version"
output=$(parted -ms "$img" -- print)
sed -i "s|T_E_M_P|$img|g;" tests/data/rename.dat
assertEquals "rename_partition" "$(cat tests/data/rename.dat)" "$output"
version_from_partnum "$img" 2
assertEquals "version_from_partnum 2" "$test_version" "$version"
find_unused "$img"
assertEquals "find_unused" 3 "$unused"
version_from_partnum "$img" 3
assertEquals "version_from_partnum unused" "" "$version"
rename_partition "$img" 3 "root_$min_version"
find_oldest "$img"
assertEquals "find_oldest" 3 "$oldest"
version_from_partnum "$img" 3
assertEquals "version_from partnum 3" "$min_version" "$version"
rename_partition "$img" 4 "root_$max_version"
find_newest "$img"
assertEquals "find_newest" 4 "$newest"
version_from_partnum "$img" 4
assertEquals "version_from_partnum 4" "$max_version" "$version"
partition_list "$img"
assertEquals "partition_list" "1 2 3 4 5" "$partitions"
rm -f "$img"
}
function oneTimeSetUp()
{
. drive.inc
}
# Load shUnit2.
. /usr/bin/shunit2