test_format.sh 971 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #!/bin/bash
  2. set -eu
  3. echo "=== Formatting tests ==="
  4. rm -rf blocks
  5. echo "--- Basic formatting ---"
  6. ./tests/test.py << TEST
  7. lfs_format(&lfs, &bd, &lfs_emubd_ops) => 0;
  8. TEST
  9. echo "--- Invalid superblocks ---"
  10. ln -f -s /dev/null blocks/0
  11. ./tests/test.py << TEST
  12. lfs_format(&lfs, &bd, &lfs_emubd_ops) => LFS_ERROR_CORRUPT;
  13. TEST
  14. rm blocks/0
  15. echo "--- Basic mounting ---"
  16. ./tests/test.py << TEST
  17. lfs_mount(&lfs, &bd, &lfs_emubd_ops) => 0;
  18. lfs_unmount(&lfs) => 0;
  19. TEST
  20. echo "--- Invalid mount ---"
  21. ./tests/test.py << TEST
  22. lfs_format(&lfs, &bd, &lfs_emubd_ops) => 0;
  23. TEST
  24. rm blocks/0 blocks/1
  25. ./tests/test.py << TEST
  26. lfs_mount(&lfs, &bd, &lfs_emubd_ops) => LFS_ERROR_CORRUPT;
  27. TEST
  28. echo "--- Valid corrupt mount ---"
  29. ./tests/test.py << TEST
  30. lfs_format(&lfs, &bd, &lfs_emubd_ops) => 0;
  31. TEST
  32. rm blocks/0
  33. ./tests/test.py << TEST
  34. lfs_mount(&lfs, &bd, &lfs_emubd_ops) => 0;
  35. lfs_unmount(&lfs) => 0;
  36. TEST
  37. echo "--- Results ---"
  38. ./tests/stats.py