#!/bin/bash
# SPDX-License-Identifier: GPL-3.0+
# Copyright (C) 2017 Omar Sandoval
#
# Test loop device paritition scanning. Regression test for commit e02898b42380
# ("loop: fix LO_FLAGS_PARTSCAN hang").

. tests/loop/rc

DESCRIPTION="scan loop device partitions"
QUICK=1

requires() {
	_have_program parted
}

test() {
	echo "Running ${TEST_NAME}"

	truncate -s 1G "$TMPDIR/img"
	parted "$TMPDIR/img" --script \
		mklabel msdos \
		mkpart primary 0% 50% \
		mkpart primary 50% 100%

	loop_device="$(losetup -P -f --show "$TMPDIR/img")"
	lsblk -ln "$loop_device" | wc -l

	losetup -d "$loop_device"
	rm "$TMPDIR/img"
	echo "Test complete"
}
