#!/bin/bash

set -euo pipefail

die() { echo "$*" 1>&2 ; exit 1; }

cp -a debian/tests "$AUTOPKGTEST_TMP"
cd "$AUTOPKGTEST_TMP"

shopt -s nullglob

found_a_kernel=false
for kernel_path in /lib/modules/*
do
	found_a_kernel=true
	kernel="$(basename "$kernel_path")"
	echo "=== ${kernel} ==="

	file="$kernel-ko-files.txt"
	rm -vf "$file"

	echo "Listing found modules for kernel $kernel in $file"
	for ko_path in "$kernel_path"/updates/dkms/*
	do
		ko="$(basename "$ko_path")"
		echo "$ko" | tee -a "$file"
	done

	echo "Comparing reference-ko-files.txt against $file"
	diff -u tests/reference-ko-files.txt "$file"
done

$found_a_kernel || die "Did not find any kernel in /lib/modules/; are kernel headers installed?"
