#!/usr/bin/env atf-sh

. $(atf_get_srcdir)/test_env.sh
init_tests \
	ptpdev_kvm \
	ptpdev_vmw \
	ptpdev_hyperv

mdevscript=$(atf_get_srcdir)/../ptpdev
export SYSFS=sys

ptpdev_kvm_body() {
	mkdir -p sys/class/ptp/ptp0
	echo "KVM virtual PTP" > sys/class/ptp/ptp0/clock_name

	MDEV=ptp0 ACTION=add atf_check \
		sh $mdevscript
	atf_check -o match:"ptp0" \
		readlink ptp_kvm

	MDEV=ptp0 ACTION=remove atf_check \
		sh $mdevscript
	atf_check -s not-exit:0 \
		readlink ptp_kvm
}

ptpdev_vmw_body() {
	mkdir -p sys/class/ptp/ptp1
	echo "ptp vmw" > sys/class/ptp/ptp1/clock_name

	MDEV=ptp1 ACTION=add atf_check \
		sh $mdevscript

	atf_check -o match:"ptp1" \
		readlink ptp_vmw

	MDEV=ptp1 ACTION=remove atf_check \
		sh $mdevscript
	atf_check -s not-exit:0 \
		readlink ptp_vmw
}

ptpdev_hyperv_body() {
	mkdir -p sys/class/ptp/ptp2
	echo hyperv > sys/class/ptp/ptp2/clock_name

	MDEV=ptp2 ACTION=add atf_check \
		sh $mdevscript

	atf_check -o match:"ptp2" \
		readlink ptp_hyperv

	MDEV=ptp2 ACTION=remove atf_check \
		sh $mdevscript
	atf_check -s not-exit:0 \
		readlink ptp_hyperv
}

