summaryrefslogtreecommitdiffstats
path: root/tests/expected/lib
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--tests/expected/lib/procfs-one-process14
-rw-r--r--tests/expected/lib/procfs-stat-nth6
-rw-r--r--tests/expected/lib/procfs-stat-nth.err2
-rw-r--r--tests/expected/libfdisk/gpt-all-defaults24
-rw-r--r--tests/expected/libfdisk/gpt-all-defaults-with-typo24
-rw-r--r--tests/expected/libfdisk/gpt-getattr2
-rw-r--r--tests/expected/libfdisk/gpt-setattr2
-rw-r--r--tests/expected/libfdisk/mkpart0
-rw-r--r--tests/expected/libfdisk/mkpart-full0
-rw-r--r--tests/expected/libfdisk/mkpart-full-gpt30
-rw-r--r--tests/expected/libfdisk/mkpart-full-gpt-err-overlap12
-rw-r--r--tests/expected/libfdisk/mkpart-full-gpt-err-overlap.err2
-rw-r--r--tests/expected/libfdisk/mkpart-full-gpt-nopartno30
-rw-r--r--tests/expected/libfdisk/mkpart-full-gpt-partno-gap30
-rw-r--r--tests/expected/libfdisk/mkpart-full-gpt-space-gap24
-rw-r--r--tests/expected/libfdisk/mkpart-full-mbr-err-logical17
-rw-r--r--tests/expected/libfdisk/mkpart-full-mbr-err-logical.err1
-rw-r--r--tests/expected/libfdisk/mkpart-full-mbr-err-nospace10
-rw-r--r--tests/expected/libfdisk/mkpart-full-mbr-err-nospace.err2
-rw-r--r--tests/expected/libfdisk/mkpart-full-mbr-err-primary10
-rw-r--r--tests/expected/libfdisk/mkpart-full-mbr-err-primary.err2
-rw-r--r--tests/expected/libfdisk/mkpart-full-mbr-logical33
-rw-r--r--tests/expected/libfdisk/mkpart-full-mbr-nopartno33
-rw-r--r--tests/expected/libfdisk/mkpart-full-mbr-partno-gap26
-rw-r--r--tests/expected/libfdisk/mkpart-full-mbr-primary21
-rw-r--r--tests/expected/libfdisk/mkpart-full-mbr-primary-nopartno21
-rw-r--r--tests/expected/libfdisk/mkpart-full-mbr-space-gap18
-rw-r--r--tests/expected/libfdisk/mkpart-gpt23
-rw-r--r--tests/expected/libfdisk/mkpart-mbr17
-rw-r--r--tests/expected/libfdisk/mkpart-mbr-logic26
-rw-r--r--tests/expected/libfdisk/mkpart-mbr-nopartno26
-rw-r--r--tests/expected/libmount/context5
-rw-r--r--tests/expected/libmount/context-X-comment1
-rw-r--r--tests/expected/libmount/context-mount-by-devname1
-rw-r--r--tests/expected/libmount/context-mount-by-label1
-rw-r--r--tests/expected/libmount/context-mount-by-uuid2
-rw-r--r--tests/expected/libmount/context-mount-flags8
-rw-r--r--tests/expected/libmount/context-mount-loopdev2
-rw-r--r--tests/expected/libmount/context-py5
-rw-r--r--tests/expected/libmount/context-py-mount-by-devname1
-rw-r--r--tests/expected/libmount/context-py-mount-by-label1
-rw-r--r--tests/expected/libmount/context-py-mount-by-uuid2
-rw-r--r--tests/expected/libmount/context-py-mount-flags5
-rw-r--r--tests/expected/libmount/context-py-mount-loopdev2
-rw-r--r--tests/expected/libmount/context-py-umount-by-devname1
-rw-r--r--tests/expected/libmount/context-py-umount-by-mountpoint1
-rw-r--r--tests/expected/libmount/context-py-x-mount.mkdir1
-rw-r--r--tests/expected/libmount/context-umount-by-devname1
-rw-r--r--tests/expected/libmount/context-umount-by-mountpoint1
-rw-r--r--tests/expected/libmount/context-utab4
-rw-r--r--tests/expected/libmount/context-utab-mount-by-devname1
-rw-r--r--tests/expected/libmount/context-utab-mount-uhelper1
-rw-r--r--tests/expected/libmount/context-utab-mount-uhelper-subvol1
-rw-r--r--tests/expected/libmount/context-utab-py4
-rw-r--r--tests/expected/libmount/context-utab-py-mount-by-devname1
-rw-r--r--tests/expected/libmount/context-utab-py-mount-uhelper1
-rw-r--r--tests/expected/libmount/context-utab-py-mount-uhelper-subvol1
-rw-r--r--tests/expected/libmount/context-utab-py-umount1
-rw-r--r--tests/expected/libmount/context-utab-py-umount-by-devname1
-rw-r--r--tests/expected/libmount/context-utab-py-umount-subvol1
-rw-r--r--tests/expected/libmount/context-utab-umount1
-rw-r--r--tests/expected/libmount/context-utab-umount-by-devname1
-rw-r--r--tests/expected/libmount/context-utab-umount-subvol1
-rw-r--r--tests/expected/libmount/context-x-permanent1
-rw-r--r--tests/expected/libmount/debug-set-from-code1
-rw-r--r--tests/expected/libmount/debug-set-from-env-int1
-rw-r--r--tests/expected/libmount/debug-set-from-env-str1
-rw-r--r--tests/expected/libmount/lock1
-rw-r--r--tests/expected/libmount/loop1
-rw-r--r--tests/expected/libmount/loop-conflict2
-rw-r--r--tests/expected/libmount/loop-dev-loop1
-rw-r--r--tests/expected/libmount/loop-explicit-rw2
-rw-r--r--tests/expected/libmount/loop-file1
-rw-r--r--tests/expected/libmount/loop-file-o-loop1
-rw-r--r--tests/expected/libmount/loop-o-loop-val1
-rw-r--r--tests/expected/libmount/loop-o-loop-val-conflict2
-rw-r--r--tests/expected/libmount/loop-o-loop-val-initialized2
-rw-r--r--tests/expected/libmount/loop-overlay7
-rw-r--r--tests/expected/libmount/loop-reuse1
-rw-r--r--tests/expected/libmount/optstr-append1
-rw-r--r--tests/expected/libmount/optstr-append-empty-value1
-rw-r--r--tests/expected/libmount/optstr-append-value1
-rw-r--r--tests/expected/libmount/optstr-apply-linux2
-rw-r--r--tests/expected/libmount/optstr-apply-user2
-rw-r--r--tests/expected/libmount/optstr-apply-user-Xx2
-rw-r--r--tests/expected/libmount/optstr-apply-user-large-X2
-rw-r--r--tests/expected/libmount/optstr-apply-user-small-x2
-rw-r--r--tests/expected/libmount/optstr-deduplicate1
-rw-r--r--tests/expected/libmount/optstr-deduplicate-empty1
-rw-r--r--tests/expected/libmount/optstr-flags2
-rw-r--r--tests/expected/libmount/optstr-get1
-rw-r--r--tests/expected/libmount/optstr-get-value1
-rw-r--r--tests/expected/libmount/optstr-match13
-rw-r--r--tests/expected/libmount/optstr-prepend1
-rw-r--r--tests/expected/libmount/optstr-prepend-empty-value1
-rw-r--r--tests/expected/libmount/optstr-prepend-value1
-rw-r--r--tests/expected/libmount/optstr-remove1
-rw-r--r--tests/expected/libmount/optstr-remove-empty-value1
-rw-r--r--tests/expected/libmount/optstr-remove-quoted1
-rw-r--r--tests/expected/libmount/optstr-remove-value1
-rw-r--r--tests/expected/libmount/optstr-set-empty1
-rw-r--r--tests/expected/libmount/optstr-set-large1
-rw-r--r--tests/expected/libmount/optstr-set-new1
-rw-r--r--tests/expected/libmount/optstr-set-new-empty1
-rw-r--r--tests/expected/libmount/optstr-set-new-end1
-rw-r--r--tests/expected/libmount/optstr-set-new-end-empty1
-rw-r--r--tests/expected/libmount/optstr-set-remove1
-rw-r--r--tests/expected/libmount/optstr-set-small1
-rw-r--r--tests/expected/libmount/optstr-split3
-rw-r--r--tests/expected/libmount/tabdiff-mount2
-rw-r--r--tests/expected/libmount/tabdiff-move2
-rw-r--r--tests/expected/libmount/tabdiff-remount3
-rw-r--r--tests/expected/libmount/tabdiff-umount2
-rw-r--r--tests/expected/libmount/tabfiles-copy18
-rw-r--r--tests/expected/libmount/tabfiles-find-fs1
-rw-r--r--tests/expected/libmount/tabfiles-find-pair6
-rw-r--r--tests/expected/libmount/tabfiles-find-source8
-rw-r--r--tests/expected/libmount/tabfiles-find-target6
-rw-r--r--tests/expected/libmount/tabfiles-find-target25
-rw-r--r--tests/expected/libmount/tabfiles-find-target35
-rw-r--r--tests/expected/libmount/tabfiles-parse-fstab65
-rw-r--r--tests/expected/libmount/tabfiles-parse-fstab-broken63
-rw-r--r--tests/expected/libmount/tabfiles-parse-fstab-full83
-rw-r--r--tests/expected/libmount/tabfiles-parse-mountinfo364
-rw-r--r--tests/expected/libmount/tabfiles-parse-mountinfo-nosrc78
-rw-r--r--tests/expected/libmount/tabfiles-parse-mtab75
-rw-r--r--tests/expected/libmount/tabfiles-parse-swaps22
-rw-r--r--tests/expected/libmount/tabfiles-py-copy18
-rw-r--r--tests/expected/libmount/tabfiles-py-find-pair6
-rw-r--r--tests/expected/libmount/tabfiles-py-find-source8
-rw-r--r--tests/expected/libmount/tabfiles-py-find-target6
-rw-r--r--tests/expected/libmount/tabfiles-py-find-target25
-rw-r--r--tests/expected/libmount/tabfiles-py-find-target35
-rw-r--r--tests/expected/libmount/tabfiles-py-parse-fstab65
-rw-r--r--tests/expected/libmount/tabfiles-py-parse-fstab-broken63
-rw-r--r--tests/expected/libmount/tabfiles-py-parse-fstab-full83
-rw-r--r--tests/expected/libmount/tabfiles-py-parse-mountinfo364
-rw-r--r--tests/expected/libmount/tabfiles-py-parse-mtab75
-rw-r--r--tests/expected/libmount/tabfiles-tags-fstab-dev5
-rw-r--r--tests/expected/libmount/tabfiles-tags-fstab-dev2label5
-rw-r--r--tests/expected/libmount/tabfiles-tags-fstab-label5
-rw-r--r--tests/expected/libmount/tabfiles-tags-fstab-label2dev5
-rw-r--r--tests/expected/libmount/tabfiles-tags-fstab-label2uuid5
-rw-r--r--tests/expected/libmount/tabfiles-tags-fstab-uuid5
-rw-r--r--tests/expected/libmount/tabfiles-tags-py-fstab-dev5
-rw-r--r--tests/expected/libmount/tabfiles-tags-py-fstab-dev2label5
-rw-r--r--tests/expected/libmount/tabfiles-tags-py-fstab-label5
-rw-r--r--tests/expected/libmount/tabfiles-tags-py-fstab-label2dev5
-rw-r--r--tests/expected/libmount/tabfiles-tags-py-fstab-label2uuid5
-rw-r--r--tests/expected/libmount/tabfiles-tags-py-fstab-uuid5
-rw-r--r--tests/expected/libmount/update-fstab-add3
-rw-r--r--tests/expected/libmount/update-fstab-replace24
-rw-r--r--tests/expected/libmount/update-mtab-mount5
-rw-r--r--tests/expected/libmount/update-mtab-move5
-rw-r--r--tests/expected/libmount/update-mtab-remount5
-rw-r--r--tests/expected/libmount/update-mtab-umount2
-rw-r--r--tests/expected/libmount/update-py-fstab-replace24
-rw-r--r--tests/expected/libmount/update-utab-mount3
-rw-r--r--tests/expected/libmount/update-utab-move3
-rw-r--r--tests/expected/libmount/update-utab-remount3
-rw-r--r--tests/expected/libmount/update-utab-umount1
-rw-r--r--tests/expected/libmount/utils-ends-with1
-rw-r--r--tests/expected/libmount/utils-kernel-cmdline5
-rw-r--r--tests/expected/libmount/utils-match-fstype1
-rw-r--r--tests/expected/libmount/utils-match-fstype-neg1
-rw-r--r--tests/expected/libmount/utils-match-fstype-neg21
-rw-r--r--tests/expected/libmount/utils-match-options1
-rw-r--r--tests/expected/libmount/utils-match-options-list1
-rw-r--r--tests/expected/libmount/utils-match-options-neg1
-rw-r--r--tests/expected/libmount/utils-match-options-neg-list1
-rw-r--r--tests/expected/libmount/utils-match-options-neg-list21
-rw-r--r--tests/expected/libmount/utils-mountpoint1
-rw-r--r--tests/expected/libmount/utils-mountpoint-root1
-rw-r--r--tests/expected/libmount/utils-mountpoint-subdir1
-rw-r--r--tests/expected/libmount/utils-starts-with1
-rw-r--r--tests/expected/libsmartcols/fromfile1
-rw-r--r--tests/expected/libsmartcols/fromfile-column-separator11
-rw-r--r--tests/expected/libsmartcols/fromfile-export10
-rw-r--r--tests/expected/libsmartcols/fromfile-hidden11
-rw-r--r--tests/expected/libsmartcols/fromfile-noextremes12
-rw-r--r--tests/expected/libsmartcols/fromfile-padding-default11
-rw-r--r--tests/expected/libsmartcols/fromfile-padding-maxout11
-rw-r--r--tests/expected/libsmartcols/fromfile-padding-minout11
-rw-r--r--tests/expected/libsmartcols/fromfile-raw11
-rw-r--r--tests/expected/libsmartcols/fromfile-right11
-rw-r--r--tests/expected/libsmartcols/fromfile-right-maxout11
-rw-r--r--tests/expected/libsmartcols/fromfile-strictwidth11
-rw-r--r--tests/expected/libsmartcols/fromfile-tree11
-rw-r--r--tests/expected/libsmartcols/fromfile-tree-end11
-rw-r--r--tests/expected/libsmartcols/fromfile-tree-json70
-rw-r--r--tests/expected/libsmartcols/fromfile-tree-middle11
-rw-r--r--tests/expected/libsmartcols/fromfile-trunc11
-rw-r--r--tests/expected/libsmartcols/fromfile-wrap17
-rw-r--r--tests/expected/libsmartcols/fromfile-wrap-tree18
-rw-r--r--tests/expected/libsmartcols/fromfile-wrapnl19
-rw-r--r--tests/expected/libsmartcols/fromfile-wrapnl-tree19
-rw-r--r--tests/expected/libsmartcols/title16
197 files changed, 2612 insertions, 0 deletions
diff --git a/tests/expected/lib/procfs-one-process b/tests/expected/lib/procfs-one-process
new file mode 100644
index 0000000..db953c0
--- /dev/null
+++ b/tests/expected/lib/procfs-one-process
@@ -0,0 +1,14 @@
+1
+ UID: [redacted]
+ CMDLINE: './test'
+ COMM: 'test'
+2
+ UID: [redacted]
+ CMDLINE: './foo
+bar'
+ COMM: 'foo
+bar'
+3
+ UID: [redacted]
+ CMDLINE: './foo )bar'
+ COMM: 'foo )bar'
diff --git a/tests/expected/lib/procfs-stat-nth b/tests/expected/lib/procfs-stat-nth
new file mode 100644
index 0000000..7ed534a
--- /dev/null
+++ b/tests/expected/lib/procfs-stat-nth
@@ -0,0 +1,6 @@
+1: 1th 373850
+1: 4th 373752
+2: 1th 1583
+2: 4th 1165
+3: 1th 4102
+3: 4th 1165
diff --git a/tests/expected/lib/procfs-stat-nth.err b/tests/expected/lib/procfs-stat-nth.err
new file mode 100644
index 0000000..aff7b24
--- /dev/null
+++ b/tests/expected/lib/procfs-stat-nth.err
@@ -0,0 +1,2 @@
+test_procfs: read 2th number failed: Invalid argument
+test_procfs: read 3th number failed: Invalid argument
diff --git a/tests/expected/libfdisk/gpt-all-defaults b/tests/expected/libfdisk/gpt-all-defaults
new file mode 100644
index 0000000..218338a
--- /dev/null
+++ b/tests/expected/libfdisk/gpt-all-defaults
@@ -0,0 +1,24 @@
+Checking that no-one is using this disk right now ... OK
+
+Disk <removed>: 10 MiB, 10485760 bytes, 20480 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
+
+>>> Script header accepted.
+>>> Script header accepted.
+>>> Created a new disklabel.
+<removed>1: Created a new partition <removed>.
+<removed>2: Created a new partition <removed>.
+<removed>3: Done.
+
+New situation:
+Disklabel type: gpt
+Disk identifier: <removed>
+
+Device Start End Sectors Size Type
+<removed>1 2048 12287 10240 5M Linux filesystem
+<removed>2 12288 18431 6144 3M Linux filesystem
+
+The partition table has been altered.
+Syncing disks.
diff --git a/tests/expected/libfdisk/gpt-all-defaults-with-typo b/tests/expected/libfdisk/gpt-all-defaults-with-typo
new file mode 100644
index 0000000..218338a
--- /dev/null
+++ b/tests/expected/libfdisk/gpt-all-defaults-with-typo
@@ -0,0 +1,24 @@
+Checking that no-one is using this disk right now ... OK
+
+Disk <removed>: 10 MiB, 10485760 bytes, 20480 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
+
+>>> Script header accepted.
+>>> Script header accepted.
+>>> Created a new disklabel.
+<removed>1: Created a new partition <removed>.
+<removed>2: Created a new partition <removed>.
+<removed>3: Done.
+
+New situation:
+Disklabel type: gpt
+Disk identifier: <removed>
+
+Device Start End Sectors Size Type
+<removed>1 2048 12287 10240 5M Linux filesystem
+<removed>2 12288 18431 6144 3M Linux filesystem
+
+The partition table has been altered.
+Syncing disks.
diff --git a/tests/expected/libfdisk/gpt-getattr b/tests/expected/libfdisk/gpt-getattr
new file mode 100644
index 0000000..559a9ae
--- /dev/null
+++ b/tests/expected/libfdisk/gpt-getattr
@@ -0,0 +1,2 @@
+1: 0x0001000000000001
+2: 0x4030000000000000
diff --git a/tests/expected/libfdisk/gpt-setattr b/tests/expected/libfdisk/gpt-setattr
new file mode 100644
index 0000000..41af260
--- /dev/null
+++ b/tests/expected/libfdisk/gpt-setattr
@@ -0,0 +1,2 @@
+GUID:56,57,58,59,60,61,62,63
+LegacyBIOSBootable
diff --git a/tests/expected/libfdisk/mkpart b/tests/expected/libfdisk/mkpart
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart
diff --git a/tests/expected/libfdisk/mkpart-full b/tests/expected/libfdisk/mkpart-full
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full
diff --git a/tests/expected/libfdisk/mkpart-full-gpt b/tests/expected/libfdisk/mkpart-full-gpt
new file mode 100644
index 0000000..8e78a27
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-gpt
@@ -0,0 +1,30 @@
+Created a new disklabel.
+Requested partition: <partno=0,start=2048,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=1,start=4096,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=2,start=6144,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=3,start=8192,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=4,start=10240,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=5,start=12288,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=6,start=14336,size=2048>
+Created a new partition <removed>.
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
+Disklabel type: gpt
+Disk identifier: <removed>
+
+Device Start End Sectors Size Type
+<removed>1 2048 4095 2048 1M Linux filesystem
+<removed>2 4096 6143 2048 1M Linux filesystem
+<removed>3 6144 8191 2048 1M Linux filesystem
+<removed>4 8192 10239 2048 1M Linux filesystem
+<removed>5 10240 12287 2048 1M Linux filesystem
+<removed>6 12288 14335 2048 1M Linux filesystem
+<removed>7 14336 16383 2048 1M Linux filesystem
diff --git a/tests/expected/libfdisk/mkpart-full-gpt-err-overlap b/tests/expected/libfdisk/mkpart-full-gpt-err-overlap
new file mode 100644
index 0000000..531606e
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-gpt-err-overlap
@@ -0,0 +1,12 @@
+Created a new disklabel.
+Requested partition: <partno=0,start=2048,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=1,start=4096,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=2,start=6144,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=3,start=5000,size=2048>
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
diff --git a/tests/expected/libfdisk/mkpart-full-gpt-err-overlap.err b/tests/expected/libfdisk/mkpart-full-gpt-err-overlap.err
new file mode 100644
index 0000000..bd62a9b
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-gpt-err-overlap.err
@@ -0,0 +1,2 @@
+Sector 5000 already used.
+sample-fdisk-mkpart-fullspec: failed to add #4 partition
diff --git a/tests/expected/libfdisk/mkpart-full-gpt-nopartno b/tests/expected/libfdisk/mkpart-full-gpt-nopartno
new file mode 100644
index 0000000..c038c37
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-gpt-nopartno
@@ -0,0 +1,30 @@
+Created a new disklabel.
+Requested partition: <partno=<default>,start=2048,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=<default>,start=4096,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=<default>,start=6144,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=<default>,start=8192,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=<default>,start=10240,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=<default>,start=12288,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=<default>,start=14336,size=2048>
+Created a new partition <removed>.
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
+Disklabel type: gpt
+Disk identifier: <removed>
+
+Device Start End Sectors Size Type
+<removed>1 2048 4095 2048 1M Linux filesystem
+<removed>2 4096 6143 2048 1M Linux filesystem
+<removed>3 6144 8191 2048 1M Linux filesystem
+<removed>4 8192 10239 2048 1M Linux filesystem
+<removed>5 10240 12287 2048 1M Linux filesystem
+<removed>6 12288 14335 2048 1M Linux filesystem
+<removed>7 14336 16383 2048 1M Linux filesystem
diff --git a/tests/expected/libfdisk/mkpart-full-gpt-partno-gap b/tests/expected/libfdisk/mkpart-full-gpt-partno-gap
new file mode 100644
index 0000000..a636e28
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-gpt-partno-gap
@@ -0,0 +1,30 @@
+Created a new disklabel.
+Requested partition: <partno=0,start=2048,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=1,start=4096,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=3,start=6144,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=4,start=8192,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=6,start=10240,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=7,start=12288,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=8,start=14336,size=2048>
+Created a new partition <removed>.
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
+Disklabel type: gpt
+Disk identifier: <removed>
+
+Device Start End Sectors Size Type
+<removed>1 2048 4095 2048 1M Linux filesystem
+<removed>2 4096 6143 2048 1M Linux filesystem
+<removed>4 6144 8191 2048 1M Linux filesystem
+<removed>5 8192 10239 2048 1M Linux filesystem
+<removed>7 10240 12287 2048 1M Linux filesystem
+<removed>8 12288 14335 2048 1M Linux filesystem
+<removed>9 14336 16383 2048 1M Linux filesystem
diff --git a/tests/expected/libfdisk/mkpart-full-gpt-space-gap b/tests/expected/libfdisk/mkpart-full-gpt-space-gap
new file mode 100644
index 0000000..5dcdb77
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-gpt-space-gap
@@ -0,0 +1,24 @@
+Created a new disklabel.
+Requested partition: <partno=0,start=2048,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=1,start=6144,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=2,start=8192,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=3,start=12288,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=4,start=14336,size=2048>
+Created a new partition <removed>.
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
+Disklabel type: gpt
+Disk identifier: <removed>
+
+Device Start End Sectors Size Type
+<removed>1 2048 4095 2048 1M Linux filesystem
+<removed>2 6144 8191 2048 1M Linux filesystem
+<removed>3 8192 10239 2048 1M Linux filesystem
+<removed>4 12288 14335 2048 1M Linux filesystem
+<removed>5 14336 16383 2048 1M Linux filesystem
diff --git a/tests/expected/libfdisk/mkpart-full-mbr-err-logical b/tests/expected/libfdisk/mkpart-full-mbr-err-logical
new file mode 100644
index 0000000..f8e9b7d
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-mbr-err-logical
@@ -0,0 +1,17 @@
+Created a new disklabel.
+Requested partition: <partno=0,start=2048,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=1,start=4096,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=2,start=6144,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=3,start=8192,size=22528>
+Created a new partition <removed>.
+Requested partition: <partno=4,start=10240,size=2048>
+Adding logical partition 5
+Created a new partition <removed>.
+Requested partition: <partno=5,start=4096,size=2048>
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
diff --git a/tests/expected/libfdisk/mkpart-full-mbr-err-logical.err b/tests/expected/libfdisk/mkpart-full-mbr-err-logical.err
new file mode 100644
index 0000000..014b316
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-mbr-err-logical.err
@@ -0,0 +1 @@
+sample-fdisk-mkpart-fullspec: failed to add #6 partition
diff --git a/tests/expected/libfdisk/mkpart-full-mbr-err-nospace b/tests/expected/libfdisk/mkpart-full-mbr-err-nospace
new file mode 100644
index 0000000..e8aff29
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-mbr-err-nospace
@@ -0,0 +1,10 @@
+Created a new disklabel.
+Requested partition: <partno=0,start=2048,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=1,start=4096,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=2,start=4096,size=2048>
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
diff --git a/tests/expected/libfdisk/mkpart-full-mbr-err-nospace.err b/tests/expected/libfdisk/mkpart-full-mbr-err-nospace.err
new file mode 100644
index 0000000..7e44232
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-mbr-err-nospace.err
@@ -0,0 +1,2 @@
+Start sector 4096 out of range.
+sample-fdisk-mkpart-fullspec: failed to add #3 partition
diff --git a/tests/expected/libfdisk/mkpart-full-mbr-err-primary b/tests/expected/libfdisk/mkpart-full-mbr-err-primary
new file mode 100644
index 0000000..3200751
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-mbr-err-primary
@@ -0,0 +1,10 @@
+Created a new disklabel.
+Requested partition: <partno=0,start=2048,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=1,start=4096,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=6,start=6144,size=2048>
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
diff --git a/tests/expected/libfdisk/mkpart-full-mbr-err-primary.err b/tests/expected/libfdisk/mkpart-full-mbr-err-primary.err
new file mode 100644
index 0000000..59e42e1
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-mbr-err-primary.err
@@ -0,0 +1,2 @@
+Extended partition does not exists. Failed to add logical partition.
+sample-fdisk-mkpart-fullspec: failed to add #7 partition
diff --git a/tests/expected/libfdisk/mkpart-full-mbr-logical b/tests/expected/libfdisk/mkpart-full-mbr-logical
new file mode 100644
index 0000000..d3d27cb
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-mbr-logical
@@ -0,0 +1,33 @@
+Created a new disklabel.
+Requested partition: <partno=0,start=2048,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=1,start=4096,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=2,start=6144,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=3,start=8192,size=22528>
+Created a new partition <removed>.
+Requested partition: <partno=4,start=10240,size=2048>
+Adding logical partition 5
+Created a new partition <removed>.
+Requested partition: <partno=5,start=14336,size=2048>
+Adding logical partition 6
+Created a new partition <removed>.
+Requested partition: <partno=6,start=18432,size=12288>
+Adding logical partition 7
+Created a new partition <removed>.
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
+Disklabel type: dos
+Disk identifier: <removed>
+
+Device Boot Start End Sectors Size Id Type
+<removed>1 2048 4095 2048 1M 83 Linux
+<removed>2 4096 6143 2048 1M 83 Linux
+<removed>3 6144 8191 2048 1M 83 Linux
+<removed>4 8192 30719 22528 11M 5 Extended
+<removed>5 10240 12287 2048 1M 83 Linux
+<removed>6 14336 16383 2048 1M 83 Linux
+<removed>7 18432 30719 12288 6M 83 Linux
diff --git a/tests/expected/libfdisk/mkpart-full-mbr-nopartno b/tests/expected/libfdisk/mkpart-full-mbr-nopartno
new file mode 100644
index 0000000..51aa5a7
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-mbr-nopartno
@@ -0,0 +1,33 @@
+Created a new disklabel.
+Requested partition: <partno=<default>,start=2048,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=<default>,start=4096,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=<default>,start=6144,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=<default>,start=8192,size=22528>
+Created a new partition <removed>.
+Requested partition: <partno=<default>,start=10240,size=2048>
+Adding logical partition 5
+Created a new partition <removed>.
+Requested partition: <partno=<default>,start=14336,size=2048>
+Adding logical partition 6
+Created a new partition <removed>.
+Requested partition: <partno=<default>,start=18432,size=12288>
+Adding logical partition 7
+Created a new partition <removed>.
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
+Disklabel type: dos
+Disk identifier: <removed>
+
+Device Boot Start End Sectors Size Id Type
+<removed>1 2048 4095 2048 1M 83 Linux
+<removed>2 4096 6143 2048 1M 83 Linux
+<removed>3 6144 8191 2048 1M 83 Linux
+<removed>4 8192 30719 22528 11M 5 Extended
+<removed>5 10240 12287 2048 1M 83 Linux
+<removed>6 14336 16383 2048 1M 83 Linux
+<removed>7 18432 30719 12288 6M 83 Linux
diff --git a/tests/expected/libfdisk/mkpart-full-mbr-partno-gap b/tests/expected/libfdisk/mkpart-full-mbr-partno-gap
new file mode 100644
index 0000000..7f5fab5
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-mbr-partno-gap
@@ -0,0 +1,26 @@
+Requested partition: <partno=0,start=2048,size=2048>
+Requested partition: <partno=2,start=4096,size=2048>
+Requested partition: <partno=3,start=6144,size=24576>
+Requested partition: <partno=4,start=10240,size=2048>
+Requested partition: <partno=5,start=14336,size=2048>
+Created a new <removed>.
+Created a new <removed>.
+Created a new <removed>.
+Created a new <removed>.
+Adding logical partition 5
+Created a new <removed>.
+Adding logical partition 6
+Created a new <removed>.
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
+Disklabel type: dos
+Disk identifier: <removed>
+
+Device Boot Start End Sectors Size Id Type
+<removed>1 2048 4095 2048 1M 83 Linux
+<removed>3 4096 6143 2048 1M 83 Linux
+<removed>4 6144 30719 24576 12M 5 Extended
+<removed>5 10240 12287 2048 1M 83 Linux
+<removed>6 14336 16383 2048 1M 83 Linux
diff --git a/tests/expected/libfdisk/mkpart-full-mbr-primary b/tests/expected/libfdisk/mkpart-full-mbr-primary
new file mode 100644
index 0000000..cd3604f
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-mbr-primary
@@ -0,0 +1,21 @@
+Created a new disklabel.
+Requested partition: <partno=0,start=2048,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=1,start=4096,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=2,start=6144,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=3,start=8192,size=22528>
+Created a new partition <removed>.
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
+Disklabel type: dos
+Disk identifier: <removed>
+
+Device Boot Start End Sectors Size Id Type
+<removed>1 2048 4095 2048 1M 83 Linux
+<removed>2 4096 6143 2048 1M 83 Linux
+<removed>3 6144 8191 2048 1M 83 Linux
+<removed>4 8192 30719 22528 11M 83 Linux
diff --git a/tests/expected/libfdisk/mkpart-full-mbr-primary-nopartno b/tests/expected/libfdisk/mkpart-full-mbr-primary-nopartno
new file mode 100644
index 0000000..a8b5819
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-mbr-primary-nopartno
@@ -0,0 +1,21 @@
+Created a new disklabel.
+Requested partition: <partno=<default>,start=2048,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=<default>,start=4096,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=<default>,start=6144,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=<default>,start=8192,size=22528>
+Created a new partition <removed>.
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
+Disklabel type: dos
+Disk identifier: <removed>
+
+Device Boot Start End Sectors Size Id Type
+<removed>1 2048 4095 2048 1M 83 Linux
+<removed>2 4096 6143 2048 1M 83 Linux
+<removed>3 6144 8191 2048 1M 83 Linux
+<removed>4 8192 30719 22528 11M 83 Linux
diff --git a/tests/expected/libfdisk/mkpart-full-mbr-space-gap b/tests/expected/libfdisk/mkpart-full-mbr-space-gap
new file mode 100644
index 0000000..1fe0061
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-full-mbr-space-gap
@@ -0,0 +1,18 @@
+Created a new disklabel.
+Requested partition: <partno=0,start=2048,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=1,start=6144,size=2048>
+Created a new partition <removed>.
+Requested partition: <partno=2,start=8192,size=2048>
+Created a new partition <removed>.
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
+Disklabel type: dos
+Disk identifier: <removed>
+
+Device Boot Start End Sectors Size Id Type
+<removed>1 2048 4095 2048 1M 83 Linux
+<removed>2 6144 8191 2048 1M 83 Linux
+<removed>3 8192 10239 2048 1M 83 Linux
diff --git a/tests/expected/libfdisk/mkpart-gpt b/tests/expected/libfdisk/mkpart-gpt
new file mode 100644
index 0000000..1c39f6a
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-gpt
@@ -0,0 +1,23 @@
+Created a new disklabel.
+Created a new partition <removed>.
+Created a new partition <removed>.
+Created a new partition <removed>.
+Created a new partition <removed>.
+Created a new partition <removed>.
+Created a new partition <removed>.
+Created a new partition <removed>.
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
+Disklabel type: gpt
+Disk identifier: <removed>
+
+Device Start End Sectors Size Type
+<removed>1 2048 4095 2048 1M Linux filesystem
+<removed>2 4096 6143 2048 1M Linux filesystem
+<removed>3 6144 8191 2048 1M Linux filesystem
+<removed>4 8192 10239 2048 1M Linux filesystem
+<removed>5 10240 12287 2048 1M Linux filesystem
+<removed>6 12288 14335 2048 1M Linux filesystem
+<removed>7 14336 28671 14336 7M Linux filesystem
diff --git a/tests/expected/libfdisk/mkpart-mbr b/tests/expected/libfdisk/mkpart-mbr
new file mode 100644
index 0000000..883efd7
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-mbr
@@ -0,0 +1,17 @@
+Created a new disklabel.
+Created a new partition <removed>.
+Created a new partition <removed>.
+Created a new partition <removed>.
+Created a new partition <removed>.
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
+Disklabel type: dos
+Disk identifier: <removed>
+
+Device Boot Start End Sectors Size Id Type
+<removed>1 2048 4095 2048 1M 83 Linux
+<removed>2 4096 6143 2048 1M 83 Linux
+<removed>3 6144 8191 2048 1M 83 Linux
+<removed>4 8192 30719 22528 11M 83 Linux
diff --git a/tests/expected/libfdisk/mkpart-mbr-logic b/tests/expected/libfdisk/mkpart-mbr-logic
new file mode 100644
index 0000000..eddaef0
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-mbr-logic
@@ -0,0 +1,26 @@
+Created a new disklabel.
+Created a new partition <removed>.
+Created a new partition <removed>.
+Created a new partition <removed>.
+Created a new partition <removed>.
+Adding logical partition 5
+Created a new partition <removed>.
+Adding logical partition 6
+Created a new partition <removed>.
+Adding logical partition 7
+Created a new partition <removed>.
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
+Disklabel type: dos
+Disk identifier: <removed>
+
+Device Boot Start End Sectors Size Id Type
+<removed>1 2048 4095 2048 1M 83 Linux
+<removed>2 4096 6143 2048 1M 83 Linux
+<removed>3 6144 8191 2048 1M 83 Linux
+<removed>4 8192 30719 22528 11M 5 Extended
+<removed>5 10240 12287 2048 1M 83 Linux
+<removed>6 14336 16383 2048 1M 83 Linux
+<removed>7 18432 30719 12288 6M 83 Linux
diff --git a/tests/expected/libfdisk/mkpart-mbr-nopartno b/tests/expected/libfdisk/mkpart-mbr-nopartno
new file mode 100644
index 0000000..eddaef0
--- /dev/null
+++ b/tests/expected/libfdisk/mkpart-mbr-nopartno
@@ -0,0 +1,26 @@
+Created a new disklabel.
+Created a new partition <removed>.
+Created a new partition <removed>.
+Created a new partition <removed>.
+Created a new partition <removed>.
+Adding logical partition 5
+Created a new partition <removed>.
+Adding logical partition 6
+Created a new partition <removed>.
+Adding logical partition 7
+Created a new partition <removed>.
+Disk <removed>: 15 MiB, 15728640 bytes, 30720 sectors
+Units: sectors of 1 * 512 = 512 bytes
+Sector size (logical/physical): 512 bytes / 512 bytes
+I/O size (minimum/optimal): 512 bytes / <removed> bytes
+Disklabel type: dos
+Disk identifier: <removed>
+
+Device Boot Start End Sectors Size Id Type
+<removed>1 2048 4095 2048 1M 83 Linux
+<removed>2 4096 6143 2048 1M 83 Linux
+<removed>3 6144 8191 2048 1M 83 Linux
+<removed>4 8192 30719 22528 11M 5 Extended
+<removed>5 10240 12287 2048 1M 83 Linux
+<removed>6 14336 16383 2048 1M 83 Linux
+<removed>7 18432 30719 12288 6M 83 Linux
diff --git a/tests/expected/libmount/context b/tests/expected/libmount/context
new file mode 100644
index 0000000..5e268a3
--- /dev/null
+++ b/tests/expected/libmount/context
@@ -0,0 +1,5 @@
+Init device
+Create partitions
+Create filesystem
+Do tests...
+...done.
diff --git a/tests/expected/libmount/context-X-comment b/tests/expected/libmount/context-X-comment
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-X-comment
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-mount-by-devname b/tests/expected/libmount/context-mount-by-devname
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-mount-by-devname
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-mount-by-label b/tests/expected/libmount/context-mount-by-label
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-mount-by-label
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-mount-by-uuid b/tests/expected/libmount/context-mount-by-uuid
new file mode 100644
index 0000000..2f44fc4
--- /dev/null
+++ b/tests/expected/libmount/context-mount-by-uuid
@@ -0,0 +1,2 @@
+successfully mounted
+successfully umounted
diff --git a/tests/expected/libmount/context-mount-flags b/tests/expected/libmount/context-mount-flags
new file mode 100644
index 0000000..eb71323
--- /dev/null
+++ b/tests/expected/libmount/context-mount-flags
@@ -0,0 +1,8 @@
+successfully mounted
+ro,nosuid,noexec
+successfully mounted
+rw,nosuid,noexec
+successfully umounted
+successfully mounted
+rw,relatime
+successfully umounted
diff --git a/tests/expected/libmount/context-mount-loopdev b/tests/expected/libmount/context-mount-loopdev
new file mode 100644
index 0000000..2f44fc4
--- /dev/null
+++ b/tests/expected/libmount/context-mount-loopdev
@@ -0,0 +1,2 @@
+successfully mounted
+successfully umounted
diff --git a/tests/expected/libmount/context-py b/tests/expected/libmount/context-py
new file mode 100644
index 0000000..5e268a3
--- /dev/null
+++ b/tests/expected/libmount/context-py
@@ -0,0 +1,5 @@
+Init device
+Create partitions
+Create filesystem
+Do tests...
+...done.
diff --git a/tests/expected/libmount/context-py-mount-by-devname b/tests/expected/libmount/context-py-mount-by-devname
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-py-mount-by-devname
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-py-mount-by-label b/tests/expected/libmount/context-py-mount-by-label
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-py-mount-by-label
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-py-mount-by-uuid b/tests/expected/libmount/context-py-mount-by-uuid
new file mode 100644
index 0000000..2f44fc4
--- /dev/null
+++ b/tests/expected/libmount/context-py-mount-by-uuid
@@ -0,0 +1,2 @@
+successfully mounted
+successfully umounted
diff --git a/tests/expected/libmount/context-py-mount-flags b/tests/expected/libmount/context-py-mount-flags
new file mode 100644
index 0000000..9606418
--- /dev/null
+++ b/tests/expected/libmount/context-py-mount-flags
@@ -0,0 +1,5 @@
+successfully mounted
+ro,nosuid,noexec
+successfully mounted
+rw,nosuid,noexec
+successfully umounted
diff --git a/tests/expected/libmount/context-py-mount-loopdev b/tests/expected/libmount/context-py-mount-loopdev
new file mode 100644
index 0000000..2f44fc4
--- /dev/null
+++ b/tests/expected/libmount/context-py-mount-loopdev
@@ -0,0 +1,2 @@
+successfully mounted
+successfully umounted
diff --git a/tests/expected/libmount/context-py-umount-by-devname b/tests/expected/libmount/context-py-umount-by-devname
new file mode 100644
index 0000000..319236f
--- /dev/null
+++ b/tests/expected/libmount/context-py-umount-by-devname
@@ -0,0 +1 @@
+successfully umounted
diff --git a/tests/expected/libmount/context-py-umount-by-mountpoint b/tests/expected/libmount/context-py-umount-by-mountpoint
new file mode 100644
index 0000000..319236f
--- /dev/null
+++ b/tests/expected/libmount/context-py-umount-by-mountpoint
@@ -0,0 +1 @@
+successfully umounted
diff --git a/tests/expected/libmount/context-py-x-mount.mkdir b/tests/expected/libmount/context-py-x-mount.mkdir
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-py-x-mount.mkdir
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-umount-by-devname b/tests/expected/libmount/context-umount-by-devname
new file mode 100644
index 0000000..319236f
--- /dev/null
+++ b/tests/expected/libmount/context-umount-by-devname
@@ -0,0 +1 @@
+successfully umounted
diff --git a/tests/expected/libmount/context-umount-by-mountpoint b/tests/expected/libmount/context-umount-by-mountpoint
new file mode 100644
index 0000000..319236f
--- /dev/null
+++ b/tests/expected/libmount/context-umount-by-mountpoint
@@ -0,0 +1 @@
+successfully umounted
diff --git a/tests/expected/libmount/context-utab b/tests/expected/libmount/context-utab
new file mode 100644
index 0000000..7b403e5
--- /dev/null
+++ b/tests/expected/libmount/context-utab
@@ -0,0 +1,4 @@
+Create partitions
+Create filesystem
+Do tests...
+...done.
diff --git a/tests/expected/libmount/context-utab-mount-by-devname b/tests/expected/libmount/context-utab-mount-by-devname
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-utab-mount-by-devname
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-utab-mount-uhelper b/tests/expected/libmount/context-utab-mount-uhelper
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-utab-mount-uhelper
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-utab-mount-uhelper-subvol b/tests/expected/libmount/context-utab-mount-uhelper-subvol
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-utab-mount-uhelper-subvol
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-utab-py b/tests/expected/libmount/context-utab-py
new file mode 100644
index 0000000..7b403e5
--- /dev/null
+++ b/tests/expected/libmount/context-utab-py
@@ -0,0 +1,4 @@
+Create partitions
+Create filesystem
+Do tests...
+...done.
diff --git a/tests/expected/libmount/context-utab-py-mount-by-devname b/tests/expected/libmount/context-utab-py-mount-by-devname
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-utab-py-mount-by-devname
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-utab-py-mount-uhelper b/tests/expected/libmount/context-utab-py-mount-uhelper
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-utab-py-mount-uhelper
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-utab-py-mount-uhelper-subvol b/tests/expected/libmount/context-utab-py-mount-uhelper-subvol
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-utab-py-mount-uhelper-subvol
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/context-utab-py-umount b/tests/expected/libmount/context-utab-py-umount
new file mode 100644
index 0000000..319236f
--- /dev/null
+++ b/tests/expected/libmount/context-utab-py-umount
@@ -0,0 +1 @@
+successfully umounted
diff --git a/tests/expected/libmount/context-utab-py-umount-by-devname b/tests/expected/libmount/context-utab-py-umount-by-devname
new file mode 100644
index 0000000..319236f
--- /dev/null
+++ b/tests/expected/libmount/context-utab-py-umount-by-devname
@@ -0,0 +1 @@
+successfully umounted
diff --git a/tests/expected/libmount/context-utab-py-umount-subvol b/tests/expected/libmount/context-utab-py-umount-subvol
new file mode 100644
index 0000000..319236f
--- /dev/null
+++ b/tests/expected/libmount/context-utab-py-umount-subvol
@@ -0,0 +1 @@
+successfully umounted
diff --git a/tests/expected/libmount/context-utab-umount b/tests/expected/libmount/context-utab-umount
new file mode 100644
index 0000000..319236f
--- /dev/null
+++ b/tests/expected/libmount/context-utab-umount
@@ -0,0 +1 @@
+successfully umounted
diff --git a/tests/expected/libmount/context-utab-umount-by-devname b/tests/expected/libmount/context-utab-umount-by-devname
new file mode 100644
index 0000000..319236f
--- /dev/null
+++ b/tests/expected/libmount/context-utab-umount-by-devname
@@ -0,0 +1 @@
+successfully umounted
diff --git a/tests/expected/libmount/context-utab-umount-subvol b/tests/expected/libmount/context-utab-umount-subvol
new file mode 100644
index 0000000..319236f
--- /dev/null
+++ b/tests/expected/libmount/context-utab-umount-subvol
@@ -0,0 +1 @@
+successfully umounted
diff --git a/tests/expected/libmount/context-x-permanent b/tests/expected/libmount/context-x-permanent
new file mode 100644
index 0000000..7504a7e
--- /dev/null
+++ b/tests/expected/libmount/context-x-permanent
@@ -0,0 +1 @@
+successfully mounted
diff --git a/tests/expected/libmount/debug-set-from-code b/tests/expected/libmount/debug-set-from-code
new file mode 100644
index 0000000..9066621
--- /dev/null
+++ b/tests/expected/libmount/debug-set-from-code
@@ -0,0 +1 @@
+0x000016
diff --git a/tests/expected/libmount/debug-set-from-env-int b/tests/expected/libmount/debug-set-from-env-int
new file mode 100644
index 0000000..9066621
--- /dev/null
+++ b/tests/expected/libmount/debug-set-from-env-int
@@ -0,0 +1 @@
+0x000016
diff --git a/tests/expected/libmount/debug-set-from-env-str b/tests/expected/libmount/debug-set-from-env-str
new file mode 100644
index 0000000..9066621
--- /dev/null
+++ b/tests/expected/libmount/debug-set-from-env-str
@@ -0,0 +1 @@
+0x000016
diff --git a/tests/expected/libmount/lock b/tests/expected/libmount/lock
new file mode 100644
index 0000000..d7e318d
--- /dev/null
+++ b/tests/expected/libmount/lock
@@ -0,0 +1 @@
+50000 \ No newline at end of file
diff --git a/tests/expected/libmount/loop b/tests/expected/libmount/loop
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/libmount/loop
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/libmount/loop-conflict b/tests/expected/libmount/loop-conflict
new file mode 100644
index 0000000..1686021
--- /dev/null
+++ b/tests/expected/libmount/loop-conflict
@@ -0,0 +1,2 @@
+mount: <target> overlapping loop device exists for <source>
+Success
diff --git a/tests/expected/libmount/loop-dev-loop b/tests/expected/libmount/loop-dev-loop
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/libmount/loop-dev-loop
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/libmount/loop-explicit-rw b/tests/expected/libmount/loop-explicit-rw
new file mode 100644
index 0000000..e7787c0
--- /dev/null
+++ b/tests/expected/libmount/loop-explicit-rw
@@ -0,0 +1,2 @@
+rw
+Success
diff --git a/tests/expected/libmount/loop-file b/tests/expected/libmount/loop-file
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/libmount/loop-file
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/libmount/loop-file-o-loop b/tests/expected/libmount/loop-file-o-loop
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/libmount/loop-file-o-loop
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/libmount/loop-o-loop-val b/tests/expected/libmount/loop-o-loop-val
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/libmount/loop-o-loop-val
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/libmount/loop-o-loop-val-conflict b/tests/expected/libmount/loop-o-loop-val-conflict
new file mode 100644
index 0000000..0eb7322
--- /dev/null
+++ b/tests/expected/libmount/loop-o-loop-val-conflict
@@ -0,0 +1,2 @@
+mount: <target> failed to setup loop device for <source>
+Success
diff --git a/tests/expected/libmount/loop-o-loop-val-initialized b/tests/expected/libmount/loop-o-loop-val-initialized
new file mode 100644
index 0000000..1686021
--- /dev/null
+++ b/tests/expected/libmount/loop-o-loop-val-initialized
@@ -0,0 +1,2 @@
+mount: <target> overlapping loop device exists for <source>
+Success
diff --git a/tests/expected/libmount/loop-overlay b/tests/expected/libmount/loop-overlay
new file mode 100644
index 0000000..3990244
--- /dev/null
+++ b/tests/expected/libmount/loop-overlay
@@ -0,0 +1,7 @@
+second should fail
+mount: <target> overlapping loop device exists for <source>
+should succeed
+both should fail
+mount: <target> overlapping loop device exists for <source>
+mount: <target> overlapping loop device exists for <source>
+Success
diff --git a/tests/expected/libmount/loop-reuse b/tests/expected/libmount/loop-reuse
new file mode 100644
index 0000000..3582111
--- /dev/null
+++ b/tests/expected/libmount/loop-reuse
@@ -0,0 +1 @@
+Success
diff --git a/tests/expected/libmount/optstr-append b/tests/expected/libmount/optstr-append
new file mode 100644
index 0000000..68e5845
--- /dev/null
+++ b/tests/expected/libmount/optstr-append
@@ -0,0 +1 @@
+result: >aaa,bbb=BBB,context="foo,bar,gogo",ccc,ddd<
diff --git a/tests/expected/libmount/optstr-append-empty-value b/tests/expected/libmount/optstr-append-empty-value
new file mode 100644
index 0000000..35adf5c
--- /dev/null
+++ b/tests/expected/libmount/optstr-append-empty-value
@@ -0,0 +1 @@
+result: >aaa,bbb=BBB,ccc,ddd=<
diff --git a/tests/expected/libmount/optstr-append-value b/tests/expected/libmount/optstr-append-value
new file mode 100644
index 0000000..e0116f6
--- /dev/null
+++ b/tests/expected/libmount/optstr-append-value
@@ -0,0 +1 @@
+result: >aaa,bbb=BBB,ccc,ddd=DDD<
diff --git a/tests/expected/libmount/optstr-apply-linux b/tests/expected/libmount/optstr-apply-linux
new file mode 100644
index 0000000..50a52a7
--- /dev/null
+++ b/tests/expected/libmount/optstr-apply-linux
@@ -0,0 +1,2 @@
+flags: 0x00000400
+optstr: rw,user=kzak,noatime
diff --git a/tests/expected/libmount/optstr-apply-user b/tests/expected/libmount/optstr-apply-user
new file mode 100644
index 0000000..2f34732
--- /dev/null
+++ b/tests/expected/libmount/optstr-apply-user
@@ -0,0 +1,2 @@
+flags: 0x00000408
+optstr: noexec,nosuid,user,nofail
diff --git a/tests/expected/libmount/optstr-apply-user-Xx b/tests/expected/libmount/optstr-apply-user-Xx
new file mode 100644
index 0000000..d340ed7
--- /dev/null
+++ b/tests/expected/libmount/optstr-apply-user-Xx
@@ -0,0 +1,2 @@
+flags: 0x00022400
+optstr: something,x-gvfs-hide,x-gdu.hide,x-canary,X-foo,X-bar,nofail
diff --git a/tests/expected/libmount/optstr-apply-user-large-X b/tests/expected/libmount/optstr-apply-user-large-X
new file mode 100644
index 0000000..5cdc2c0
--- /dev/null
+++ b/tests/expected/libmount/optstr-apply-user-large-X
@@ -0,0 +1,2 @@
+flags: 0x00020000
+optstr: something,X-foo,X-bar
diff --git a/tests/expected/libmount/optstr-apply-user-small-x b/tests/expected/libmount/optstr-apply-user-small-x
new file mode 100644
index 0000000..8f5d5fc
--- /dev/null
+++ b/tests/expected/libmount/optstr-apply-user-small-x
@@ -0,0 +1,2 @@
+flags: 0x00002000
+optstr: something,x-gvfs-hide,x-gdu.hide,x-canary
diff --git a/tests/expected/libmount/optstr-deduplicate b/tests/expected/libmount/optstr-deduplicate
new file mode 100644
index 0000000..e2b669a
--- /dev/null
+++ b/tests/expected/libmount/optstr-deduplicate
@@ -0,0 +1 @@
+result: >bbb,ccc,xxx,ddd,AAA=ccc,fff=eee<
diff --git a/tests/expected/libmount/optstr-deduplicate-empty b/tests/expected/libmount/optstr-deduplicate-empty
new file mode 100644
index 0000000..63b74f6
--- /dev/null
+++ b/tests/expected/libmount/optstr-deduplicate-empty
@@ -0,0 +1 @@
+result: >bbb,ccc,xxx,ddd,AAA=,fff=eee<
diff --git a/tests/expected/libmount/optstr-flags b/tests/expected/libmount/optstr-flags
new file mode 100644
index 0000000..17b4727
--- /dev/null
+++ b/tests/expected/libmount/optstr-flags
@@ -0,0 +1,2 @@
+mountflags: 0x0000000e
+userspace-mountflags: 0x00002208
diff --git a/tests/expected/libmount/optstr-get b/tests/expected/libmount/optstr-get
new file mode 100644
index 0000000..7eafc65
--- /dev/null
+++ b/tests/expected/libmount/optstr-get
@@ -0,0 +1 @@
+found; name: aaa
diff --git a/tests/expected/libmount/optstr-get-value b/tests/expected/libmount/optstr-get-value
new file mode 100644
index 0000000..509843f
--- /dev/null
+++ b/tests/expected/libmount/optstr-get-value
@@ -0,0 +1 @@
+found; name: bbb, argument: size=3 data=BBB
diff --git a/tests/expected/libmount/optstr-match b/tests/expected/libmount/optstr-match
new file mode 100644
index 0000000..1fc862f
--- /dev/null
+++ b/tests/expected/libmount/optstr-match
@@ -0,0 +1,13 @@
+false : "xxx,yyy,zzz" : "nozzz"
+true : "xxx,yyy,zzz" : "xxx,noeee"
+true : "bar,zzz" : "nofoo"
+true : "nofoo,bar" : "nofoo"
+true : "nofoo,bar" : "+nofoo"
+false : "bar,zzz" : "+nofoo"
+true : "bar,zzz" : ""
+true : "bar,zzz" : "+"
+true : "" : ""
+false : "" : "foo"
+true : "" : "nofoo"
+false : "" : "no,foo"
+true : "no" : "+no"
diff --git a/tests/expected/libmount/optstr-prepend b/tests/expected/libmount/optstr-prepend
new file mode 100644
index 0000000..cdcf751
--- /dev/null
+++ b/tests/expected/libmount/optstr-prepend
@@ -0,0 +1 @@
+result: >ddd,aaa,bbb=BBB,ccc<
diff --git a/tests/expected/libmount/optstr-prepend-empty-value b/tests/expected/libmount/optstr-prepend-empty-value
new file mode 100644
index 0000000..4cea635
--- /dev/null
+++ b/tests/expected/libmount/optstr-prepend-empty-value
@@ -0,0 +1 @@
+result: >ddd=,aaa,bbb=BBB,ccc<
diff --git a/tests/expected/libmount/optstr-prepend-value b/tests/expected/libmount/optstr-prepend-value
new file mode 100644
index 0000000..debc7ee
--- /dev/null
+++ b/tests/expected/libmount/optstr-prepend-value
@@ -0,0 +1 @@
+result: >ddd=DDD,aaa,bbb=BBB,ccc<
diff --git a/tests/expected/libmount/optstr-remove b/tests/expected/libmount/optstr-remove
new file mode 100644
index 0000000..4c28ed2
--- /dev/null
+++ b/tests/expected/libmount/optstr-remove
@@ -0,0 +1 @@
+result: >bbb=BBB,ccc<
diff --git a/tests/expected/libmount/optstr-remove-empty-value b/tests/expected/libmount/optstr-remove-empty-value
new file mode 100644
index 0000000..eee5c95
--- /dev/null
+++ b/tests/expected/libmount/optstr-remove-empty-value
@@ -0,0 +1 @@
+result: >aaa,ccc<
diff --git a/tests/expected/libmount/optstr-remove-quoted b/tests/expected/libmount/optstr-remove-quoted
new file mode 100644
index 0000000..92fc5e3
--- /dev/null
+++ b/tests/expected/libmount/optstr-remove-quoted
@@ -0,0 +1 @@
+result: >aaa,bbb=BBB,ccc<
diff --git a/tests/expected/libmount/optstr-remove-value b/tests/expected/libmount/optstr-remove-value
new file mode 100644
index 0000000..eee5c95
--- /dev/null
+++ b/tests/expected/libmount/optstr-remove-value
@@ -0,0 +1 @@
+result: >aaa,ccc<
diff --git a/tests/expected/libmount/optstr-set-empty b/tests/expected/libmount/optstr-set-empty
new file mode 100644
index 0000000..e0a3300
--- /dev/null
+++ b/tests/expected/libmount/optstr-set-empty
@@ -0,0 +1 @@
+result: >aaa,bbb=,ccc<
diff --git a/tests/expected/libmount/optstr-set-large b/tests/expected/libmount/optstr-set-large
new file mode 100644
index 0000000..b518c26
--- /dev/null
+++ b/tests/expected/libmount/optstr-set-large
@@ -0,0 +1 @@
+result: >aaa,bbb=XXX-YYY-ZZZ,ccc<
diff --git a/tests/expected/libmount/optstr-set-new b/tests/expected/libmount/optstr-set-new
new file mode 100644
index 0000000..5d45b4f
--- /dev/null
+++ b/tests/expected/libmount/optstr-set-new
@@ -0,0 +1 @@
+result: >aaa=XXX,bbb=BBB,ccc<
diff --git a/tests/expected/libmount/optstr-set-new-empty b/tests/expected/libmount/optstr-set-new-empty
new file mode 100644
index 0000000..a1cfb37
--- /dev/null
+++ b/tests/expected/libmount/optstr-set-new-empty
@@ -0,0 +1 @@
+result: >aaa=,bbb=BBB,ccc<
diff --git a/tests/expected/libmount/optstr-set-new-end b/tests/expected/libmount/optstr-set-new-end
new file mode 100644
index 0000000..39675a4
--- /dev/null
+++ b/tests/expected/libmount/optstr-set-new-end
@@ -0,0 +1 @@
+result: >aaa,bbb=BBB,ccc=XXX<
diff --git a/tests/expected/libmount/optstr-set-new-end-empty b/tests/expected/libmount/optstr-set-new-end-empty
new file mode 100644
index 0000000..d0e9880
--- /dev/null
+++ b/tests/expected/libmount/optstr-set-new-end-empty
@@ -0,0 +1 @@
+result: >aaa,bbb=BBB,ccc=<
diff --git a/tests/expected/libmount/optstr-set-remove b/tests/expected/libmount/optstr-set-remove
new file mode 100644
index 0000000..0505bed
--- /dev/null
+++ b/tests/expected/libmount/optstr-set-remove
@@ -0,0 +1 @@
+result: >aaa,bbb,ccc<
diff --git a/tests/expected/libmount/optstr-set-small b/tests/expected/libmount/optstr-set-small
new file mode 100644
index 0000000..6c358b3
--- /dev/null
+++ b/tests/expected/libmount/optstr-set-small
@@ -0,0 +1 @@
+result: >aaa,bbb=X,ccc<
diff --git a/tests/expected/libmount/optstr-split b/tests/expected/libmount/optstr-split
new file mode 100644
index 0000000..341a640
--- /dev/null
+++ b/tests/expected/libmount/optstr-split
@@ -0,0 +1,3 @@
+user : x-bar,x-foo=foodata,user=kzak,loop=/dev/loop0
+vfs : noexec,nosuid
+fs : aaa,bbb=BBB,ccc
diff --git a/tests/expected/libmount/tabdiff-mount b/tests/expected/libmount/tabdiff-mount
new file mode 100644
index 0000000..3c18f8d
--- /dev/null
+++ b/tests/expected/libmount/tabdiff-mount
@@ -0,0 +1,2 @@
+/dev/mapper/kzak-home on /home/kzak: MOUNTED
+tmpfs on /mnt/test/foo bar: MOUNTED
diff --git a/tests/expected/libmount/tabdiff-move b/tests/expected/libmount/tabdiff-move
new file mode 100644
index 0000000..95820d9
--- /dev/null
+++ b/tests/expected/libmount/tabdiff-move
@@ -0,0 +1,2 @@
+//foo.home/bar/ on /mnt/music: MOVED to /mnt/music
+tmpfs on /mnt/test/foo bar: UMOUNTED
diff --git a/tests/expected/libmount/tabdiff-remount b/tests/expected/libmount/tabdiff-remount
new file mode 100644
index 0000000..876bfd9
--- /dev/null
+++ b/tests/expected/libmount/tabdiff-remount
@@ -0,0 +1,3 @@
+/dev/mapper/kzak-home on /home/kzak: REMOUNTED from 'rw,noatime,barrier=1,data=ordered' to 'ro,noatime,barrier=1,data=ordered'
+//foo.home/bar/ on /mnt/sounds: REMOUNTED from 'rw,relatime,unc=\\foo.home\bar,username=kzak,domain=SRGROUP,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.111.1,posixpaths,serverino,acl,rsize=16384,wsize=57344' to 'ro,relatime,unc=\\foo.home\bar,username=kzak,domain=SRGROUP,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.111.1,posixpaths,serverino,acl,rsize=16384,wsize=57344'
+tmpfs on /mnt/test/foo bar: UMOUNTED
diff --git a/tests/expected/libmount/tabdiff-umount b/tests/expected/libmount/tabdiff-umount
new file mode 100644
index 0000000..c7be725
--- /dev/null
+++ b/tests/expected/libmount/tabdiff-umount
@@ -0,0 +1,2 @@
+/dev/mapper/kzak-home on /home/kzak: UMOUNTED
+tmpfs on /mnt/test/foo bar: UMOUNTED
diff --git a/tests/expected/libmount/tabfiles-copy b/tests/expected/libmount/tabfiles-copy
new file mode 100644
index 0000000..0054586
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-copy
@@ -0,0 +1,18 @@
+ORIGINAL:
+------ fs:
+source: UUID=d3a8f783-df75-4dc8-9163-975a891052c0
+target: /
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 1
+COPY:
+------ fs:
+source: UUID=d3a8f783-df75-4dc8-9163-975a891052c0
+target: /
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 1
diff --git a/tests/expected/libmount/tabfiles-find-fs b/tests/expected/libmount/tabfiles-find-fs
new file mode 100644
index 0000000..0c67fb8
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-find-fs
@@ -0,0 +1 @@
+/home/kzak index is 27
diff --git a/tests/expected/libmount/tabfiles-find-pair b/tests/expected/libmount/tabfiles-find-pair
new file mode 100644
index 0000000..fbd730a
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-find-pair
@@ -0,0 +1,6 @@
+------ fs:
+source: /dev/mapper/kzak-home
+target: /home/kzak
+fstype: ext4
+optstr: rw,noatime
+VFS-optstr: rw,noatime
diff --git a/tests/expected/libmount/tabfiles-find-source b/tests/expected/libmount/tabfiles-find-source
new file mode 100644
index 0000000..474652c
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-find-source
@@ -0,0 +1,8 @@
+------ fs:
+source: UUID=fef7ccb3-821c-4de8-88dc-71472be5946f
+target: /boot
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 2
diff --git a/tests/expected/libmount/tabfiles-find-target b/tests/expected/libmount/tabfiles-find-target
new file mode 100644
index 0000000..1a51bd5
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-find-target
@@ -0,0 +1,6 @@
+------ fs:
+source: /dev/mapper/foo
+target: /home/foo
+fstype: ext4
+optstr: noatime,defaults
+VFS-optstr: noatime
diff --git a/tests/expected/libmount/tabfiles-find-target2 b/tests/expected/libmount/tabfiles-find-target2
new file mode 100644
index 0000000..8a6c57b
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-find-target2
@@ -0,0 +1,5 @@
+------ fs:
+source: /dev/foo
+target: /any/foo/
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-find-target3 b/tests/expected/libmount/tabfiles-find-target3
new file mode 100644
index 0000000..8a6c57b
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-find-target3
@@ -0,0 +1,5 @@
+------ fs:
+source: /dev/foo
+target: /any/foo/
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-parse-fstab b/tests/expected/libmount/tabfiles-parse-fstab
new file mode 100644
index 0000000..d661526
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-parse-fstab
@@ -0,0 +1,65 @@
+------ fs:
+source: UUID=d3a8f783-df75-4dc8-9163-975a891052c0
+target: /
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 1
+------ fs:
+source: UUID=fef7ccb3-821c-4de8-88dc-71472be5946f
+target: /boot
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 2
+------ fs:
+source: UUID=1f2aa318-9c34-462e-8d29-260819ffd657
+target: swap
+fstype: swap
+optstr: defaults
+------ fs:
+source: tmpfs
+target: /dev/shm
+fstype: tmpfs
+optstr: defaults
+------ fs:
+source: devpts
+target: /dev/pts
+fstype: devpts
+optstr: gid=5,mode=620
+FS-opstr: gid=5,mode=620
+------ fs:
+source: sysfs
+target: /sys
+fstype: sysfs
+optstr: defaults
+------ fs:
+source: proc
+target: /proc
+fstype: proc
+optstr: defaults
+------ fs:
+source: /dev/mapper/foo
+target: /home/foo
+fstype: ext4
+optstr: noatime,defaults
+VFS-optstr: noatime
+------ fs:
+source: foo.com:/mnt/share
+target: /mnt/remote
+fstype: nfs
+optstr: noauto
+user-optstr: noauto
+------ fs:
+source: //bar.com/gogogo
+target: /mnt/gogogo
+fstype: cifs
+optstr: user=SRGROUP/baby,noauto
+user-optstr: user=SRGROUP/baby,noauto
+------ fs:
+source: /dev/foo
+target: /any/foo/
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-parse-fstab-broken b/tests/expected/libmount/tabfiles-parse-fstab-broken
new file mode 100644
index 0000000..b838fbc
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-parse-fstab-broken
@@ -0,0 +1,63 @@
+
+
+------ fs:
+source: UUID=d3a8f783-df75-4dc8-9163-975a891052c0
+target: /
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 1
+------ fs:
+source: UUID=fef7ccb3-821c-4de8-88dc-71472be5946f
+target: /boot
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 2
+------ fs:
+source: UUID=1f2aa318-9c34-462e-8d29-260819ffd657
+target: swap
+fstype: swap
+optstr: defaults
+------ fs:
+source: tmpfs
+target: /dev/shm
+fstype: tmpfs
+optstr: defaults
+------ fs:
+source: devpts
+target: /dev/pts
+fstype: devpts
+optstr: gid=5,mode=620
+FS-opstr: gid=5,mode=620
+------ fs:
+source: sysfs
+target: /sys
+fstype: sysfs
+optstr: defaults
+------ fs:
+source: proc
+target: /proc
+fstype: proc
+optstr: defaults
+------ fs:
+source: /dev/mapper/foo
+target: /home/foo
+fstype: ext4
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+------ fs:
+source: foo.com:/mnt/share
+target: /mnt/remote
+fstype: nfs
+optstr: noauto
+user-optstr: noauto
+------ fs:
+source: //bar.com/gogogo
+target: /mnt/gogogo
+fstype: cifs
+optstr: user=SRGROUP/baby,noauto
+user-optstr: user=SRGROUP/baby,noauto
diff --git a/tests/expected/libmount/tabfiles-parse-fstab-full b/tests/expected/libmount/tabfiles-parse-fstab-full
new file mode 100644
index 0000000..f1caff6
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-parse-fstab-full
@@ -0,0 +1,83 @@
+Initial comment:
+"#
+ # this is a leading comment
+#
+
+"
+------ fs:
+source: UUID=d3a8f783-df75-4dc8-9163-975a891052c0
+target: /
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 1
+comment: '# this comments belongs to the first fs
+'
+------ fs:
+source: UUID=fef7ccb3-821c-4de8-88dc-71472be5946f
+target: /boot
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 2
+------ fs:
+source: UUID=1f2aa318-9c34-462e-8d29-260819ffd657
+target: swap
+fstype: swap
+optstr: defaults
+comment: '
+# 3rd fs comment + newline padding
+
+'
+------ fs:
+source: tmpfs
+target: /dev/shm
+fstype: tmpfs
+optstr: defaults
+------ fs:
+source: devpts
+target: /dev/pts
+fstype: devpts
+optstr: gid=5,mode=620
+FS-opstr: gid=5,mode=620
+------ fs:
+source: sysfs
+target: /sys
+fstype: sysfs
+optstr: defaults
+------ fs:
+source: proc
+target: /proc
+fstype: proc
+optstr: defaults
+------ fs:
+source: /dev/mapper/foo
+target: /home/foo
+fstype: ext4
+optstr: noatime,defaults
+VFS-optstr: noatime
+comment: '# this is comment
+'
+------ fs:
+source: foo.com:/mnt/share
+target: /mnt/remote
+fstype: nfs
+optstr: noauto
+user-optstr: noauto
+------ fs:
+source: //bar.com/gogogo
+target: /mnt/gogogo
+fstype: cifs
+optstr: user=SRGROUP/baby,noauto
+user-optstr: user=SRGROUP/baby,noauto
+------ fs:
+source: /dev/foo
+target: /any/foo/
+fstype: auto
+optstr: defaults
+Trailing comment:
+"
+#this is a trailing comment
+"
diff --git a/tests/expected/libmount/tabfiles-parse-mountinfo b/tests/expected/libmount/tabfiles-parse-mountinfo
new file mode 100644
index 0000000..d5ba524
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-parse-mountinfo
@@ -0,0 +1,364 @@
+------ fs:
+source: /proc
+target: /proc
+fstype: proc
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 15
+parent: 20
+devno: 0:3
+------ fs:
+source: /sys
+target: /sys
+fstype: sysfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 16
+parent: 20
+devno: 0:15
+------ fs:
+source: udev
+target: /dev
+fstype: devtmpfs
+optstr: rw,relatime,size=1983516k,nr_inodes=495879,mode=755
+VFS-optstr: rw,relatime
+FS-opstr: rw,size=1983516k,nr_inodes=495879,mode=755
+root: /
+id: 17
+parent: 20
+devno: 0:5
+------ fs:
+source: devpts
+target: /dev/pts
+fstype: devpts
+optstr: rw,relatime,gid=5,mode=620,ptmxmode=000
+VFS-optstr: rw,relatime
+FS-opstr: rw,gid=5,mode=620,ptmxmode=000
+root: /
+id: 18
+parent: 17
+devno: 0:10
+------ fs:
+source: tmpfs
+target: /dev/shm
+fstype: tmpfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 19
+parent: 17
+devno: 0:16
+------ fs:
+source: /dev/sda4
+target: /
+fstype: ext3
+optstr: rw,noatime,errors=continue,user_xattr,acl,barrier=0,data=ordered
+VFS-optstr: rw,noatime
+FS-opstr: rw,errors=continue,user_xattr,acl,barrier=0,data=ordered
+root: /
+id: 20
+parent: 1
+devno: 8:4
+------ fs:
+source: tmpfs
+target: /sys/fs/cgroup
+fstype: tmpfs
+optstr: rw,nosuid,nodev,noexec,relatime,mode=755
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,mode=755
+root: /
+id: 21
+parent: 16
+devno: 0:17
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/systemd
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd
+root: /
+id: 22
+parent: 21
+devno: 0:18
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/cpuset
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,cpuset
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,cpuset
+root: /
+id: 23
+parent: 21
+devno: 0:19
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/ns
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,ns
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,ns
+root: /
+id: 24
+parent: 21
+devno: 0:20
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/cpu
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,cpu
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,cpu
+root: /
+id: 25
+parent: 21
+devno: 0:21
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/cpuacct
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,cpuacct
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,cpuacct
+root: /
+id: 26
+parent: 21
+devno: 0:22
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/memory
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,memory
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,memory
+root: /
+id: 27
+parent: 21
+devno: 0:23
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/devices
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,devices
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,devices
+root: /
+id: 28
+parent: 21
+devno: 0:24
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/freezer
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,freezer
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,freezer
+root: /
+id: 29
+parent: 21
+devno: 0:25
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/net_cls
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,net_cls
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,net_cls
+root: /
+id: 30
+parent: 21
+devno: 0:26
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/blkio
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,blkio
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,blkio
+root: /
+id: 31
+parent: 21
+devno: 0:27
+------ fs:
+source: systemd-1
+target: /sys/kernel/security
+fstype: autofs
+optstr: rw,relatime,fd=22,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+VFS-optstr: rw,relatime
+FS-opstr: rw,fd=22,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+root: /
+id: 32
+parent: 16
+devno: 0:28
+------ fs:
+source: systemd-1
+target: /dev/hugepages
+fstype: autofs
+optstr: rw,relatime,fd=23,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+VFS-optstr: rw,relatime
+FS-opstr: rw,fd=23,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+root: /
+id: 33
+parent: 17
+devno: 0:29
+------ fs:
+source: systemd-1
+target: /sys/kernel/debug
+fstype: autofs
+optstr: rw,relatime,fd=24,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+VFS-optstr: rw,relatime
+FS-opstr: rw,fd=24,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+root: /
+id: 34
+parent: 16
+devno: 0:30
+------ fs:
+source: systemd-1
+target: /proc/sys/fs/binfmt_misc
+fstype: autofs
+optstr: rw,relatime,fd=25,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+VFS-optstr: rw,relatime
+FS-opstr: rw,fd=25,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+root: /
+id: 35
+parent: 15
+devno: 0:31
+------ fs:
+source: systemd-1
+target: /dev/mqueue
+fstype: autofs
+optstr: rw,relatime,fd=26,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+VFS-optstr: rw,relatime
+FS-opstr: rw,fd=26,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+root: /
+id: 36
+parent: 17
+devno: 0:32
+------ fs:
+source: /proc/bus/usb
+target: /proc/bus/usb
+fstype: usbfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 37
+parent: 15
+devno: 0:14
+------ fs:
+source: hugetlbfs
+target: /dev/hugepages
+fstype: hugetlbfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 38
+parent: 33
+devno: 0:33
+------ fs:
+source: mqueue
+target: /dev/mqueue
+fstype: mqueue
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 39
+parent: 36
+devno: 0:12
+------ fs:
+source: /dev/sda6
+target: /boot
+fstype: ext3
+optstr: rw,noatime,errors=continue,barrier=0,data=ordered
+VFS-optstr: rw,noatime
+FS-opstr: rw,errors=continue,barrier=0,data=ordered
+root: /
+id: 40
+parent: 20
+devno: 8:6
+------ fs:
+source: /dev/mapper/kzak-home
+target: /home/kzak
+fstype: ext4
+optstr: rw,noatime,barrier=1,data=ordered
+VFS-optstr: rw,noatime
+FS-opstr: rw,barrier=1,data=ordered
+root: /
+id: 41
+parent: 20
+devno: 253:0
+------ fs:
+source: none
+target: /proc/sys/fs/binfmt_misc
+fstype: binfmt_misc
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 42
+parent: 35
+devno: 0:34
+------ fs:
+source: fusectl
+target: /sys/fs/fuse/connections
+fstype: fusectl
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 43
+parent: 16
+devno: 0:35
+------ fs:
+source: gvfs-fuse-daemon
+target: /home/kzak/.gvfs
+fstype: fuse.gvfs-fuse-daemon
+optstr: rw,nosuid,nodev,relatime,user_id=500,group_id=500
+VFS-optstr: rw,nosuid,nodev,relatime
+FS-opstr: rw,user_id=500,group_id=500
+root: /
+id: 44
+parent: 41
+devno: 0:36
+------ fs:
+source: sunrpc
+target: /var/lib/nfs/rpc_pipefs
+fstype: rpc_pipefs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 45
+parent: 20
+devno: 0:37
+------ fs:
+source: //foo.home/bar/
+target: /mnt/sounds
+fstype: cifs
+optstr: rw,relatime,unc=\\foo.home\bar,username=kzak,domain=SRGROUP,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.111.1,posixpaths,serverino,acl,rsize=16384,wsize=57344
+VFS-optstr: rw,relatime
+FS-opstr: rw,unc=\\foo.home\bar,username=kzak,domain=SRGROUP,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.111.1,posixpaths,serverino,acl,rsize=16384,wsize=57344
+root: /
+id: 47
+parent: 20
+devno: 0:38
+------ fs:
+source: tmpfs
+target: /mnt/test/foo bar
+fstype: tmpfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+optional-fields: 'shared:323'
+root: /
+id: 49
+parent: 20
+devno: 0:56
diff --git a/tests/expected/libmount/tabfiles-parse-mountinfo-nosrc b/tests/expected/libmount/tabfiles-parse-mountinfo-nosrc
new file mode 100644
index 0000000..3d44ef6
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-parse-mountinfo-nosrc
@@ -0,0 +1,78 @@
+------ fs:
+source: /proc
+target: /proc
+fstype: proc
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 15
+parent: 20
+devno: 0:3
+------ fs:
+source: /sys
+target: /sys
+fstype: sysfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 16
+parent: 20
+devno: 0:15
+------ fs:
+source: udev
+target: /dev
+fstype: devtmpfs
+optstr: rw,relatime,size=1983516k,nr_inodes=495879,mode=755
+VFS-optstr: rw,relatime
+FS-opstr: rw,size=1983516k,nr_inodes=495879,mode=755
+root: /
+id: 17
+parent: 20
+devno: 0:5
+------ fs:
+source: devpts
+target: /dev/pts
+fstype: devpts
+optstr: rw,relatime,gid=5,mode=620,ptmxmode=000
+VFS-optstr: rw,relatime
+FS-opstr: rw,gid=5,mode=620,ptmxmode=000
+root: /
+id: 18
+parent: 17
+devno: 0:10
+------ fs:
+source: tmpfs
+target: /dev/shm
+fstype: tmpfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 19
+parent: 17
+devno: 0:16
+------ fs:
+source: /dev/sda4
+target: /
+fstype: ext3
+optstr: rw,noatime,errors=continue,user_xattr,acl,barrier=0,data=ordered
+VFS-optstr: rw,noatime
+FS-opstr: rw,errors=continue,user_xattr,acl,barrier=0,data=ordered
+root: /
+id: 20
+parent: 1
+devno: 8:4
+------ fs:
+source:
+target: /mnt/test
+fstype: tmpfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+optional-fields: 'shared:212'
+root: /
+id: 21
+parent: 20
+devno: 0:53
diff --git a/tests/expected/libmount/tabfiles-parse-mtab b/tests/expected/libmount/tabfiles-parse-mtab
new file mode 100644
index 0000000..93f4849
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-parse-mtab
@@ -0,0 +1,75 @@
+------ fs:
+source: /dev/sda4
+target: /
+fstype: ext3
+optstr: rw,noatime
+VFS-optstr: rw,noatime
+------ fs:
+source: proc
+target: /proc
+fstype: proc
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: sysfs
+target: /sys
+fstype: sysfs
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: devpts
+target: /dev/pts
+fstype: devpts
+optstr: rw,gid=5,mode=620
+VFS-optstr: rw
+FS-opstr: gid=5,mode=620
+------ fs:
+source: tmpfs
+target: /dev/shm
+fstype: tmpfs
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: /dev/sda6
+target: /boot
+fstype: ext3
+optstr: rw,noatime
+VFS-optstr: rw,noatime
+------ fs:
+source: /dev/mapper/kzak-home
+target: /home/kzak
+fstype: ext4
+optstr: rw,noatime
+VFS-optstr: rw,noatime
+------ fs:
+source: none
+target: /proc/sys/fs/binfmt_misc
+fstype: binfmt_misc
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: fusectl
+target: /sys/fs/fuse/connections
+fstype: fusectl
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: gvfs-fuse-daemon
+target: /home/kzak/.gvfs
+fstype: fuse.gvfs-fuse-daemon
+optstr: rw,nosuid,nodev,user=kzak
+VFS-optstr: rw,nosuid,nodev
+user-optstr: user=kzak
+------ fs:
+source: sunrpc
+target: /var/lib/nfs/rpc_pipefs
+fstype: rpc_pipefs
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: none
+target: /var/tmp/ / / / / / / / / / / / / / /
+fstype: overlay
+optstr: rw,relatime,lowerdir=lower,upperdir=upper,workdir=work
+VFS-optstr: rw,relatime
+FS-opstr: lowerdir=lower,upperdir=upper,workdir=work
diff --git a/tests/expected/libmount/tabfiles-parse-swaps b/tests/expected/libmount/tabfiles-parse-swaps
new file mode 100644
index 0000000..bd781d4
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-parse-swaps
@@ -0,0 +1,22 @@
+------ fs:
+source: /dev/dm-2
+target: (null)
+fstype: swap
+swaptype: partition
+size: 8151036
+usedsize: 2283436
+priority: -2
+------ fs:
+source: /some/swapfile
+target: (null)
+fstype: swap
+swaptype: file
+size: 111
+usedsize: 111
+------ fs:
+source: /some/swapfile2
+target: (null)
+fstype: swap
+swaptype: file
+size: 111
+usedsize: 111
diff --git a/tests/expected/libmount/tabfiles-py-copy b/tests/expected/libmount/tabfiles-py-copy
new file mode 100644
index 0000000..0054586
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-py-copy
@@ -0,0 +1,18 @@
+ORIGINAL:
+------ fs:
+source: UUID=d3a8f783-df75-4dc8-9163-975a891052c0
+target: /
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 1
+COPY:
+------ fs:
+source: UUID=d3a8f783-df75-4dc8-9163-975a891052c0
+target: /
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 1
diff --git a/tests/expected/libmount/tabfiles-py-find-pair b/tests/expected/libmount/tabfiles-py-find-pair
new file mode 100644
index 0000000..fbd730a
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-py-find-pair
@@ -0,0 +1,6 @@
+------ fs:
+source: /dev/mapper/kzak-home
+target: /home/kzak
+fstype: ext4
+optstr: rw,noatime
+VFS-optstr: rw,noatime
diff --git a/tests/expected/libmount/tabfiles-py-find-source b/tests/expected/libmount/tabfiles-py-find-source
new file mode 100644
index 0000000..474652c
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-py-find-source
@@ -0,0 +1,8 @@
+------ fs:
+source: UUID=fef7ccb3-821c-4de8-88dc-71472be5946f
+target: /boot
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 2
diff --git a/tests/expected/libmount/tabfiles-py-find-target b/tests/expected/libmount/tabfiles-py-find-target
new file mode 100644
index 0000000..1a51bd5
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-py-find-target
@@ -0,0 +1,6 @@
+------ fs:
+source: /dev/mapper/foo
+target: /home/foo
+fstype: ext4
+optstr: noatime,defaults
+VFS-optstr: noatime
diff --git a/tests/expected/libmount/tabfiles-py-find-target2 b/tests/expected/libmount/tabfiles-py-find-target2
new file mode 100644
index 0000000..8a6c57b
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-py-find-target2
@@ -0,0 +1,5 @@
+------ fs:
+source: /dev/foo
+target: /any/foo/
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-py-find-target3 b/tests/expected/libmount/tabfiles-py-find-target3
new file mode 100644
index 0000000..8a6c57b
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-py-find-target3
@@ -0,0 +1,5 @@
+------ fs:
+source: /dev/foo
+target: /any/foo/
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-py-parse-fstab b/tests/expected/libmount/tabfiles-py-parse-fstab
new file mode 100644
index 0000000..d661526
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-py-parse-fstab
@@ -0,0 +1,65 @@
+------ fs:
+source: UUID=d3a8f783-df75-4dc8-9163-975a891052c0
+target: /
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 1
+------ fs:
+source: UUID=fef7ccb3-821c-4de8-88dc-71472be5946f
+target: /boot
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 2
+------ fs:
+source: UUID=1f2aa318-9c34-462e-8d29-260819ffd657
+target: swap
+fstype: swap
+optstr: defaults
+------ fs:
+source: tmpfs
+target: /dev/shm
+fstype: tmpfs
+optstr: defaults
+------ fs:
+source: devpts
+target: /dev/pts
+fstype: devpts
+optstr: gid=5,mode=620
+FS-opstr: gid=5,mode=620
+------ fs:
+source: sysfs
+target: /sys
+fstype: sysfs
+optstr: defaults
+------ fs:
+source: proc
+target: /proc
+fstype: proc
+optstr: defaults
+------ fs:
+source: /dev/mapper/foo
+target: /home/foo
+fstype: ext4
+optstr: noatime,defaults
+VFS-optstr: noatime
+------ fs:
+source: foo.com:/mnt/share
+target: /mnt/remote
+fstype: nfs
+optstr: noauto
+user-optstr: noauto
+------ fs:
+source: //bar.com/gogogo
+target: /mnt/gogogo
+fstype: cifs
+optstr: user=SRGROUP/baby,noauto
+user-optstr: user=SRGROUP/baby,noauto
+------ fs:
+source: /dev/foo
+target: /any/foo/
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-py-parse-fstab-broken b/tests/expected/libmount/tabfiles-py-parse-fstab-broken
new file mode 100644
index 0000000..b838fbc
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-py-parse-fstab-broken
@@ -0,0 +1,63 @@
+
+
+------ fs:
+source: UUID=d3a8f783-df75-4dc8-9163-975a891052c0
+target: /
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 1
+------ fs:
+source: UUID=fef7ccb3-821c-4de8-88dc-71472be5946f
+target: /boot
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 2
+------ fs:
+source: UUID=1f2aa318-9c34-462e-8d29-260819ffd657
+target: swap
+fstype: swap
+optstr: defaults
+------ fs:
+source: tmpfs
+target: /dev/shm
+fstype: tmpfs
+optstr: defaults
+------ fs:
+source: devpts
+target: /dev/pts
+fstype: devpts
+optstr: gid=5,mode=620
+FS-opstr: gid=5,mode=620
+------ fs:
+source: sysfs
+target: /sys
+fstype: sysfs
+optstr: defaults
+------ fs:
+source: proc
+target: /proc
+fstype: proc
+optstr: defaults
+------ fs:
+source: /dev/mapper/foo
+target: /home/foo
+fstype: ext4
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+------ fs:
+source: foo.com:/mnt/share
+target: /mnt/remote
+fstype: nfs
+optstr: noauto
+user-optstr: noauto
+------ fs:
+source: //bar.com/gogogo
+target: /mnt/gogogo
+fstype: cifs
+optstr: user=SRGROUP/baby,noauto
+user-optstr: user=SRGROUP/baby,noauto
diff --git a/tests/expected/libmount/tabfiles-py-parse-fstab-full b/tests/expected/libmount/tabfiles-py-parse-fstab-full
new file mode 100644
index 0000000..f1caff6
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-py-parse-fstab-full
@@ -0,0 +1,83 @@
+Initial comment:
+"#
+ # this is a leading comment
+#
+
+"
+------ fs:
+source: UUID=d3a8f783-df75-4dc8-9163-975a891052c0
+target: /
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 1
+comment: '# this comments belongs to the first fs
+'
+------ fs:
+source: UUID=fef7ccb3-821c-4de8-88dc-71472be5946f
+target: /boot
+fstype: ext3
+optstr: noatime,defaults
+VFS-optstr: noatime
+freq: 1
+pass: 2
+------ fs:
+source: UUID=1f2aa318-9c34-462e-8d29-260819ffd657
+target: swap
+fstype: swap
+optstr: defaults
+comment: '
+# 3rd fs comment + newline padding
+
+'
+------ fs:
+source: tmpfs
+target: /dev/shm
+fstype: tmpfs
+optstr: defaults
+------ fs:
+source: devpts
+target: /dev/pts
+fstype: devpts
+optstr: gid=5,mode=620
+FS-opstr: gid=5,mode=620
+------ fs:
+source: sysfs
+target: /sys
+fstype: sysfs
+optstr: defaults
+------ fs:
+source: proc
+target: /proc
+fstype: proc
+optstr: defaults
+------ fs:
+source: /dev/mapper/foo
+target: /home/foo
+fstype: ext4
+optstr: noatime,defaults
+VFS-optstr: noatime
+comment: '# this is comment
+'
+------ fs:
+source: foo.com:/mnt/share
+target: /mnt/remote
+fstype: nfs
+optstr: noauto
+user-optstr: noauto
+------ fs:
+source: //bar.com/gogogo
+target: /mnt/gogogo
+fstype: cifs
+optstr: user=SRGROUP/baby,noauto
+user-optstr: user=SRGROUP/baby,noauto
+------ fs:
+source: /dev/foo
+target: /any/foo/
+fstype: auto
+optstr: defaults
+Trailing comment:
+"
+#this is a trailing comment
+"
diff --git a/tests/expected/libmount/tabfiles-py-parse-mountinfo b/tests/expected/libmount/tabfiles-py-parse-mountinfo
new file mode 100644
index 0000000..d5ba524
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-py-parse-mountinfo
@@ -0,0 +1,364 @@
+------ fs:
+source: /proc
+target: /proc
+fstype: proc
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 15
+parent: 20
+devno: 0:3
+------ fs:
+source: /sys
+target: /sys
+fstype: sysfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 16
+parent: 20
+devno: 0:15
+------ fs:
+source: udev
+target: /dev
+fstype: devtmpfs
+optstr: rw,relatime,size=1983516k,nr_inodes=495879,mode=755
+VFS-optstr: rw,relatime
+FS-opstr: rw,size=1983516k,nr_inodes=495879,mode=755
+root: /
+id: 17
+parent: 20
+devno: 0:5
+------ fs:
+source: devpts
+target: /dev/pts
+fstype: devpts
+optstr: rw,relatime,gid=5,mode=620,ptmxmode=000
+VFS-optstr: rw,relatime
+FS-opstr: rw,gid=5,mode=620,ptmxmode=000
+root: /
+id: 18
+parent: 17
+devno: 0:10
+------ fs:
+source: tmpfs
+target: /dev/shm
+fstype: tmpfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 19
+parent: 17
+devno: 0:16
+------ fs:
+source: /dev/sda4
+target: /
+fstype: ext3
+optstr: rw,noatime,errors=continue,user_xattr,acl,barrier=0,data=ordered
+VFS-optstr: rw,noatime
+FS-opstr: rw,errors=continue,user_xattr,acl,barrier=0,data=ordered
+root: /
+id: 20
+parent: 1
+devno: 8:4
+------ fs:
+source: tmpfs
+target: /sys/fs/cgroup
+fstype: tmpfs
+optstr: rw,nosuid,nodev,noexec,relatime,mode=755
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,mode=755
+root: /
+id: 21
+parent: 16
+devno: 0:17
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/systemd
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd
+root: /
+id: 22
+parent: 21
+devno: 0:18
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/cpuset
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,cpuset
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,cpuset
+root: /
+id: 23
+parent: 21
+devno: 0:19
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/ns
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,ns
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,ns
+root: /
+id: 24
+parent: 21
+devno: 0:20
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/cpu
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,cpu
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,cpu
+root: /
+id: 25
+parent: 21
+devno: 0:21
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/cpuacct
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,cpuacct
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,cpuacct
+root: /
+id: 26
+parent: 21
+devno: 0:22
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/memory
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,memory
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,memory
+root: /
+id: 27
+parent: 21
+devno: 0:23
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/devices
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,devices
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,devices
+root: /
+id: 28
+parent: 21
+devno: 0:24
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/freezer
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,freezer
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,freezer
+root: /
+id: 29
+parent: 21
+devno: 0:25
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/net_cls
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,net_cls
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,net_cls
+root: /
+id: 30
+parent: 21
+devno: 0:26
+------ fs:
+source: cgroup
+target: /sys/fs/cgroup/blkio
+fstype: cgroup
+optstr: rw,nosuid,nodev,noexec,relatime,blkio
+VFS-optstr: rw,nosuid,nodev,noexec,relatime
+FS-opstr: rw,blkio
+root: /
+id: 31
+parent: 21
+devno: 0:27
+------ fs:
+source: systemd-1
+target: /sys/kernel/security
+fstype: autofs
+optstr: rw,relatime,fd=22,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+VFS-optstr: rw,relatime
+FS-opstr: rw,fd=22,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+root: /
+id: 32
+parent: 16
+devno: 0:28
+------ fs:
+source: systemd-1
+target: /dev/hugepages
+fstype: autofs
+optstr: rw,relatime,fd=23,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+VFS-optstr: rw,relatime
+FS-opstr: rw,fd=23,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+root: /
+id: 33
+parent: 17
+devno: 0:29
+------ fs:
+source: systemd-1
+target: /sys/kernel/debug
+fstype: autofs
+optstr: rw,relatime,fd=24,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+VFS-optstr: rw,relatime
+FS-opstr: rw,fd=24,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+root: /
+id: 34
+parent: 16
+devno: 0:30
+------ fs:
+source: systemd-1
+target: /proc/sys/fs/binfmt_misc
+fstype: autofs
+optstr: rw,relatime,fd=25,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+VFS-optstr: rw,relatime
+FS-opstr: rw,fd=25,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+root: /
+id: 35
+parent: 15
+devno: 0:31
+------ fs:
+source: systemd-1
+target: /dev/mqueue
+fstype: autofs
+optstr: rw,relatime,fd=26,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+VFS-optstr: rw,relatime
+FS-opstr: rw,fd=26,pgrp=1,timeout=300,minproto=5,maxproto=5,direct
+root: /
+id: 36
+parent: 17
+devno: 0:32
+------ fs:
+source: /proc/bus/usb
+target: /proc/bus/usb
+fstype: usbfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 37
+parent: 15
+devno: 0:14
+------ fs:
+source: hugetlbfs
+target: /dev/hugepages
+fstype: hugetlbfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 38
+parent: 33
+devno: 0:33
+------ fs:
+source: mqueue
+target: /dev/mqueue
+fstype: mqueue
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 39
+parent: 36
+devno: 0:12
+------ fs:
+source: /dev/sda6
+target: /boot
+fstype: ext3
+optstr: rw,noatime,errors=continue,barrier=0,data=ordered
+VFS-optstr: rw,noatime
+FS-opstr: rw,errors=continue,barrier=0,data=ordered
+root: /
+id: 40
+parent: 20
+devno: 8:6
+------ fs:
+source: /dev/mapper/kzak-home
+target: /home/kzak
+fstype: ext4
+optstr: rw,noatime,barrier=1,data=ordered
+VFS-optstr: rw,noatime
+FS-opstr: rw,barrier=1,data=ordered
+root: /
+id: 41
+parent: 20
+devno: 253:0
+------ fs:
+source: none
+target: /proc/sys/fs/binfmt_misc
+fstype: binfmt_misc
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 42
+parent: 35
+devno: 0:34
+------ fs:
+source: fusectl
+target: /sys/fs/fuse/connections
+fstype: fusectl
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 43
+parent: 16
+devno: 0:35
+------ fs:
+source: gvfs-fuse-daemon
+target: /home/kzak/.gvfs
+fstype: fuse.gvfs-fuse-daemon
+optstr: rw,nosuid,nodev,relatime,user_id=500,group_id=500
+VFS-optstr: rw,nosuid,nodev,relatime
+FS-opstr: rw,user_id=500,group_id=500
+root: /
+id: 44
+parent: 41
+devno: 0:36
+------ fs:
+source: sunrpc
+target: /var/lib/nfs/rpc_pipefs
+fstype: rpc_pipefs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+root: /
+id: 45
+parent: 20
+devno: 0:37
+------ fs:
+source: //foo.home/bar/
+target: /mnt/sounds
+fstype: cifs
+optstr: rw,relatime,unc=\\foo.home\bar,username=kzak,domain=SRGROUP,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.111.1,posixpaths,serverino,acl,rsize=16384,wsize=57344
+VFS-optstr: rw,relatime
+FS-opstr: rw,unc=\\foo.home\bar,username=kzak,domain=SRGROUP,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.111.1,posixpaths,serverino,acl,rsize=16384,wsize=57344
+root: /
+id: 47
+parent: 20
+devno: 0:38
+------ fs:
+source: tmpfs
+target: /mnt/test/foo bar
+fstype: tmpfs
+optstr: rw,relatime
+VFS-optstr: rw,relatime
+FS-opstr: rw
+optional-fields: 'shared:323'
+root: /
+id: 49
+parent: 20
+devno: 0:56
diff --git a/tests/expected/libmount/tabfiles-py-parse-mtab b/tests/expected/libmount/tabfiles-py-parse-mtab
new file mode 100644
index 0000000..93f4849
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-py-parse-mtab
@@ -0,0 +1,75 @@
+------ fs:
+source: /dev/sda4
+target: /
+fstype: ext3
+optstr: rw,noatime
+VFS-optstr: rw,noatime
+------ fs:
+source: proc
+target: /proc
+fstype: proc
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: sysfs
+target: /sys
+fstype: sysfs
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: devpts
+target: /dev/pts
+fstype: devpts
+optstr: rw,gid=5,mode=620
+VFS-optstr: rw
+FS-opstr: gid=5,mode=620
+------ fs:
+source: tmpfs
+target: /dev/shm
+fstype: tmpfs
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: /dev/sda6
+target: /boot
+fstype: ext3
+optstr: rw,noatime
+VFS-optstr: rw,noatime
+------ fs:
+source: /dev/mapper/kzak-home
+target: /home/kzak
+fstype: ext4
+optstr: rw,noatime
+VFS-optstr: rw,noatime
+------ fs:
+source: none
+target: /proc/sys/fs/binfmt_misc
+fstype: binfmt_misc
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: fusectl
+target: /sys/fs/fuse/connections
+fstype: fusectl
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: gvfs-fuse-daemon
+target: /home/kzak/.gvfs
+fstype: fuse.gvfs-fuse-daemon
+optstr: rw,nosuid,nodev,user=kzak
+VFS-optstr: rw,nosuid,nodev
+user-optstr: user=kzak
+------ fs:
+source: sunrpc
+target: /var/lib/nfs/rpc_pipefs
+fstype: rpc_pipefs
+optstr: rw
+VFS-optstr: rw
+------ fs:
+source: none
+target: /var/tmp/ / / / / / / / / / / / / / /
+fstype: overlay
+optstr: rw,relatime,lowerdir=lower,upperdir=upper,workdir=work
+VFS-optstr: rw,relatime
+FS-opstr: lowerdir=lower,upperdir=upper,workdir=work
diff --git a/tests/expected/libmount/tabfiles-tags-fstab-dev b/tests/expected/libmount/tabfiles-tags-fstab-dev
new file mode 100644
index 0000000..823a19c
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-fstab-dev
@@ -0,0 +1,5 @@
+------ fs:
+
+target: /mnt/mountpoint3
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-tags-fstab-dev2label b/tests/expected/libmount/tabfiles-tags-fstab-dev2label
new file mode 100644
index 0000000..78d04a4
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-fstab-dev2label
@@ -0,0 +1,5 @@
+------ fs:
+source: LABEL=testLibmount
+target: /mnt/mountpoint
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-tags-fstab-label b/tests/expected/libmount/tabfiles-tags-fstab-label
new file mode 100644
index 0000000..78d04a4
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-fstab-label
@@ -0,0 +1,5 @@
+------ fs:
+source: LABEL=testLibmount
+target: /mnt/mountpoint
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-tags-fstab-label2dev b/tests/expected/libmount/tabfiles-tags-fstab-label2dev
new file mode 100644
index 0000000..78d04a4
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-fstab-label2dev
@@ -0,0 +1,5 @@
+------ fs:
+source: LABEL=testLibmount
+target: /mnt/mountpoint
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-tags-fstab-label2uuid b/tests/expected/libmount/tabfiles-tags-fstab-label2uuid
new file mode 100644
index 0000000..78d04a4
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-fstab-label2uuid
@@ -0,0 +1,5 @@
+------ fs:
+source: LABEL=testLibmount
+target: /mnt/mountpoint
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-tags-fstab-uuid b/tests/expected/libmount/tabfiles-tags-fstab-uuid
new file mode 100644
index 0000000..67d4e7b
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-fstab-uuid
@@ -0,0 +1,5 @@
+------ fs:
+source: UUID=de1bc6e9-34ab-4151-a1d7-900042eee8d9
+target: /mnt/mountpoint2
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-tags-py-fstab-dev b/tests/expected/libmount/tabfiles-tags-py-fstab-dev
new file mode 100644
index 0000000..823a19c
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-py-fstab-dev
@@ -0,0 +1,5 @@
+------ fs:
+
+target: /mnt/mountpoint3
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-tags-py-fstab-dev2label b/tests/expected/libmount/tabfiles-tags-py-fstab-dev2label
new file mode 100644
index 0000000..78d04a4
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-py-fstab-dev2label
@@ -0,0 +1,5 @@
+------ fs:
+source: LABEL=testLibmount
+target: /mnt/mountpoint
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-tags-py-fstab-label b/tests/expected/libmount/tabfiles-tags-py-fstab-label
new file mode 100644
index 0000000..78d04a4
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-py-fstab-label
@@ -0,0 +1,5 @@
+------ fs:
+source: LABEL=testLibmount
+target: /mnt/mountpoint
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-tags-py-fstab-label2dev b/tests/expected/libmount/tabfiles-tags-py-fstab-label2dev
new file mode 100644
index 0000000..78d04a4
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-py-fstab-label2dev
@@ -0,0 +1,5 @@
+------ fs:
+source: LABEL=testLibmount
+target: /mnt/mountpoint
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-tags-py-fstab-label2uuid b/tests/expected/libmount/tabfiles-tags-py-fstab-label2uuid
new file mode 100644
index 0000000..78d04a4
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-py-fstab-label2uuid
@@ -0,0 +1,5 @@
+------ fs:
+source: LABEL=testLibmount
+target: /mnt/mountpoint
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/tabfiles-tags-py-fstab-uuid b/tests/expected/libmount/tabfiles-tags-py-fstab-uuid
new file mode 100644
index 0000000..67d4e7b
--- /dev/null
+++ b/tests/expected/libmount/tabfiles-tags-py-fstab-uuid
@@ -0,0 +1,5 @@
+------ fs:
+source: UUID=de1bc6e9-34ab-4151-a1d7-900042eee8d9
+target: /mnt/mountpoint2
+fstype: auto
+optstr: defaults
diff --git a/tests/expected/libmount/update-fstab-add b/tests/expected/libmount/update-fstab-add
new file mode 100644
index 0000000..2b36d58
--- /dev/null
+++ b/tests/expected/libmount/update-fstab-add
@@ -0,0 +1,3 @@
+/dev/sda1 /mnt/foo ext3 rw,bbb,ccc,fff=FFF,ddd,noexec 1 2
+/dev/sda2 /mnt/bar auto defaults 1 2
+/dev/sda3 /mnt/bar auto rw,context="some,selinux,junk",noatime 1 2
diff --git a/tests/expected/libmount/update-fstab-replace b/tests/expected/libmount/update-fstab-replace
new file mode 100644
index 0000000..dc8d1df
--- /dev/null
+++ b/tests/expected/libmount/update-fstab-replace
@@ -0,0 +1,24 @@
+#
+ # this is a leading comment
+#
+
+# this comments belongs to the first fs
+UUID=d3a8f783-df75-4dc8-9163-975a891052c0 / ext3 noatime,defaults 1 1
+UUID=fef7ccb3-821c-4de8-88dc-71472be5946f /boot ext3 noatime,defaults 1 2
+
+# 3rd fs comment + newline padding
+
+UUID=1f2aa318-9c34-462e-8d29-260819ffd657 swap swap defaults 0 0
+tmpfs /dev/shm tmpfs defaults 0 0
+devpts /dev/pts devpts gid=5,mode=620 0 0
+sysfs /sys sysfs defaults 0 0
+proc /proc proc defaults 0 0
+# this is comment
+/dev/mapper/foo /home/foo ext4 noatime,defaults 0 0
+foo.com:/mnt/share /mnt/remote nfs noauto 0 0
+//bar.com/gogogo /mnt/gogogo cifs user=SRGROUP/baby,noauto 0 0
+/dev/foo /any/foo/ auto defaults 0 0
+# this is new filesystem
+LABEL=foo /mnt/foo none rw 0 0
+
+#this is a trailing comment
diff --git a/tests/expected/libmount/update-mtab-mount b/tests/expected/libmount/update-mtab-mount
new file mode 100644
index 0000000..6fdf7c1
--- /dev/null
+++ b/tests/expected/libmount/update-mtab-mount
@@ -0,0 +1,5 @@
+/dev/sda1 /mnt/foo ext3 rw,noexec,bbb,ccc,fff=FFF,ddd 0 0
+/dev/sdb1 /mnt/bar ext3 ro,noatime,gg=G,ffff=f 0 0
+/dev/sda2 /mnt/bar ext3 rw,noatime 0 0
+/dev/sda1 /mnt/gogo ext3 rw,noatime,nosuid 0 0
+none /proc proc rw 0 0
diff --git a/tests/expected/libmount/update-mtab-move b/tests/expected/libmount/update-mtab-move
new file mode 100644
index 0000000..6185b6b
--- /dev/null
+++ b/tests/expected/libmount/update-mtab-move
@@ -0,0 +1,5 @@
+/dev/sda1 /mnt/newfoo ext3 rw,noexec,bbb,ccc,fff=FFF,ddd 0 0
+/dev/sdb1 /mnt/bar ext3 ro,noatime,gg=G,ffff=f 0 0
+/dev/sda2 /mnt/newbar ext3 rw,noatime 0 0
+/dev/sda1 /mnt/gogo ext3 rw,noatime,nosuid 0 0
+none /proc proc rw 0 0
diff --git a/tests/expected/libmount/update-mtab-remount b/tests/expected/libmount/update-mtab-remount
new file mode 100644
index 0000000..c397b23
--- /dev/null
+++ b/tests/expected/libmount/update-mtab-remount
@@ -0,0 +1,5 @@
+/dev/sda1 /mnt/newfoo ext3 ro,noatime 0 0
+/dev/sdb1 /mnt/bar ext3 rw,atime,nosuid 0 0
+/dev/sda2 /mnt/newbar ext3 rw,noatime 0 0
+/dev/sda1 /mnt/gogo ext3 rw,noatime,nosuid 0 0
+none /proc proc rw 0 0
diff --git a/tests/expected/libmount/update-mtab-umount b/tests/expected/libmount/update-mtab-umount
new file mode 100644
index 0000000..be02573
--- /dev/null
+++ b/tests/expected/libmount/update-mtab-umount
@@ -0,0 +1,2 @@
+/dev/sda1 /mnt/newfoo ext3 ro,noatime 0 0
+/dev/sda2 /mnt/newbar ext3 rw,noatime 0 0
diff --git a/tests/expected/libmount/update-py-fstab-replace b/tests/expected/libmount/update-py-fstab-replace
new file mode 100644
index 0000000..dc8d1df
--- /dev/null
+++ b/tests/expected/libmount/update-py-fstab-replace
@@ -0,0 +1,24 @@
+#
+ # this is a leading comment
+#
+
+# this comments belongs to the first fs
+UUID=d3a8f783-df75-4dc8-9163-975a891052c0 / ext3 noatime,defaults 1 1
+UUID=fef7ccb3-821c-4de8-88dc-71472be5946f /boot ext3 noatime,defaults 1 2
+
+# 3rd fs comment + newline padding
+
+UUID=1f2aa318-9c34-462e-8d29-260819ffd657 swap swap defaults 0 0
+tmpfs /dev/shm tmpfs defaults 0 0
+devpts /dev/pts devpts gid=5,mode=620 0 0
+sysfs /sys sysfs defaults 0 0
+proc /proc proc defaults 0 0
+# this is comment
+/dev/mapper/foo /home/foo ext4 noatime,defaults 0 0
+foo.com:/mnt/share /mnt/remote nfs noauto 0 0
+//bar.com/gogogo /mnt/gogogo cifs user=SRGROUP/baby,noauto 0 0
+/dev/foo /any/foo/ auto defaults 0 0
+# this is new filesystem
+LABEL=foo /mnt/foo none rw 0 0
+
+#this is a trailing comment
diff --git a/tests/expected/libmount/update-utab-mount b/tests/expected/libmount/update-utab-mount
new file mode 100644
index 0000000..58a0179
--- /dev/null
+++ b/tests/expected/libmount/update-utab-mount
@@ -0,0 +1,3 @@
+SRC=/dev/sdb1 TARGET=/mnt/bar ROOT=/ OPTS=user
+SRC=/dev/sda2 TARGET=/mnt/xyz ROOT=/ OPTS=loop=/dev/loop0,uhelper=hal
+SRC=none TARGET=/proc ROOT=/ OPTS=user
diff --git a/tests/expected/libmount/update-utab-move b/tests/expected/libmount/update-utab-move
new file mode 100644
index 0000000..6008140
--- /dev/null
+++ b/tests/expected/libmount/update-utab-move
@@ -0,0 +1,3 @@
+SRC=/dev/sdb1 TARGET=/mnt/newbar ROOT=/ OPTS=user
+SRC=/dev/sda2 TARGET=/mnt/newxyz ROOT=/ OPTS=loop=/dev/loop0,uhelper=hal
+SRC=none TARGET=/proc ROOT=/ OPTS=user
diff --git a/tests/expected/libmount/update-utab-remount b/tests/expected/libmount/update-utab-remount
new file mode 100644
index 0000000..8e344b3
--- /dev/null
+++ b/tests/expected/libmount/update-utab-remount
@@ -0,0 +1,3 @@
+SRC=/dev/sdb1 TARGET=/mnt/newbar ROOT=/ OPTS=user
+SRC=/dev/sda2 TARGET=/mnt/newxyz ROOT=/ OPTS=user
+SRC=none TARGET=/proc ROOT=/ OPTS=user
diff --git a/tests/expected/libmount/update-utab-umount b/tests/expected/libmount/update-utab-umount
new file mode 100644
index 0000000..4c07d74
--- /dev/null
+++ b/tests/expected/libmount/update-utab-umount
@@ -0,0 +1 @@
+SRC=/dev/sda2 TARGET=/mnt/newxyz ROOT=/ OPTS=user
diff --git a/tests/expected/libmount/utils-ends-with b/tests/expected/libmount/utils-ends-with
new file mode 100644
index 0000000..f033a50
--- /dev/null
+++ b/tests/expected/libmount/utils-ends-with
@@ -0,0 +1 @@
+YES
diff --git a/tests/expected/libmount/utils-kernel-cmdline b/tests/expected/libmount/utils-kernel-cmdline
new file mode 100644
index 0000000..2a63165
--- /dev/null
+++ b/tests/expected/libmount/utils-kernel-cmdline
@@ -0,0 +1,5 @@
+'selinux=' found, argument: '0'
+'selinux' not found
+'ro' found
+'ro=' not found
+'root=' found, argument: 'UUID=33230ae2-1093-4353-824c-f7ca09a2a882'
diff --git a/tests/expected/libmount/utils-match-fstype b/tests/expected/libmount/utils-match-fstype
new file mode 100644
index 0000000..4736e08
--- /dev/null
+++ b/tests/expected/libmount/utils-match-fstype
@@ -0,0 +1 @@
+MATCH
diff --git a/tests/expected/libmount/utils-match-fstype-neg b/tests/expected/libmount/utils-match-fstype-neg
new file mode 100644
index 0000000..8262239
--- /dev/null
+++ b/tests/expected/libmount/utils-match-fstype-neg
@@ -0,0 +1 @@
+NOT-MATCH
diff --git a/tests/expected/libmount/utils-match-fstype-neg2 b/tests/expected/libmount/utils-match-fstype-neg2
new file mode 100644
index 0000000..8262239
--- /dev/null
+++ b/tests/expected/libmount/utils-match-fstype-neg2
@@ -0,0 +1 @@
+NOT-MATCH
diff --git a/tests/expected/libmount/utils-match-options b/tests/expected/libmount/utils-match-options
new file mode 100644
index 0000000..4736e08
--- /dev/null
+++ b/tests/expected/libmount/utils-match-options
@@ -0,0 +1 @@
+MATCH
diff --git a/tests/expected/libmount/utils-match-options-list b/tests/expected/libmount/utils-match-options-list
new file mode 100644
index 0000000..4736e08
--- /dev/null
+++ b/tests/expected/libmount/utils-match-options-list
@@ -0,0 +1 @@
+MATCH
diff --git a/tests/expected/libmount/utils-match-options-neg b/tests/expected/libmount/utils-match-options-neg
new file mode 100644
index 0000000..4736e08
--- /dev/null
+++ b/tests/expected/libmount/utils-match-options-neg
@@ -0,0 +1 @@
+MATCH
diff --git a/tests/expected/libmount/utils-match-options-neg-list b/tests/expected/libmount/utils-match-options-neg-list
new file mode 100644
index 0000000..8262239
--- /dev/null
+++ b/tests/expected/libmount/utils-match-options-neg-list
@@ -0,0 +1 @@
+NOT-MATCH
diff --git a/tests/expected/libmount/utils-match-options-neg-list2 b/tests/expected/libmount/utils-match-options-neg-list2
new file mode 100644
index 0000000..4736e08
--- /dev/null
+++ b/tests/expected/libmount/utils-match-options-neg-list2
@@ -0,0 +1 @@
+MATCH
diff --git a/tests/expected/libmount/utils-mountpoint b/tests/expected/libmount/utils-mountpoint
new file mode 100644
index 0000000..47fb251
--- /dev/null
+++ b/tests/expected/libmount/utils-mountpoint
@@ -0,0 +1 @@
+/proc: /proc
diff --git a/tests/expected/libmount/utils-mountpoint-root b/tests/expected/libmount/utils-mountpoint-root
new file mode 100644
index 0000000..c86cf0d
--- /dev/null
+++ b/tests/expected/libmount/utils-mountpoint-root
@@ -0,0 +1 @@
+/: /
diff --git a/tests/expected/libmount/utils-mountpoint-subdir b/tests/expected/libmount/utils-mountpoint-subdir
new file mode 100644
index 0000000..f21d31b
--- /dev/null
+++ b/tests/expected/libmount/utils-mountpoint-subdir
@@ -0,0 +1 @@
+/proc/sys/kernel: /proc
diff --git a/tests/expected/libmount/utils-starts-with b/tests/expected/libmount/utils-starts-with
new file mode 100644
index 0000000..f033a50
--- /dev/null
+++ b/tests/expected/libmount/utils-starts-with
@@ -0,0 +1 @@
+YES
diff --git a/tests/expected/libsmartcols/fromfile b/tests/expected/libsmartcols/fromfile
new file mode 100644
index 0000000..4155aa3
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile
@@ -0,0 +1 @@
+...done.
diff --git a/tests/expected/libsmartcols/fromfile-column-separator b/tests/expected/libsmartcols/fromfile-column-separator
new file mode 100644
index 0000000..8c5aa2a
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-column-separator
@@ -0,0 +1,11 @@
+NAME | NUM|TRUNC
+aaaa | 0|qqqqqqqqqqqqqqqqqX
+bbb | 100|dddddddddddddX
+ccccc | 21|ffffffffffffffffffffffffffffffffffffffffX
+dddddd| 3|ssssssssssX
+ee | 411|ddddddddddddddddddddddddddX
+ffff | 5111|jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjX
+gggggg|678993321|mmmmmmmmmmmmmmmmmmmX
+hhh | 7666666|lllllllllllllllllllllllllllllllllllllX
+iiiiii| 8765|yyyyyyyyyyyyyyyyyyyyyyyyyyyyX
+jj | 987456|pppppppppX
diff --git a/tests/expected/libsmartcols/fromfile-export b/tests/expected/libsmartcols/fromfile-export
new file mode 100644
index 0000000..f63afd8
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-export
@@ -0,0 +1,10 @@
+NAME="aaaa" NUM="0" TRUNC="qqqqqqqqqqqqqqqqqX"
+NAME="bbb" NUM="100" TRUNC="dddddddddddddX"
+NAME="ccccc" NUM="21" TRUNC="ffffffffffffffffffffffffffffffffffffffffX"
+NAME="dddddd" NUM="3" TRUNC="ssssssssssX"
+NAME="ee" NUM="411" TRUNC="ddddddddddddddddddddddddddX"
+NAME="ffff" NUM="5111" TRUNC="jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjX"
+NAME="gggggg" NUM="678993321" TRUNC="mmmmmmmmmmmmmmmmmmmX"
+NAME="hhh" NUM="7666666" TRUNC="lllllllllllllllllllllllllllllllllllllX"
+NAME="iiiiii" NUM="8765" TRUNC="yyyyyyyyyyyyyyyyyyyyyyyyyyyyX"
+NAME="jj" NUM="987456" TRUNC="pppppppppX"
diff --git a/tests/expected/libsmartcols/fromfile-hidden b/tests/expected/libsmartcols/fromfile-hidden
new file mode 100644
index 0000000..cf50bcb
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-hidden
@@ -0,0 +1,11 @@
+NAME NUM
+aaaa 0
+bbb 100
+ccccc 21
+dddddd 3
+ee 411
+ffff 5111
+gggggg 678993321
+hhh 7666666
+iiiiii 8765
+jj 987456
diff --git a/tests/expected/libsmartcols/fromfile-noextremes b/tests/expected/libsmartcols/fromfile-noextremes
new file mode 100644
index 0000000..4bac080
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-noextremes
@@ -0,0 +1,12 @@
+NAME NOEXTREME NUM NAME NUM
+aaaa qqqqqqX 0 aaaa 0
+bbb ddddddddX 100 bbb 100
+ccccc ffffffffffffffffffffffffffffffffffX
+ 21 ccccc 21
+dddddd sssX 3 dddddd 3
+ee ddX 411 ee 411
+ffff jjjjjX 5111 ffff 5111
+gggggg mmmmmmmX 678993321 gggggg 678993321
+hhh llllllllllX 7666666 hhh 7666666
+iiiiii yyyyyyX 8765 iiiiii 8765
+jj pppppX 987456 jj 987456
diff --git a/tests/expected/libsmartcols/fromfile-padding-default b/tests/expected/libsmartcols/fromfile-padding-default
new file mode 100644
index 0000000..f935be2
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-padding-default
@@ -0,0 +1,11 @@
+NAME.. ......NUM STRINGS STRINGS
+aaaa.. ........0 aaaa... aaaa
+bbb... ......100 bbb.... bbb
+ccccc. .......21 ccccc.. ccccc
+dddddd ........3 dddddd. dddddd
+ee.... ......411 ee..... ee
+ffff.. .....5111 .......
+gggggg 678993321 gggggg. gggggg
+hhh... ..7666666 hhh.... hhh
+iiiiii .....8765 iiiiii. iiiiii
+jj.... ...987456 jj..... jj
diff --git a/tests/expected/libsmartcols/fromfile-padding-maxout b/tests/expected/libsmartcols/fromfile-padding-maxout
new file mode 100644
index 0000000..3f73ce3
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-padding-maxout
@@ -0,0 +1,11 @@
+NAME.............. ..................NUM STRINGS............ STRINGS............
+aaaa.............. ....................0 aaaa............... aaaa...............
+bbb............... ..................100 bbb................ bbb................
+ccccc............. ...................21 ccccc.............. ccccc..............
+dddddd............ ....................3 dddddd............. dddddd.............
+ee................ ..................411 ee................. ee.................
+ffff.............. .................5111 ................... ...................
+gggggg............ ............678993321 gggggg............. gggggg.............
+hhh............... ..............7666666 hhh................ hhh................
+iiiiii............ .................8765 iiiiii............. iiiiii.............
+jj................ ...............987456 jj................. jj.................
diff --git a/tests/expected/libsmartcols/fromfile-padding-minout b/tests/expected/libsmartcols/fromfile-padding-minout
new file mode 100644
index 0000000..ac8eabc
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-padding-minout
@@ -0,0 +1,11 @@
+NAME.. ......NUM STRINGS STRINGS
+aaaa.. ........0 aaaa... aaaa
+bbb... ......100 bbb.... bbb
+ccccc. .......21 ccccc.. ccccc
+dddddd ........3 dddddd. dddddd
+ee.... ......411 ee..... ee
+ffff.. .....5111
+gggggg 678993321 gggggg. gggggg
+hhh... ..7666666 hhh.... hhh
+iiiiii .....8765 iiiiii. iiiiii
+jj.... ...987456 jj..... jj
diff --git a/tests/expected/libsmartcols/fromfile-raw b/tests/expected/libsmartcols/fromfile-raw
new file mode 100644
index 0000000..cc188aa
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-raw
@@ -0,0 +1,11 @@
+NAME NUM TRUNC
+aaaa 0 qqqqqqqqqqqqqqqqqX
+bbb 100 dddddddddddddX
+ccccc 21 ffffffffffffffffffffffffffffffffffffffffX
+dddddd 3 ssssssssssX
+ee 411 ddddddddddddddddddddddddddX
+ffff 5111 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjX
+gggggg 678993321 mmmmmmmmmmmmmmmmmmmX
+hhh 7666666 lllllllllllllllllllllllllllllllllllllX
+iiiiii 8765 yyyyyyyyyyyyyyyyyyyyyyyyyyyyX
+jj 987456 pppppppppX
diff --git a/tests/expected/libsmartcols/fromfile-right b/tests/expected/libsmartcols/fromfile-right
new file mode 100644
index 0000000..d78285a
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-right
@@ -0,0 +1,11 @@
+NAME NUM STRINGS
+aaaa 0 qqqqqqqqqqqqqqqqqX
+bbb 100 dddddddddddddX
+ccccc 21 ffffffffffffffffffffffffffffffffffffffffX
+dddddd 3 ssssssssssX
+ee 411 ddddddddddddddddddddddddddX
+ffff 5111 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjX
+gggggg 678993321 mmmmmmmmmmmmmmmmmmmX
+hhh 7666666 lllllllllllllllllllllllllllllllllllllX
+iiiiii 8765 yyyyyyyyyyyyyyyyyyyyyyyyyyyyX
+jj 987456 pppppppppX
diff --git a/tests/expected/libsmartcols/fromfile-right-maxout b/tests/expected/libsmartcols/fromfile-right-maxout
new file mode 100644
index 0000000..3bcb65a
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-right-maxout
@@ -0,0 +1,11 @@
+NAME NUM
+aaaa 0
+bbb 100
+ccccc 21
+dddddd 3
+ee 411
+ffff 5111
+gggggg 678993321
+hhh 7666666
+iiiiii 8765
+jj 987456
diff --git a/tests/expected/libsmartcols/fromfile-strictwidth b/tests/expected/libsmartcols/fromfile-strictwidth
new file mode 100644
index 0000000..41054b2
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-strictwidth
@@ -0,0 +1,11 @@
+NAME STRICT NUM
+aaaa 0 0
+bbb 1 100
+ccccc 2 21
+dddddd 3 3
+ee 4 411
+ffff 5 5111
+gggggg 6 678993321
+hhh 7 7666666
+iiiiii 8 8765
+jj 9 987456
diff --git a/tests/expected/libsmartcols/fromfile-tree b/tests/expected/libsmartcols/fromfile-tree
new file mode 100644
index 0000000..9d345f8
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-tree
@@ -0,0 +1,11 @@
+TREE ID PARENT STRINGS
+aaaa 1 0 qqqqqqqqqqqqqqqqqX
+|-bbb 2 1 dddddddddddddX
+| |-ee 5 2 ddddddddddddddddddddddddddX
+| `-ffff 6 2 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjX
+|-ccccc 3 1 ffffffffffffffffffffffffffffffffffffffffX
+| `-gggggg 7 3 mmmmmmmmmmmmmmmmmmmX
+| |-hhh 8 7 lllllllllllllllllllllllllllllllllllllX
+| | `-iiiiii 9 8 yyyyyyyyyyyyyyyyyyyyyyyyyyyyX
+| `-jj 10 7 pppppppppX
+`-dddddd 4 1 ssssssssssX
diff --git a/tests/expected/libsmartcols/fromfile-tree-end b/tests/expected/libsmartcols/fromfile-tree-end
new file mode 100644
index 0000000..41aebff
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-tree-end
@@ -0,0 +1,11 @@
+ID PARENT STRINGS TREE
+ 1 0 qqqqqqqqqqqqqqqqqX aaaa
+ 2 1 dddddddddddddX |-bbb
+ 5 2 ddddddddddddddddddddddddddX | |-ee
+ 6 2 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjX | `-ffff
+ 3 1 ffffffffffffffffffffffffffffffffffffffffX |-ccccc
+ 7 3 mmmmmmmmmmmmmmmmmmmX | `-gggggg
+ 8 7 lllllllllllllllllllllllllllllllllllllX | |-hhh
+ 9 8 yyyyyyyyyyyyyyyyyyyyyyyyyyyyX | | `-iiiiii
+10 7 pppppppppX | `-jj
+ 4 1 ssssssssssX `-dddddd
diff --git a/tests/expected/libsmartcols/fromfile-tree-json b/tests/expected/libsmartcols/fromfile-tree-json
new file mode 100644
index 0000000..3d65183
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-tree-json
@@ -0,0 +1,70 @@
+{
+ "testtable": [
+ {
+ "tree": "aaaa",
+ "id": "1",
+ "parent": "0",
+ "strings": "qqqqqqqqqqqqqqqqqX",
+ "children": [
+ {
+ "tree": "bbb",
+ "id": "2",
+ "parent": "1",
+ "strings": "dddddddddddddX",
+ "children": [
+ {
+ "tree": "ee",
+ "id": "5",
+ "parent": "2",
+ "strings": "ddddddddddddddddddddddddddX"
+ },{
+ "tree": "ffff",
+ "id": "6",
+ "parent": "2",
+ "strings": "jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjX"
+ }
+ ]
+ },{
+ "tree": "ccccc",
+ "id": "3",
+ "parent": "1",
+ "strings": "ffffffffffffffffffffffffffffffffffffffffX",
+ "children": [
+ {
+ "tree": "gggggg",
+ "id": "7",
+ "parent": "3",
+ "strings": "mmmmmmmmmmmmmmmmmmmX",
+ "children": [
+ {
+ "tree": "hhh",
+ "id": "8",
+ "parent": "7",
+ "strings": "lllllllllllllllllllllllllllllllllllllX",
+ "children": [
+ {
+ "tree": "iiiiii",
+ "id": "9",
+ "parent": "8",
+ "strings": "yyyyyyyyyyyyyyyyyyyyyyyyyyyyX"
+ }
+ ]
+ },{
+ "tree": "jj",
+ "id": "10",
+ "parent": "7",
+ "strings": "pppppppppX"
+ }
+ ]
+ }
+ ]
+ },{
+ "tree": "dddddd",
+ "id": "4",
+ "parent": "1",
+ "strings": "ssssssssssX"
+ }
+ ]
+ }
+ ]
+}
diff --git a/tests/expected/libsmartcols/fromfile-tree-middle b/tests/expected/libsmartcols/fromfile-tree-middle
new file mode 100644
index 0000000..b218331
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-tree-middle
@@ -0,0 +1,11 @@
+ID PARENT TREE STRINGS
+ 1 0 aaaa qqqqqqqqqqqqqqqqqX
+ 2 1 |-bbb dddddddddddddX
+ 5 2 | |-ee ddddddddddddddddddddddddddX
+ 6 2 | `-ffff jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjX
+ 3 1 |-ccccc ffffffffffffffffffffffffffffffffffffffffX
+ 7 3 | `-gggggg mmmmmmmmmmmmmmmmmmmX
+ 8 7 | |-hhh lllllllllllllllllllllllllllllllllllllX
+ 9 8 | | `-iiiiii yyyyyyyyyyyyyyyyyyyyyyyyyyyyX
+10 7 | `-jj pppppppppX
+ 4 1 `-dddddd ssssssssssX
diff --git a/tests/expected/libsmartcols/fromfile-trunc b/tests/expected/libsmartcols/fromfile-trunc
new file mode 100644
index 0000000..6a095dc
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-trunc
@@ -0,0 +1,11 @@
+NAME NUM TRUNC
+aaaa 0 qqqqqqqqqqqqqqqqqX
+bbb 100 dddddddddddddX
+ccccc 21 fffffffffffffffffffffff
+dddddd 3 ssssssssssX
+ee 411 ddddddddddddddddddddddd
+ffff 5111 jjjjjjjjjjjjjjjjjjjjjjj
+gggggg 678993321 mmmmmmmmmmmmmmmmmmmX
+hhh 7666666 lllllllllllllllllllllll
+iiiiii 8765 yyyyyyyyyyyyyyyyyyyyyyy
+jj 987456 pppppppppX
diff --git a/tests/expected/libsmartcols/fromfile-wrap b/tests/expected/libsmartcols/fromfile-wrap
new file mode 100644
index 0000000..bb94f49
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-wrap
@@ -0,0 +1,17 @@
+NAME NUM WRAP
+aaaa 0 qqqqqqqqqqqqqqqqqX
+bbb 100 dddddddddddddX
+ccccc 21 fffffffffffffffffffffff
+ fffffffffffffffffX
+dddddd 3 ssssssssssX
+ee 411 ddddddddddddddddddddddd
+ dddX
+ffff 5111 jjjjjjjjjjjjjjjjjjjjjjj
+ jjjjjjjjjjjjjjjjjjjjjjj
+ jjjX
+gggggg 678993321 mmmmmmmmmmmmmmmmmmmX
+hhh 7666666 lllllllllllllllllllllll
+ llllllllllllllX
+iiiiii 8765 yyyyyyyyyyyyyyyyyyyyyyy
+ yyyyyX
+jj 987456 pppppppppX
diff --git a/tests/expected/libsmartcols/fromfile-wrap-tree b/tests/expected/libsmartcols/fromfile-wrap-tree
new file mode 100644
index 0000000..a2db7a4
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-wrap-tree
@@ -0,0 +1,18 @@
+TREE ID PARENT WRAP
+aaaa 1 0 qqqqqqqqqqqqqqqqqX
+|-bbb 2 1 dddddddddddddX
+| |-ee 5 2 dddddddddddddddddddd
+| | ddddddX
+| `-ffff 6 2 jjjjjjjjjjjjjjjjjjjj
+| jjjjjjjjjjjjjjjjjjjj
+| jjjjjjjjjX
+|-ccccc 3 1 ffffffffffffffffffff
+| | ffffffffffffffffffff
+| | X
+| `-gggggg 7 3 mmmmmmmmmmmmmmmmmmmX
+| |-hhh 8 7 llllllllllllllllllll
+| | | lllllllllllllllllX
+| | `-iiiiii 9 8 yyyyyyyyyyyyyyyyyyyy
+| | yyyyyyyyX
+| `-jj 10 7 pppppppppX
+`-dddddd 4 1 ssssssssssX
diff --git a/tests/expected/libsmartcols/fromfile-wrapnl b/tests/expected/libsmartcols/fromfile-wrapnl
new file mode 100644
index 0000000..c747ebb
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-wrapnl
@@ -0,0 +1,19 @@
+NAME NUM WRAPNL
+aaaa 0 aaa
+bbb 100 bbbbb
+ccccc 21 cccc
+ CCCC
+dddddd 3 dddddddd
+ DDDD
+ DD
+ee 411 hello
+ baby
+ffff 5111 aaa
+ bbb
+ ccc
+ ddd
+gggggg 678993321 eee
+hhh 7666666 fffff
+iiiiii 8765 g
+ hhhhh
+jj 987456 ppppppppp
diff --git a/tests/expected/libsmartcols/fromfile-wrapnl-tree b/tests/expected/libsmartcols/fromfile-wrapnl-tree
new file mode 100644
index 0000000..3862cf1
--- /dev/null
+++ b/tests/expected/libsmartcols/fromfile-wrapnl-tree
@@ -0,0 +1,19 @@
+TREE ID PARENT WRAPNL
+aaaa 1 0 aaa
+|-bbb 2 1 bbbbb
+| |-ee 5 2 hello
+| | baby
+| `-ffff 6 2 aaa
+| bbb
+| ccc
+| ddd
+|-ccccc 3 1 cccc
+| | CCCC
+| `-gggggg 7 3 eee
+| |-hhh 8 7 fffff
+| | `-iiiiii 9 8 g
+| | hhhhh
+| `-jj 10 7 ppppppppp
+`-dddddd 4 1 dddddddd
+ DDDD
+ DD
diff --git a/tests/expected/libsmartcols/title b/tests/expected/libsmartcols/title
new file mode 100644
index 0000000..bb5d722
--- /dev/null
+++ b/tests/expected/libsmartcols/title
@@ -0,0 +1,16 @@
+ This is right title
+NAME DATA
+foo bla bla bla
+bar alb alb alb
+This is left title (without padding)
+NAME DATA
+foo bla bla bla
+bar alb alb alb
+=======================This is center title (with padding)======================
+NAME DATA
+foo bla bla bla
+bar alb alb alb
+This is left title (with padding)-----------------------------------------------
+NAME DATA
+foo bla bla bla
+bar alb alb alb