disko/tests/zfs.nix

28 lines
1.0 KiB
Nix
Raw Normal View History

{ pkgs ? (import <nixpkgs> { })
, makeDiskoTest ? (pkgs.callPackage ./lib.nix { }).makeDiskoTest
2022-08-25 16:08:26 +03:00
}:
2022-08-26 00:12:49 +03:00
makeDiskoTest {
2022-08-25 16:08:26 +03:00
disko-config = import ../example/zfs.nix;
2022-08-26 00:12:49 +03:00
extraTestScript = ''
2022-08-25 16:08:26 +03:00
machine.succeed("test -b /dev/zvol/zroot/zfs_testvolume");
2022-08-26 10:07:24 +03:00
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")
2022-08-26 10:07:24 +03:00
machine.succeed("mountpoint /mnt");
2022-08-26 10:07:24 +03:00
machine.succeed("mountpoint /mnt/zfs_fs");
machine.succeed("mountpoint /mnt/zfs_legacy_fs");
machine.succeed("mountpoint /mnt/ext4onzfs");
2022-08-25 16:08:26 +03:00
'';
}