0
0
mirror of https://github.com/ezyang/htmlpurifier.git synced 2024-11-12 16:38:40 +00:00
htmlpurifier/tests/HTMLPurifier
Edward Z. Yang fa413e96ac Implement Injector->handleEnd, with lots of refactoring for injector.
Previous design of injector streaming involved editability only to start, empty
and text tokens, because they could be safely modified without causing formedness
errors.  By modifying notifyEnd to operate before MakeWellFormed's safeguards
kick into effect, it can be converted into a handle function, allowing for
arbitrary modification of end tags.

This change involved quite a bit of restructuring of the MakeWellFormed code,
including the moving of end of document tags to inside the loop, so rewinding
on those tags would be functional, increased reuse of the end tag codepath by
code that inserts end tags (as they could be changed out from under you), and
processToken modified to have an extra parameter to force re-processing of
a token if the original token was an end token.

We're not exactly sure if handleEnd works at this point, but the important
talking point about this refactoring is that nothing else broke. Also, a number
of convenience functions were moved from AutoParagraph to the Injector
supertype (specifically: forward, forwardToEndToken, backward, and current).

Signed-off-by: Edward Z. Yang <edwardzyang@thewritingpot.com>
2008-10-01 00:54:51 -04:00
..
AttrDef [3.1.1] Fix text-decoration: none bug 2008-06-17 03:12:50 +00:00
AttrTransform Add support for proprietary "background" attribute in table elements. 2008-09-27 21:19:35 -04:00
ChildDef Forms implementation for %HTML.Trusted. Some backend changes: 2008-08-15 18:57:44 -04:00
ConfigSchema Classname() constructors to __construct() constructors, as per SimpleTest. Also normalized ppp declarations; no public declaration for test methods, public/protected for the rest 2008-04-21 15:24:18 +00:00
DefinitionCache Add Git specific files and configuration 2008-06-24 22:02:16 -04:00
Filter [3.1.0] Deprecate addFilter; set up Filter namespace 2008-04-22 06:40:04 +00:00
HTMLModule Forms implementation for %HTML.Trusted. Some backend changes: 2008-08-15 18:57:44 -04:00
HTMLT Add support for proprietary "background" attribute in table elements. 2008-09-27 21:19:35 -04:00
Injector Improve auto-paragraph to preserve newlines and handle edge-cases better. 2008-08-10 00:32:29 -04:00
Lexer Track column numbers in addition to line numbers. 2008-09-01 14:10:10 -04:00
PHPT Handle CRLF discrepancies 2008-06-24 21:10:51 -04:00
SimpleTest [3.1.1] Memory optimizations for ConfigSchema. Changes include: 2008-05-23 16:43:24 +00:00
Strategy Implement Injector->handleEnd, with lots of refactoring for injector. 2008-10-01 00:54:51 -04:00
StringHashParser Allow empty sections in string hashes; previously they were left undefined. 2008-07-07 08:57:16 -04:00
URIFilter Fix bug where absolute paths with dots/double-dots were not collapsed. 2008-08-15 13:12:54 -04:00
VarParser [3.1.1] Memory optimizations for ConfigSchema. Changes include: 2008-05-23 16:43:24 +00:00
AttrCollectionsTest.php Remove includes from unit tests. 2008-02-18 04:41:42 +00:00
AttrDefHarness.php Classname() constructors to __construct() constructors, as per SimpleTest. Also normalized ppp declarations; no public declaration for test methods, public/protected for the rest 2008-04-21 15:24:18 +00:00
AttrDefTest.php [3.1.1] Fix Shift_JIS encoding wonkiness with yen symbols and whatnot 2008-05-25 05:40:20 +00:00
AttrTransformHarness.php Classname() constructors to __construct() constructors, as per SimpleTest. Also normalized ppp declarations; no public declaration for test methods, public/protected for the rest 2008-04-21 15:24:18 +00:00
AttrTransformTest.php Remove includes from unit tests. 2008-02-18 04:41:42 +00:00
AttrTypesTest.php [3.1.0] Move $safe from ElementDef to HTMLModule 2008-04-21 23:28:52 +00:00
AttrValidator_ErrorsTest.php Migrate AttrValidator to nested error format; modify generator logic in ErrorCollector. 2008-08-18 22:13:58 -04:00
ChildDefHarness.php Classname() constructors to __construct() constructors, as per SimpleTest. Also normalized ppp declarations; no public declaration for test methods, public/protected for the rest 2008-04-21 15:24:18 +00:00
ComplexHarness.php Forms implementation for %HTML.Trusted. Some backend changes: 2008-08-15 18:57:44 -04:00
ConfigSchemaTest.php [3.1.1] Memory optimizations for ConfigSchema. Changes include: 2008-05-23 16:43:24 +00:00
ConfigTest-create.ini Various fixes: 2008-04-15 03:33:09 +00:00
ConfigTest-finalize.ini Various fixes: 2008-04-15 03:33:09 +00:00
ConfigTest-loadIni.ini Various fixes: 2008-04-15 03:33:09 +00:00
ConfigTest.php [3.1.0] More PHP4->PHP5 conversions, notably reference removal of most methods that return objects 2008-04-23 02:40:17 +00:00
ContextTest.php Classname() constructors to __construct() constructors, as per SimpleTest. Also normalized ppp declarations; no public declaration for test methods, public/protected for the rest 2008-04-21 15:24:18 +00:00
DefinitionCacheFactoryTest.php Classname() constructors to __construct() constructors, as per SimpleTest. Also normalized ppp declarations; no public declaration for test methods, public/protected for the rest 2008-04-21 15:24:18 +00:00
DefinitionCacheHarness.php Classname() constructors to __construct() constructors, as per SimpleTest. Also normalized ppp declarations; no public declaration for test methods, public/protected for the rest 2008-04-21 15:24:18 +00:00
DefinitionCacheTest.php [3.1.0] Fix bug with 3.1.0-dev version number (the dash caused problems, so we switched to commas) 2008-04-26 19:28:14 +00:00
DefinitionTest.php Remove includes from unit tests. 2008-02-18 04:41:42 +00:00
DefinitionTestable.php Convert to PHP 5 only codebase, adding visibility modifiers to all members and methods in the main library area (function only for test methods) 2007-11-25 02:24:39 +00:00
DoctypeRegistryTest.php [3.1.0] More PHP4->PHP5 conversions, notably reference removal of most methods that return objects 2008-04-23 02:40:17 +00:00
ElementDefTest.php [3.1.0] Move $safe from ElementDef to HTMLModule 2008-04-21 23:28:52 +00:00
EncoderTest.php Give warnings when attempting to use encoding iconv doesn't support. 2008-07-05 03:14:32 -04:00
EntityLookupTest.php Remove includes from unit tests. 2008-02-18 04:41:42 +00:00
EntityParserTest.php Classname() constructors to __construct() constructors, as per SimpleTest. Also normalized ppp declarations; no public declaration for test methods, public/protected for the rest 2008-04-21 15:24:18 +00:00
ErrorCollectorEMock.php Sync with SimpleTest codebase 2008-04-28 19:52:13 +00:00
ErrorCollectorTest.php Setup ErrorCollector to maintain new error format, and output that HTML. 2008-09-15 19:08:58 -04:00
ErrorsHarness.php Classname() constructors to __construct() constructors, as per SimpleTest. Also normalized ppp declarations; no public declaration for test methods, public/protected for the rest 2008-04-21 15:24:18 +00:00
GeneratorTest.php [3.1.2] Add %Output.SortAttr to deal with FCKeditor bug 2008-06-24 22:36:27 -04:00
Harness.php [3.1.1] Added HTMLPurifier_UnitConverter and HTMLPurifier_Length for convenient handling of CSS-style lengths. 2008-05-20 01:19:00 +00:00
HTMLDefinitionTest.php [3.1.1] Allow injectors to be specified by modules. 2008-06-09 01:23:05 +00:00
HTMLModuleHarness.php Remove includes from unit tests. 2008-02-18 04:41:42 +00:00
HTMLModuleManagerTest.php [3.1.1] Allow injectors to be specified by modules. 2008-06-09 01:23:05 +00:00
HTMLModuleTest.php [3.1.0] More PHP4->PHP5 conversions, notably reference removal of most methods that return objects 2008-04-23 02:40:17 +00:00
HTMLT.php Implement HTMLT tests, and migrate HTMLPurifierTest to this format. 2008-07-07 08:59:33 -04:00
IDAccumulatorTest.php Remove includes from unit tests. 2008-02-18 04:41:42 +00:00
InjectorHarness.php Remove includes from unit tests. 2008-02-18 04:41:42 +00:00
LanguageFactoryTest.php [3.1.0] Fixed bug with fallback languages in LanguageFactory 2008-05-15 23:04:46 +00:00
LanguageTest.php [3.1.1] Land vs's HTMLPurifier_Generator patch, and a number of other bugfixes for that change 2008-05-26 04:05:48 +00:00
LengthTest.php [3.1.1] Implement more robust imagecrash protection for CSS width/height. 2008-05-21 01:56:48 +00:00
LexerTest.php Refactor lexer instantiation logic with exceptions and forced line tracking. 2008-09-05 14:04:23 -04:00
PercentEncoderTest.php [3.1.0] Revamp URI handling of percent encoding and validation. 2008-05-14 02:19:00 +00:00
StrategyHarness.php Remove includes from unit tests. 2008-02-18 04:41:42 +00:00
StringHashParserTest.php Allow empty sections in string hashes; previously they were left undefined. 2008-07-07 08:57:16 -04:00
StringHashTest.php Classname() constructors to __construct() constructors, as per SimpleTest. Also normalized ppp declarations; no public declaration for test methods, public/protected for the rest 2008-04-21 15:24:18 +00:00
TagTransformTest.php Classname() constructors to __construct() constructors, as per SimpleTest. Also normalized ppp declarations; no public declaration for test methods, public/protected for the rest 2008-04-21 15:24:18 +00:00
TokenFactoryTest.php Remove includes from unit tests. 2008-02-18 04:41:42 +00:00
TokenTest.php Classname() constructors to __construct() constructors, as per SimpleTest. Also normalized ppp declarations; no public declaration for test methods, public/protected for the rest 2008-04-21 15:24:18 +00:00
UnitConverterTest.php Add support for pixel as a pseudo-English unit. 2008-05-21 00:42:55 +00:00
URIDefinitionTest.php [3.1.1] Implement %URI.SecureMunge and %URI.SecureMungeSecretKey, thanks Chris! 2008-05-26 16:26:47 +00:00
URIFilterHarness.php Classname() constructors to __construct() constructors, as per SimpleTest. Also normalized ppp declarations; no public declaration for test methods, public/protected for the rest 2008-04-21 15:24:18 +00:00
URIHarness.php Classname() constructors to __construct() constructors, as per SimpleTest. Also normalized ppp declarations; no public declaration for test methods, public/protected for the rest 2008-04-21 15:24:18 +00:00
URIParserTest.php [3.1.0] Revamp URI handling of percent encoding and validation. 2008-05-14 02:19:00 +00:00
URISchemeRegistryTest.php Remove includes from unit tests. 2008-02-18 04:41:42 +00:00
URISchemeTest.php Classname() constructors to __construct() constructors, as per SimpleTest. Also normalized ppp declarations; no public declaration for test methods, public/protected for the rest 2008-04-21 15:24:18 +00:00
URITest.php [3.1.1] Implement percent encoding for URI query and fragment 2008-05-21 02:58:41 +00:00
VarParserHarness.php Reorganize VarParser; there may be multiple implementations. 2008-03-05 03:51:09 +00:00