This repository has been archived by the owner on Feb 1, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 42
Features and Tests
mattbasta edited this page Jul 6, 2011
·
5 revisions
There are many tests that take place during the validation process. Each exists in a tier, which groups similar tests together. Similar tests are defined as tests which generate errors of similar priority and type.
-
install.rdf tests
- Test for banned elements
- Test for appropriate elements based on type
- Valid values (ID, version, name/trademark)
- Conduit Toolbar detection
- Common library blacklisting
-
Package Layout
- Dictionary, language pack, theme layout inspection
- Blacklisted file types
- Target Application inspection
- Content inspection tests
- JAR inspection
- Nested extension inspection
- Markup inspection (HTML, XHTML, XML, XUL
- CSS inspection
- Language Pack HTML inspection
- Language pack manifest inspection
- Theme manifest inspection
- XPCOM detection
- Regex tests (pattern matching)
- Basic syntax and reference checking
The validator prevents:
- Modification of variables declared as
const
- Modification of global variables and entities
- Modification of main type prototypes (
Array.prototype
,Object.prototype
, etc.) - Access to banned entities and functions (
eval
,Function
, etc.) -
setAttribute
to modify event handlers -
innerHTML
to set event handlers -
innerHTML
to generate banned markup -
innerHTML
to execute malicious scripts - Use of
createElement
andcreateElementNS
to create script tags - Synchronous use of
XMLHttpRequest
-
L10n Completeness
- L10n character encoding inspection
While the validator treats tier 5 as standard tier, it is in many ways a "virtual" tier. Messages for this tier are generated during tiers 1-4, however, these messages may be discarded if determined
mode is not enabled and a failure occurs before tier 5 is run.
- Compatibility tests
- Firefox 5 compatibility
- Firefox 6 compatibility
- Firefox 7 compatibility