1f08c3bdfSopenharmony_ci
2f08c3bdfSopenharmony_ciSECTIONS:
3f08c3bdfSopenharmony_ci1. Open POSIX* Test Suite Overview
4f08c3bdfSopenharmony_ci2. Design Goals
5f08c3bdfSopenharmony_ci3. Implementation
6f08c3bdfSopenharmony_ci4. Developer Docs & Resources
7f08c3bdfSopenharmony_ci5. How to Contribute
8f08c3bdfSopenharmony_ci6. Who are you?
9f08c3bdfSopenharmony_ci7. Disclaimer
10f08c3bdfSopenharmony_ci
11f08c3bdfSopenharmony_ci
12f08c3bdfSopenharmony_ci
13f08c3bdfSopenharmony_ci1. Open POSIX* Test Suite Overview
14f08c3bdfSopenharmony_ci-----------------------------------
15f08c3bdfSopenharmony_ci
16f08c3bdfSopenharmony_ciThe POSIX Test Suite is an open source test suite with the goal of
17f08c3bdfSopenharmony_ciperforming conformance, functional, and stress testing of the IEEE
18f08c3bdfSopenharmony_ci1003.1-2001 System Interfaces specification in a manner that is
19f08c3bdfSopenharmony_ciagnostic to any given implementation.
20f08c3bdfSopenharmony_ci
21f08c3bdfSopenharmony_ciWhile active development and testing is currently happening on Linux,
22f08c3bdfSopenharmony_ciour choice of portable tools should make this test suite usable on any
23f08c3bdfSopenharmony_ciPOSIX operating system.
24f08c3bdfSopenharmony_ci
25f08c3bdfSopenharmony_ciAll code is distributed under the GNU General Public License v2.  A
26f08c3bdfSopenharmony_cicopy of this license is contained in the COPYING file.
27f08c3bdfSopenharmony_ci
28f08c3bdfSopenharmony_ciThis document gives a brief overview of the test suite, including its
29f08c3bdfSopenharmony_cidesign goals, implementation, and how to contribute.  Within these
30f08c3bdfSopenharmony_cisections, we describe where to find more detailed information.
31f08c3bdfSopenharmony_ci
32f08c3bdfSopenharmony_ci2. Design Goals
33f08c3bdfSopenharmony_ci----------------
34f08c3bdfSopenharmony_ciThis project was created with the following design goals:
35f08c3bdfSopenharmony_ci- Enable assertion based traceability for conformance testing of POSIX
36f08c3bdfSopenharmony_ci  specifications.  We wanted to capture enough data to make deterministic
37f08c3bdfSopenharmony_ci  statements about our coverage of the POSIX specification.
38f08c3bdfSopenharmony_ci
39f08c3bdfSopenharmony_ci- Give the ability to send test case source to bug reports to appropriate
40f08c3bdfSopenharmony_ci  open source projects when our test cases revealed bugs in those projects.
41f08c3bdfSopenharmony_ci  (Meaning we wanted fairly simple, self-contained test cases which
42f08c3bdfSopenharmony_ci  illuminated a single failure.)
43f08c3bdfSopenharmony_ci
44f08c3bdfSopenharmony_ci- Make it easy for test cases to be contributed.
45f08c3bdfSopenharmony_ci
46f08c3bdfSopenharmony_ci3. Implementation
47f08c3bdfSopenharmony_ci------------------
48f08c3bdfSopenharmony_ci
49f08c3bdfSopenharmony_ciThis project will cover conformance, functional, stress, performance,
50f08c3bdfSopenharmony_ciand speculative testing.  Conformance, functional, and stress tests are
51f08c3bdfSopenharmony_cithe only tests formally documented and enabled by our framework, with our
52f08c3bdfSopenharmony_cifocus mainly on conformance; however, the other types of testing will be
53f08c3bdfSopenharmony_ciadded as the need arises.
54f08c3bdfSopenharmony_ci
55f08c3bdfSopenharmony_ciFor more information on these types of testing, under 'Documenation' see:
56f08c3bdfSopenharmony_ciHOWTO_ConformanceTest - info on creation and structure of conformance tests
57f08c3bdfSopenharmony_ciHOWTO_Functional-     - info on creation and structure of functional
58f08c3bdfSopenharmony_ci  StressTest            and stress tests
59f08c3bdfSopenharmony_ci
60f08c3bdfSopenharmony_ciFor additional information on how to build and run the tests in this
61f08c3bdfSopenharmony_cisuite, see Documentation/HOWTO_RunTests.
62f08c3bdfSopenharmony_ci
63f08c3bdfSopenharmony_ci
64f08c3bdfSopenharmony_ci4. Developer Docs & Resources
65f08c3bdfSopenharmony_ci------------------------------
66f08c3bdfSopenharmony_ci
67f08c3bdfSopenharmony_ciThe following files give developers information on how to write test
68f08c3bdfSopenharmony_cicases for the project (under Documentation):
69f08c3bdfSopenharmony_ciHOWTO_Assertions      - describes format of the assertions files used to
70f08c3bdfSopenharmony_ci                        map test case descriptions to test cases
71f08c3bdfSopenharmony_ciHOWTO_BoundaryTest    - information about testing boundary conditions
72f08c3bdfSopenharmony_ciHOWTO_CodingGuidelines- describes coding guidelines for this project
73f08c3bdfSopenharmony_ciHOWTO_Coverage        - describes format of COVERAGE.<area> files
74f08c3bdfSopenharmony_ciHOWTO_DefinitionsTest - ideas behind testing POSIX header files
75f08c3bdfSopenharmony_ciHOWTO_ResultCodes     - standardized return codes for tests
76f08c3bdfSopenharmony_ciHOWTO_Tagging         - describes how to tag files for inclusion in a release
77f08c3bdfSopenharmony_ci
78f08c3bdfSopenharmony_ciFor additional information on how to build and run the tests in this
79f08c3bdfSopenharmony_cisuite, see HOWTO_RunTests.
80f08c3bdfSopenharmony_ci
81f08c3bdfSopenharmony_ci5. How to Contribute
82f08c3bdfSopenharmony_ci---------------------
83f08c3bdfSopenharmony_ci
84f08c3bdfSopenharmony_ci* Patches welcome!
85f08c3bdfSopenharmony_ci
86f08c3bdfSopenharmony_ci* When you create a new test, please fill out an assertion description
87f08c3bdfSopenharmony_ci  if none is available. Create a simple C [.c] or shell script [.sh]
88f08c3bdfSopenharmony_ci  snippet that exploits the assertion and returns 0 or !0
89f08c3bdfSopenharmony_ci  [passes/fails].
90f08c3bdfSopenharmony_ci
91f08c3bdfSopenharmony_ci  Please name the file after the assertion it tests-dash-the number of
92f08c3bdfSopenharmony_ci  the test [up to you, we can do the naming for you also].
93f08c3bdfSopenharmony_ci
94f08c3bdfSopenharmony_ci  The code snippets need to be as simple as possible, for the sake of
95f08c3bdfSopenharmony_ci  all. Please start them with a commentary briefly describing how
96f08c3bdfSopenharmony_ci  you will test the assertion. The idea is that at the end, we can have
97f08c3bdfSopenharmony_ci  automatic tools extracting the data from the XML and source files to
98f08c3bdfSopenharmony_ci  generate reports.
99f08c3bdfSopenharmony_ci
100f08c3bdfSopenharmony_ci
101f08c3bdfSopenharmony_ci6. Who are you?
102f08c3bdfSopenharmony_ci---------------
103f08c3bdfSopenharmony_ci
104f08c3bdfSopenharmony_ciWe are the ones currently developing this:
105f08c3bdfSopenharmony_ci
106f08c3bdfSopenharmony_cijulie.n.fleischer REMOVE-THIS AT intel DOT com
107f08c3bdfSopenharmony_cirusty.lynch REMOVE-THIS AT intel DOT com
108f08c3bdfSopenharmony_cigeoffrey.r.gustafson REMOVE-THIS AT intel DOT com
109f08c3bdfSopenharmony_ciinaky.perez-gonzalez REMOVE-THIS AT intel DOT com
110f08c3bdfSopenharmony_cirolla.n.selbak REMOVE-THIS AT intel DOT com
111f08c3bdfSopenharmony_cimajid.awad REMOVE-THIS AT intel DOT com
112f08c3bdfSopenharmony_cisalwan.searty REMOVE-THIS AT intel DOT com
113f08c3bdfSopenharmony_cisunyi REMOVE-THIS AT users DOT sourceforge DOT net
114f08c3bdfSopenharmony_ci
115f08c3bdfSopenharmony_ciSome like to say 'Nih!' from time to time ...
116f08c3bdfSopenharmony_ci
117f08c3bdfSopenharmony_ci
118f08c3bdfSopenharmony_ci7. Disclaimer
119f08c3bdfSopenharmony_ci--------------
120f08c3bdfSopenharmony_ciThe Open POSIX Test Suite is not affiliated with the IEEE or The Open Group.
121f08c3bdfSopenharmony_ci
122f08c3bdfSopenharmony_ci* POSIX (R) is a registered trademark of the IEEE
123