On Thu, 2008-04-03 at 00:29 +0300, Szabolcs Szakacsits wrote:
> Hello file system developers,
>
> There are several POSIX file system test suites: closed source, commercial,
> one which needs reading 174 pages installation guide, etc. Because of these
> frustrations when Pawel Jakub Dawidek ported ZFS to FreeBSD, he also wrote
> such a test suite quickly.
>
> Last year the NTFS-3G team ported it to Linux/ext3 and Linux/NTFS-3G to
> validate Jean-Pierre Andre's full file permissions and ownership support
> for NTFS-3G. We sent our patches to Pawel for integration but this doesn't
> seem to happen him (he didn't see problems but is busy).
>
> Since this topic regularly appears on several lists, we are also often
> asked about it and NTFS-3G does need it to be maintained, hence we decided
> to release it and if nobody else would like to maintain it then we will do
> so.
>
> The test suite mostly checks POSIX compliance and works for FreeBSD,
> Solaris, and Linux with UFS, ZFS, ext3, and NTFS-3G file systems. The list
> of system calls tested is: chmod, chown, link, mkdir, mkfifo, open, rename,
> rmdir, symlink, truncate, unlink. There are currently 1950 regression
> tests.
>
> Availability:
>
> http://ntfs3g.org/sw/qa/pjd-fstest-20080402.tgz
>
> and in the NTFS-3G CVS as pjd-fstest module:
>
> http://sourceforge.net/cvs/?group_id=181143
>
> The usage is extremely simple:
>
> # tar czf pjd-fstest-20080402.tgz
> # cd pjd-fstest-20080402
> # vi tests/conf
> Change 'fs' to file system type you want to test (UFS, ZFS, ext3, ntfs-3g).
> # make
> It will compile fstest utility which is used by regression tests.
> # cd /path/to/file/system/you/want/to/test/
> The test must be run as root user and requires a few basic Perl modules.
> # prove -r /path/to/fstest/
>
> It's also possible to run individual set of tests:
>
> # /path/to/fstest/tests/chown/00.t
>
> Or make single system call tests:
>
> # fstest mkdir foo 0750
> 0
> # fstest mkdir foo 0750
> mkdir returned -1
> EEXIST
>
> The test suite is easy to understand, modify and extend. For instance doing
> a test cases for the above examples is only
>
> expect 0 fstest mkdir foo 0750
> expect EEXIST fstest mkdir foo 0750
>
> The default file system type is ext3 and it passes all tests.
Hmm.. I ran it against ext2, ext3, jfs, btrfs. I don't see all "pass"
on ext3. What am I missing ?
btrfs seems to have little more failures.
Thanks,
Badari
ext2:
====
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
/root/posix/tests/chmod/00.t 58 2 3.45% 3 19
/root/posix/tests/chown/00.t 171 4 2.34% 141 145 149 153
/root/posix/tests/link/00.t 82 6 7.32% 3 5-6 8-10
/root/posix/tests/open/05.t 12 2 16.67% 5 9
/root/posix/tests/rename/00.t 79 9 11.39% 3 6 8-9 11 13 37
39 42
/root/posix/tests/symlink/00.t 14 2 14.29% 2 5
/root/posix/tests/truncate/05.t 15 5 33.33% 5-6 10-12
/root/posix/tests/truncate/12.t 3 1 33.33% 2
/root/posix/tests/truncate/13.t 4 2 50.00% 2-3
Failed 9/184 test scripts, 95.11% okay. 33/1950 subtests failed, 98.31% okay.
ext3:
====
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
/root/posix/tests/chmod/00.t 58 2 3.45% 3 19
/root/posix/tests/link/00.t 82 6 7.32% 3 5-6 8-10
/root/posix/tests/open/05.t 12 2 16.67% 5 9
/root/posix/tests/rename/00.t 79 9 11.39% 3 6 8-9 11 13 37
39 42
/root/posix/tests/symlink/00.t 14 2 14.29% 2 5
/root/posix/tests/truncate/05.t 15 5 33.33% 5-6 10-12
/root/posix/tests/truncate/12.t 3 1 33.33% 2
/root/posix/tests/truncate/13.t 4 2 50.00% 2-3
Failed 8/184 test scripts, 95.65% okay. 29/1950 subtests failed, 98.51% okay.
jfs:
===
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
/root/posix/tests/chmod/00.t 58 2 3.45% 3 19
/root/posix/tests/chown/00.t 171 4 2.34% 141 145 149 153
/root/posix/tests/link/00.t 82 6 7.32% 3 5-6 8-10
/root/posix/tests/open/05.t 12 2 16.67% 5 9
/root/posix/tests/rename/00.t 79 9 11.39% 3 6 8-9 11 13 37
39 42
/root/posix/tests/symlink/00.t 14 2 14.29% 2 5
/root/posix/tests/truncate/05.t 15 5 33.33% 5-6 10-12
/root/posix/tests/truncate/12.t 3 1 33.33% 2
/root/posix/tests/truncate/13.t 4 2 50.00% 2-3
Failed 9/184 test scripts, 95.11% okay. 33/1950 subtests failed, 98.31% okay.
btrfs:
=====
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
/root/posix/tests/chmod/00.t 58 2 3.45% 3 19
/root/posix/tests/chown/00.t 171 4 2.34% 141 145 149 153
/root/posix/tests/link/00.t 82 8 9.76% 3 5-6 8-10 56 63
/root/posix/tests/open/05.t 12 2 16.67% 5 9
/root/posix/tests/rename/00.t 79 9 11.39% 3 6 8-9 11 13 37
39 42
/root/posix/tests/symlink/00.t 14 2 14.29% 2 5
/root/posix/tests/truncate/00.t 21 1 4.76% 15
/root/posix/tests/truncate/05.t 15 5 33.33% 5-6 10-12
/root/posix/tests/truncate/12.t 3 1 33.33% 2
/root/posix/tests/truncate/13.t 4 2 50.00% 2-3
/root/posix/tests/unlink/00.t 55 3 5.45% 17 22 53
Failed 11/184 test scripts, 94.02% okay. 39/1950 subtests failed, 98.00% okay.
-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Register now and save $200. Hurry, offer ends at 11:59 p.m.,
Monday, April 7! Use priority code J8TLD2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
ntfs-3g-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ntfs-3g-devel