Package org.testng.xml
Class TestNGContentHandler
java.lang.Object
org.xml.sax.helpers.DefaultHandler
org.testng.xml.TestNGContentHandler
- All Implemented Interfaces:
ContentHandler
,DTDHandler
,EntityResolver
,ErrorHandler
Suite definition parser utility.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static class
(package private) static enum
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate XmlClass
private int
private XmlDefine
private String
private XmlGroups
private TestNGContentHandler.Include
private ArrayList<XmlInclude>
private int
private String
private XmlPackage
private List<XmlPackage>
private XmlRun
private XmlMethodSelector
private ArrayList<XmlMethodSelector>
private XmlSuite
private XmlTest
private int
private boolean
private final String
private boolean
private final boolean
private final Stack<TestNGContentHandler.Location>
private final EntityResolver
private boolean
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate boolean
areWhiteSpaces
(char[] ch, int start, int length) void
characters
(char[] ch, int start, int length) void
endElement
(String uri, String localName, String qName) void
private static String
expandValue
(String value) getSuite()
private static boolean
isMalformedFileSystemBasedSystemId
(String systemId) private static boolean
isUnsecuredUrl
(String str) private InputStream
private void
private void
resolveEntity
(String publicId, String systemId) private static boolean
skipConsideringSystemId
(String systemId) void
startElement
(String uri, String localName, String qName, Attributes attributes) NOTE: I only invoke xml*methods (e.g.stringToList
(String in) void
xmlClasses
(boolean start) private void
xmlDefine
(boolean start, Attributes attributes) Parseprivate void
xmlExclude
(boolean start, Attributes attributes) void
xmlGroup
(boolean start, Attributes attributes) void
xmlGroups
(boolean start) private void
xmlInclude
(boolean start, Attributes attributes) void
xmlListener
(boolean start, Attributes attributes) void
xmlListeners
(boolean start) private void
xmlMethod
(boolean start) void
xmlMethodSelector
(boolean start) void
xmlMethodSelectors
(boolean start) void
xmlPackages
(boolean start) void
xmlRun
(boolean start) private void
xmlScript
(boolean start, Attributes attributes) Parse <script>void
xmlSelectorClass
(boolean start, Attributes attributes) private void
xmlSuite
(boolean start, Attributes attributes) Parseprivate void
xmlSuiteFile
(boolean start, Attributes attributes) Parse <suite-file>private void
xmlTest
(boolean start, Attributes attributes) Parse <test>Methods inherited from class org.xml.sax.helpers.DefaultHandler
endDocument, endPrefixMapping, fatalError, ignorableWhitespace, notationDecl, processingInstruction, setDocumentLocator, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl, warning
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.xml.sax.ContentHandler
declaration
-
Field Details
-
m_currentSuite
-
m_currentTest
-
m_currentDefine
-
m_currentRun
-
m_currentClasses
-
m_currentTestIndex
private int m_currentTestIndex -
m_currentClassIndex
private int m_currentClassIndex -
m_currentIncludeIndex
private int m_currentIncludeIndex -
m_currentPackages
-
m_currentPackage
-
m_suites
-
m_currentGroups
-
m_currentTestParameters
-
m_currentSuiteParameters
-
m_currentClassParameters
-
m_currentInclude
-
m_redirectionAwareResolver
-
m_locations
-
m_currentClass
-
m_currentIncludedMethods
-
m_currentExcludedMethods
-
m_currentSelectors
-
m_currentSelector
-
m_currentLanguage
-
m_currentExpression
-
m_suiteFiles
-
m_enabledTest
private boolean m_enabledTest -
m_listeners
-
m_fileName
-
m_loadClasses
private final boolean m_loadClasses -
m_validate
private boolean m_validate -
m_hasWarn
private boolean m_hasWarn
-
-
Constructor Details
-
TestNGContentHandler
-
-
Method Details
-
resolveEntity
- Specified by:
resolveEntity
in interfaceEntityResolver
- Overrides:
resolveEntity
in classDefaultHandler
- Throws:
SAXException
IOException
-
skipConsideringSystemId
-
isMalformedFileSystemBasedSystemId
-
isUnsecuredUrl
-
loadDtdUsingClassLoader
-
xmlSuiteFile
Parse <suite-file> -
xmlSuite
Parse -
xmlDefine
Parse -
xmlScript
Parse <script> -
xmlTest
Parse <test> -
xmlClasses
public void xmlClasses(boolean start) -
xmlListeners
public void xmlListeners(boolean start) -
xmlListener
-
xmlPackages
public void xmlPackages(boolean start) -
xmlMethodSelectors
public void xmlMethodSelectors(boolean start) -
xmlSelectorClass
-
xmlMethodSelector
public void xmlMethodSelector(boolean start) -
xmlMethod
private void xmlMethod(boolean start) -
xmlRun
public void xmlRun(boolean start) -
xmlGroup
-
xmlGroups
public void xmlGroups(boolean start) -
startElement
NOTE: I only invoke xml*methods (e.g. xmlSuite()) if I am acting on both the start and the end of the tag. This way I can keep the treatment of this tag in one place. If I am only doing something when the tag opens, the code is inlined below in the startElement() method.- Specified by:
startElement
in interfaceContentHandler
- Overrides:
startElement
in classDefaultHandler
-
xmlInclude
-
xmlExclude
-
pushLocation
-
popLocation
private void popLocation() -
stringToList
-
endElement
- Specified by:
endElement
in interfaceContentHandler
- Overrides:
endElement
in classDefaultHandler
-
error
- Specified by:
error
in interfaceErrorHandler
- Overrides:
error
in classDefaultHandler
- Throws:
SAXException
-
areWhiteSpaces
private boolean areWhiteSpaces(char[] ch, int start, int length) -
characters
public void characters(char[] ch, int start, int length) - Specified by:
characters
in interfaceContentHandler
- Overrides:
characters
in classDefaultHandler
-
getSuite
-
expandValue
-