Large File, ISO MSE and Dynamic Linking Test Suite
- Verifies Large File, Dynamic Linking, and ISO MSE additions for the Single
UNIX® Specification Version 2
- The Westwood version includes a major new testarea
for C99 interfaces for the Single UNIX Specification Version 3.
- Built upon the proven VSXgen harness, yielding
a configurable and productive tool.
- A separate test product to VSX4, using the VSXgen architecture, this
suite is provided as a VSXgen testset.
- Mandatory for testing the Single UNIX® Specification Version
2 and 3.
- Test Coverage: ISO C Amendment 1 (1995), UNIX® 98.
- Test Coverage for the Westwood version additionally includes
: ISO C 1999, UNIX® 03.
- Test modes include the ability to select a single test subsection,
that is Large File Tests, Dynamic Linking, or ISO C Multibyte support
- POSIX-style assertions have been developed for all tests, greatly
aiding failure analysis.
- 6000 test cases
If your organization is developing a large file implementation, or supporting
dynamic linking APIs or the ISO C Multibyte support extension , then this
test suite gives significant test coverage and is recommended for in-house
quality-assurance as well as part of your branding campaign.
The UNIX 03 mode (Westwood version) contains tests for most
of the new interfaces that were added in SUSv3 (except for threads,
real-time and networking interfaces).
Keywords: UNIX®, Large File, Dynamic Linking, ISO
C MSE, Testing, POSIX, X/Open.
VSX5 contains tests for large-file, ISO C Multibyte Support Extension
(MSE), and dynamic linking interfaces and headers.
Additionally the Westwood version contains additional
tests for the c99 interfaces.
VSX5 uses the robust VSXgen test harness, which in turn uses the industry
standard Test Environment Toolkit (TET3) . The benefits of using VSXgen,
which is derived from VSX4, is that the harness is familiar to existing
users of X/Open Test suites, it has proven portability and robustness
characteristics and it allows the VSX5 tests to be integrated with other
testsets that run under VSXgen, making the test suites easily useable
for in-house quality assurance and automated regresssion testing.
TET3 is the latest version of the Test Environment Toolkit. More information
on the Test Environment Toolkit is described on the TETworks
The test suite can be executed at the subsection level, that is , one
or more of
- Large File tests (LFS)
- Dynamic Linking tests
- ISO MSE tests
This allows the test suite to easily used during development of your
UNIX 98 implementation, or as part of your in-house quality assurance
The interfaces tested are:
errno.h inttypes.h limits.h stdio.h unistd.h
creat fpathconf fstat open pathconf
stat dup dup2 fcntl lseek
read write confstr sysconf execl
execle execlp execv execve execvp
fork fclose fdopen fflush fgetc
fgetpos fgets fgetwc fgetws fopen
fprintf fputc fputs fputwc fputws
fread freopen fscanf fseek fseeko
ftell ftello fwrite getc getchar
getws getw getwc getwchar printf
putc putchar puts putw putwc
putwchar scanf tmpfile vfprintf vprintf
ISO C MSE Tests
iso646.h wchar.h wctype.h fgetws fputws
fwide fgetwc getwc getwchar popen
fputwc putwc putwchar fwprintf swprintf
vfwprintf vswprintf vwprintf wprintf fwscanf
swscanf wscanf btowc mbrlen mbrtowc
mbsinit mbtowc towctrans wcrtomb wctob
wctrans wmemchr wmemcmp wmemcpy wmemmove
mbsrtowcs mbstowcs wcsstr
The large-file tests can be configured to run in several different ways,
depending on what features are available to obtain file descriptors with
a different offset maximum than `normal'. The `normal' offset maximum
is the maximum value representable by off_t when using the compiler
options used to compile UNIX98-compliant applications. If the system supports
more than one off_t size in UNIX98-compliant applications, and
you wish to test that the system is compliant when each is used, then
separate VSX5 runs are needed, with a different `normal' offset maximum
The MSE tests use the same wide character locales as VSX4, but with
an additional requirement on the contents of the parameters related to
`additional properties' in wchars.cfg .
VSX5 is modular, both at the implementation level and at the user level.
The testing process is divided into clear stages -
Each stage is clearly documented in the User and Installation Guide, which
accompanies the product.
This stage includes setting up user-ids and groups for testing, and
reading the tape. This stage includes configuring and installing the TET
harness, which is used to control building, execution and cleanup of VSX5
VSX5 automatically installs on most common platforms. Where system dependencies
may vary, these are isolated into clearly defined user changeable sections
of the test suite. During this stage VSX5 builds the test harness and
VSX5 separates the building of the test harness and tools from the testsets
themselves. The test suite may be built completely or in sub-sections, which
decrease in granularity from test sections and areas down to individual
Once built, the test suite may be run as a whole in one pass, or in sub-sections
which decrease in granularity from test areas down to individual tests within
testsets. If you are producing an X/Open branding application the test suite
must run in a single uninterrupted pass.
VSX5 generates an intermediate level journal file in a TET compliant
format. This is sufficient for debugging purposes. When a formal report
is required, such as for X/Open branding then the formal report writers
provided with VSX5 are used to process the journal file.