From 0a507e85ce6e6074c04ba99a275403a14ab507be Mon Sep 17 00:00:00 2001 From: Giovanni Torres Date: Fri, 13 Oct 2017 09:30:36 -0400 Subject: [PATCH] Added initial Bats tests --- test.sh | 2 ++ tests/check_options.bats | 26 ++++++++++++++++++++++++++ tests/check_prerequisites.bats | 21 +++++++++++++++++++++ 3 files changed, 49 insertions(+) create mode 100755 test.sh create mode 100644 tests/check_options.bats create mode 100644 tests/check_prerequisites.bats diff --git a/test.sh b/test.sh new file mode 100755 index 0000000..9780046 --- /dev/null +++ b/test.sh @@ -0,0 +1,2 @@ +#!/bin/bash +$(which bats) tests/ diff --git a/tests/check_options.bats b/tests/check_options.bats new file mode 100644 index 0000000..b88d9c4 --- /dev/null +++ b/tests/check_options.bats @@ -0,0 +1,26 @@ +#!/usr/bin/env bats + +@test "Check for help usage message" { + run kvm-install-vm + [ "$output" = "You must specify a name for the VM with -n. Use -h to see usage." ] +} + +@test "Install VM - batstestvm" { + run bash -c "kvm-install-vm -n batstestvm" + [ "$status" -eq 0 ] +} + +@test "Check running VM state" { + run bash -c "virsh -q domstate batstestvm" + [ "$output" = "running" ] +} + +@test "Delete VM - batstestvm" { + run bash -c "kvm-install-vm -r batstestvm" + [ "$status" -eq 0 ] +} + +@test "Check destroyed VM state" { + run bash -c "virsh -q domstate batstestvm" + [[ "$output" =~ "error: failed to get domain 'batstestvm'" ]] +} diff --git a/tests/check_prerequisites.bats b/tests/check_prerequisites.bats new file mode 100644 index 0000000..8c801e8 --- /dev/null +++ b/tests/check_prerequisites.bats @@ -0,0 +1,21 @@ +#!/usr/bin/env bats + +@test "Check that genisoimage is available" { + command -v genisoimage +} + +@test "Check that virt-install is available" { + command -v virt-install +} + +@test "Check that virt-resize is available" { + command -v virt-resize +} + +@test "Check that qemu-img is available" { + command -v qemu-img +} + +@test "Check that virsh is available" { + command -v virsh +}