summaryrefslogtreecommitdiffstats
path: root/tests/zfs.nix
diff options
context:
space:
mode:
authorJörg Thalheim <Mic92@users.noreply.github.com>2022-08-26 14:59:28 +0100
committerGitHub <noreply@github.com>2022-08-26 14:59:28 +0100
commitadf901d58155ca268d15351fff164d3ef38a0890 (patch)
treec6057a3d362e06742073b35d4c11db7ee9a0a820 /tests/zfs.nix
parent6b0b20da18cdffd09f04faee7128c557bcb9f054 (diff)
parent9bb4aec9640cbc30e241c267158e506278862b5e (diff)
Merge pull request #27 from nix-community/zfs
zfs, lvm raid, btrfs subvolumes support & some fixups
Diffstat (limited to 'tests/zfs.nix')
-rw-r--r--tests/zfs.nix27
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/zfs.nix b/tests/zfs.nix
new file mode 100644
index 0000000..5940c4d
--- /dev/null
+++ b/tests/zfs.nix
@@ -0,0 +1,27 @@
+{ pkgs ? (import <nixpkgs> { })
+, makeDiskoTest ? (pkgs.callPackage ./lib.nix { }).makeDiskoTest
+}:
+makeDiskoTest {
+ disko-config = import ../example/zfs.nix;
+ extraTestScript = ''
+ machine.succeed("test -b /dev/zvol/zroot/zfs_testvolume");
+
+ def assert_property(ds, property, expected_value):
+ out = machine.succeed(f"zfs get -H {property} {ds} -o value").rstrip()
+ assert (
+ out == expected_value
+ ), f"Expected {property}={expected_value} on {ds}, got: {out}"
+
+ assert_property("zroot", "compression", "lz4")
+ assert_property("zroot/zfs_fs", "compression", "lz4")
+ assert_property("zroot", "com.sun:auto-snapshot", "false")
+ assert_property("zroot/zfs_fs", "com.sun:auto-snapshot", "true")
+ assert_property("zroot/zfs_testvolume", "volsize", "10M")
+ assert_property("zroot/zfs_unmounted_fs", "mountpoint", "none")
+
+ machine.succeed("mountpoint /mnt");
+ machine.succeed("mountpoint /mnt/zfs_fs");
+ machine.succeed("mountpoint /mnt/zfs_legacy_fs");
+ machine.succeed("mountpoint /mnt/ext4onzfs");
+ '';
+}