Package com.sun.javatest
Class KnownFailuresList
java.lang.Object
com.sun.javatest.KnownFailuresList
Support class to read and process a list of tests and test cases which are
known to fail during execution. The intent is to allow better post-run
analysis of repetitive test runs, making is easier to find out what has
"changed" since the list was made. This class is loosely based on the
exclude list, making it easy to interchange the files and tools.
File format: Test_URL[Test_Cases] BugID_List The test URL rules are defined elsewhere, but it is critical that the test names do not contain spaces and nothing before the BugID_List has any whitespace. The exact format of the BugID_List must simply conform to being comma separated values, no whitespace or non-printable characters.
- Since:
- 4.4
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class
An entry in the exclude list.static class
This exception is used to report problems manipulating an exclude list. -
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionCreate a new, empty KFL object.Create an KnownFailuresList from the data contained in a file.KnownFailuresList
(File... files) Create a KnownFailuresList from the data contained in a series of files.KnownFailuresList
(File[] files, boolean strict) Create a KnownFailuresList from the data contained in a series of files.KnownFailuresList
(File f, boolean strict) Create an KnownFailuresList from the data contained in a file. -
Method Summary
Modifier and TypeMethodDescriptionvoid
boolean
getIterator
(boolean group) Iterate over the contents of the table.getTitle()
Get the title for this exclude list.int
hashCode()
boolean
isEmpty()
Check whether an exclude list has any entries or not.static boolean
Test if a file appears to be for an exclude list, by checking the extension.boolean
Check whether strict mode is enabled or not.boolean
Test if a specific test is completely excluded according to the table.boolean
listsAllOf
(String url) Test if a specific test is completely excluded according to the table.boolean
Test if a specific test is partially or completely excluded according to the table.boolean
listsAnyOf
(String url) Test if a specific test is partially or completely excluded according to the table.void
merge
(KnownFailuresList other) Merge the contents of another exclude list into this one.void
setStrictModeEnabled
(boolean on) Specify whether strict mode is on or not.void
Set the title for this exclude list.int
size()
Get the number of entries in the table.void
Write the table out to a file.
-
Field Details
-
KFLFILE_EXTN
The standard extension for KFL files. (".kfl")- See Also:
-
KFL_FILE_VERSION
- See Also:
-
-
Constructor Details
-
KnownFailuresList
public KnownFailuresList()Create a new, empty KFL object. -
KnownFailuresList
Create an KnownFailuresList from the data contained in a file.- Parameters:
f
- The file to be read.- Throws:
FileNotFoundException
- if the file cannot be foundIOException
- if any problems occur while reading the fileKnownFailuresList.Fault
- if the data in the file is inconsistent- See Also:
-
KnownFailuresList
public KnownFailuresList(File f, boolean strict) throws FileNotFoundException, IOException, KnownFailuresList.Fault Create an KnownFailuresList from the data contained in a file.- Parameters:
f
- The file to be read.strict
- Indicate if strict data checking rules should be used.- Throws:
FileNotFoundException
- if the file cannot be foundIOException
- if any problems occur while reading the fileKnownFailuresList.Fault
- if the data in the file is inconsistent- See Also:
-
KnownFailuresList
public KnownFailuresList(File... files) throws FileNotFoundException, IOException, KnownFailuresList.Fault Create a KnownFailuresList from the data contained in a series of files.- Parameters:
files
- The file to be read.- Throws:
FileNotFoundException
- if any of the files cannot be foundIOException
- if any problems occur while reading the files.KnownFailuresList.Fault
- if the data in the files is inconsistent- See Also:
-
KnownFailuresList
public KnownFailuresList(File[] files, boolean strict) throws FileNotFoundException, IOException, KnownFailuresList.Fault Create a KnownFailuresList from the data contained in a series of files.- Parameters:
files
- The file to be read.strict
- Indicate if strict data checking rules should be used.- Throws:
FileNotFoundException
- if any of the files cannot be foundIOException
- if any problems occur while reading the files.KnownFailuresList.Fault
- if the data in the files is inconsistent- See Also:
-
-
Method Details
-
isKflFile
Test if a file appears to be for an exclude list, by checking the extension.- Parameters:
f
- The file to be tested.- Returns:
true
if the file appears to be a known failures list.
-
addEntry
- Throws:
KnownFailuresList.Fault
-
isStrictModeEnabled
public boolean isStrictModeEnabled()Check whether strict mode is enabled or not. In strict mode, calls to addEntry may generate an exception in the case of conflicts, such as adding an entry to exclude a specific test case when the entire test is already excluded.- Returns:
- true if strict mode is enabled, and false otherwise
- See Also:
-
setStrictModeEnabled
public void setStrictModeEnabled(boolean on) Specify whether strict mode is on or not. In strict mode, calls to addEntry may generate an exception in the case of conflicts, such as adding an entry to exclude a specific test case when the entire test is already excluded.- Parameters:
on
- true if strict mode should be enabled, and false otherwise- See Also:
-
getIterator
Iterate over the contents of the table.- Parameters:
group
- iftrue
, entries for the same relative URL are grouped together, and if more than one, returned in an array; iffalse
, the iterator always returns separate entries.- Returns:
- an iterator for the table: the entries are either
single instances of @link(Entry) or a mixture of @link(Entry)
and @link(Entry)[], depending on the
group
parameter. - See Also:
-
merge
Merge the contents of another exclude list into this one. The individual entries are merged; The title of the exclude list being merged is ignored.- Parameters:
other
- the exclude list to be merged with this one.
-
find
-
find
-
listsAllOf
Test if a specific test is completely excluded according to the table. It is completely excluded if there is an entry, and the test case field is null.- Parameters:
td
- A test description for the test being checked.- Returns:
true
if the table contains an entry for this test.
-
listsAllOf
Test if a specific test is completely excluded according to the table. It is completely excluded if there is an entry, and the test case field is null.- Parameters:
url
- The test-suite root-relative URL for the test.- Returns:
true
if the table contains an entry for this test.
-
listsAnyOf
Test if a specific test is partially or completely excluded according to the table. It is so excluded if there is any entry in the table for the test.- Parameters:
td
- A test description for the test being checked.- Returns:
true
if the table contains an entry for this test.
-
listsAnyOf
Test if a specific test is partially or completely excluded according to the table. It is so excluded if there is any entry in the table for the test.- Parameters:
url
- The test-suite root-relative URL for the test.- Returns:
true
if the table contains an entry for this test.
-
isEmpty
public boolean isEmpty()Check whether an exclude list has any entries or not.- Returns:
- true if this exclude list has no entries
- See Also:
-
size
public int size()Get the number of entries in the table.- Returns:
- the number of entries in the table
- See Also:
-
getTitle
Get the title for this exclude list.- Returns:
- the title for this exclude list
- See Also:
-
setTitle
Set the title for this exclude list.- Parameters:
title
- the title for this exclude list- See Also:
-
write
Write the table out to a file.- Parameters:
f
- The file to which the table should be written.- Throws:
IOException
- is thrown if any problems occur while the file is being written.
-
equals
-
hashCode
public int hashCode()
-