test code v1
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
# Test Case: Directory with dot_omitted
|
||||
|
||||
**Test ID**: TC026-dot-omitted-with
|
||||
|
||||
## Objective
|
||||
|
||||
Verify a bit-4 directory omits only `.` on disk, retains explicit `..`, and
|
||||
receives a synthetic `.` from FreeBSD readdir.
|
||||
|
||||
## Fixture
|
||||
|
||||
Use `images/compact-dot-omitted.erofs`. Structured evidence records bit 4,
|
||||
on-disk names `..,child.txt`, 48-bit incompat selection with nonzero
|
||||
`rootnid_8b`, `blocks_hi=0`, and valid CRC. Production fsck.erofs 1.8.6 cannot
|
||||
qualify this newer format.
|
||||
|
||||
## Procedure
|
||||
|
||||
After mounting in FreeBSD:
|
||||
|
||||
```sh
|
||||
stat -f 'ino=%i nlink=%l mode=%p' "$mnt/dotdir"
|
||||
ls -lai "$mnt/dotdir"
|
||||
(cd "$mnt/dotdir" && test "$(pwd)" = "$mnt/dotdir")
|
||||
cmp /tmp/repo22-g1/source/compact/dotdir/child.txt "$mnt/dotdir/child.txt"
|
||||
```
|
||||
|
||||
## Expected Results
|
||||
|
||||
- User-visible listing contains both `.` and `..`; `.` has the directory NID.
|
||||
- Structured evidence, not the listing, proves `.` is absent on disk and bit 4
|
||||
is set; `..` remains an on-disk entry.
|
||||
- Child data, navigation, mount, and cleanup succeed.
|
||||
Reference in New Issue
Block a user