xref: /aosp_15_r20/external/toybox/tests/blkid.test (revision cf5a6c84e2b8763fc1a7db14496fd4742913b199)
1*cf5a6c84SAndroid Build Coastguard Worker#!/bin/bash
2*cf5a6c84SAndroid Build Coastguard Worker
3*cf5a6c84SAndroid Build Coastguard Worker[ -f testing.sh ] && . testing.sh
4*cf5a6c84SAndroid Build Coastguard Worker
5*cf5a6c84SAndroid Build Coastguard Worker#testing "name" "command" "result" "infile" "stdin"
6*cf5a6c84SAndroid Build Coastguard Worker
7*cf5a6c84SAndroid Build Coastguard Workerfunction BLKID()
8*cf5a6c84SAndroid Build Coastguard Worker{
9*cf5a6c84SAndroid Build Coastguard Worker  file=$1
10*cf5a6c84SAndroid Build Coastguard Worker  shift
11*cf5a6c84SAndroid Build Coastguard Worker  bzcat $FILES/blkid/$file.bz2 > temp.img
12*cf5a6c84SAndroid Build Coastguard Worker  # e2fsprogs' blkid outputs trailing spaces; no other blkid does.
13*cf5a6c84SAndroid Build Coastguard Worker  blkid "$@" temp.img | sed 's/ $//'
14*cf5a6c84SAndroid Build Coastguard Worker  rm temp.img
15*cf5a6c84SAndroid Build Coastguard Worker}
16*cf5a6c84SAndroid Build Coastguard Worker
17*cf5a6c84SAndroid Build Coastguard Workertesting "cramfs" "BLKID cramfs" \
18*cf5a6c84SAndroid Build Coastguard Worker  'temp.img: LABEL="mycramfs" TYPE="cramfs"\n' "" ""
19*cf5a6c84SAndroid Build Coastguard Workertesting "ext2" "BLKID ext2" \
20*cf5a6c84SAndroid Build Coastguard Worker  'temp.img: LABEL="myext2" UUID="e59093ba-4135-4fdb-bcc4-f20beae4dfaf" TYPE="ext2"\n' \
21*cf5a6c84SAndroid Build Coastguard Worker  "" ""
22*cf5a6c84SAndroid Build Coastguard Workertesting "ext3" "BLKID ext3" \
23*cf5a6c84SAndroid Build Coastguard Worker  'temp.img: LABEL="myext3" UUID="79d1c877-1a0f-4e7d-b21d-fc32ae3ef101" SEC_TYPE="ext2" TYPE="ext3"\n' \
24*cf5a6c84SAndroid Build Coastguard Worker  "" ""
25*cf5a6c84SAndroid Build Coastguard Workertesting "ext4" "BLKID ext4" \
26*cf5a6c84SAndroid Build Coastguard Worker  'temp.img: LABEL="myext4" UUID="dc4b7c00-c0c0-4600-af7e-0335f09770fa" TYPE="ext4"\n' \
27*cf5a6c84SAndroid Build Coastguard Worker  "" ""
28*cf5a6c84SAndroid Build Coastguard Workertesting "f2fs" "BLKID f2fs" \
29*cf5a6c84SAndroid Build Coastguard Worker  'temp.img: LABEL="myf2fs" UUID="b53d3619-c204-4c0b-8504-36363578491c" TYPE="f2fs"\n' \
30*cf5a6c84SAndroid Build Coastguard Worker  "" ""
31*cf5a6c84SAndroid Build Coastguard Workertesting "iso" "BLKID iso" \
32*cf5a6c84SAndroid Build Coastguard Worker  'temp.img: LABEL="CDROM" UUID="2023-02-08-04-47-27-00" TYPE="iso9660"\n' \
33*cf5a6c84SAndroid Build Coastguard Worker  "" ""
34*cf5a6c84SAndroid Build Coastguard Workertesting "msdos" "BLKID msdos" \
35*cf5a6c84SAndroid Build Coastguard Worker  'temp.img: SEC_TYPE="msdos" LABEL="mymsdos" UUID="6E1E-0851" TYPE="vfat"\n' \
36*cf5a6c84SAndroid Build Coastguard Worker  "" ""
37*cf5a6c84SAndroid Build Coastguard Worker
38*cf5a6c84SAndroid Build Coastguard Worker# We use -s here because toybox blkid can't do ntfs volume labels yet.
39*cf5a6c84SAndroid Build Coastguard Workertesting "ntfs" "BLKID ntfs -s UUID -s TYPE" \
40*cf5a6c84SAndroid Build Coastguard Worker  'temp.img: UUID="6EE1BF3808608585" TYPE="ntfs"\n' "" ""
41*cf5a6c84SAndroid Build Coastguard Workertesting "reiserfs" "BLKID reiser3" \
42*cf5a6c84SAndroid Build Coastguard Worker  'temp.img: LABEL="myreiser" UUID="a5b99bec-45cc-41d7-986e-32f4b6fc28f2" TYPE="reiserfs"\n' \
43*cf5a6c84SAndroid Build Coastguard Worker  "" ""
44*cf5a6c84SAndroid Build Coastguard Workertesting "squashfs" "BLKID squashfs" 'temp.img: TYPE="squashfs"\n' "" ""
45*cf5a6c84SAndroid Build Coastguard Workertesting "vfat" "BLKID vfat" \
46*cf5a6c84SAndroid Build Coastguard Worker  'temp.img: SEC_TYPE="msdos" LABEL="myvfat" UUID="7356-B91D" TYPE="vfat"\n' \
47*cf5a6c84SAndroid Build Coastguard Worker  "" ""
48*cf5a6c84SAndroid Build Coastguard Workertesting "fat32" "BLKID fat32" \
49*cf5a6c84SAndroid Build Coastguard Worker  'temp.img: LABEL="myfat32" UUID="2E7D-E046" TYPE="vfat"\n' \
50*cf5a6c84SAndroid Build Coastguard Worker  "" ""
51*cf5a6c84SAndroid Build Coastguard Workertesting "xfs" "BLKID xfs" \
52*cf5a6c84SAndroid Build Coastguard Worker  'temp.img: LABEL="XFS_test" UUID="d63a1dc3-27d5-4dd4-8b38-f4f97f495c6f" TYPE="xfs"\n' \
53*cf5a6c84SAndroid Build Coastguard Worker  "" ""
54*cf5a6c84SAndroid Build Coastguard Worker
55*cf5a6c84SAndroid Build Coastguard Worker# Unlike util-linux's blkid, toybox blkid can read from stdin.
56*cf5a6c84SAndroid Build Coastguard Workertoyonly testing "stdin" "bzcat $FILES/blkid/squashfs.bz2 | blkid -" \
57*cf5a6c84SAndroid Build Coastguard Worker  '-: TYPE="squashfs"\n' "" ""
58*cf5a6c84SAndroid Build Coastguard Worker
59*cf5a6c84SAndroid Build Coastguard Worker#testing "minix" 'bzcat "$BDIR"/minix.bz2 | blkid -'
60*cf5a6c84SAndroid Build Coastguard Worker#adfs bfs btrfs cramfs jfs nilfs romfs
61*cf5a6c84SAndroid Build Coastguard Worker#vfat  // fat32 fat12 fat16
62*cf5a6c84SAndroid Build Coastguard Worker
63*cf5a6c84SAndroid Build Coastguard Workerbzcat $FILES/blkid/ext3.bz2 > temp.img
64*cf5a6c84SAndroid Build Coastguard Workertestcmd "-o value -s" "-o value -s TYPE temp.img" 'ext3\n' "" ""
65*cf5a6c84SAndroid Build Coastguard Workertestcmd "-o export" "-o export temp.img" 'DEVNAME=temp.img\nLABEL=myext3\nUUID=79d1c877-1a0f-4e7d-b21d-fc32ae3ef101\nSEC_TYPE=ext2\nTYPE=ext3\n' "" ""
66*cf5a6c84SAndroid Build Coastguard Workerrm temp.img
67