summaryrefslogtreecommitdiffstats
path: root/test/units/TEST-83-BTRFS.sh
blob: 4f10ae74682db7cf36bdf7f17c713a5b6f0067df (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/usr/bin/env bash
# SPDX-License-Identifier: LGPL-2.1-or-later
set -eux
set -o pipefail

FSTYPE="$(stat --file-system --format "%T" /)"

if [[ "$FSTYPE" != "btrfs" ]]; then
    echo "Root filesystem is $FSTYPE instead of btrfs, skipping"
    exit 77
fi

TEST_BTRFS_OFFSET=/usr/lib/systemd/tests/unit-tests/manual/test-btrfs-physical-offset

SWAPFILE=/var/tmp/swapfile

btrfs filesystem mkswapfile -s 10m "$SWAPFILE"
sync -f "$SWAPFILE"

offset_btrfs_progs="$(btrfs inspect-internal map-swapfile -r "$SWAPFILE")"
echo "btrfs-progs: $offset_btrfs_progs"

offset_btrfs_util="$("$TEST_BTRFS_OFFSET" "$SWAPFILE")"
echo "btrfs-util: $offset_btrfs_util"

(( offset_btrfs_progs == offset_btrfs_util ))

rm -f "$SWAPFILE"

/usr/lib/systemd/tests/unit-tests/manual/test-btrfs

touch /testok