From e7a840ed9a817cf4db59c90e680afd89e146b581 Mon Sep 17 00:00:00 2001
From: Simon McVittie
Date: Sun, 16 Nov 2008 18:11:39 +0000
Subject: htmlbalance: new plugin that balances tags by parsing and
re-serializing
---
t/htmlbalance.t | 13 +++++++++++++
1 file changed, 13 insertions(+)
create mode 100755 t/htmlbalance.t
(limited to 't/htmlbalance.t')
diff --git a/t/htmlbalance.t b/t/htmlbalance.t
new file mode 100755
index 000000000..cd124e473
--- /dev/null
+++ b/t/htmlbalance.t
@@ -0,0 +1,13 @@
+#!/usr/bin/perl
+use warnings;
+use strict;
+use Test::More tests => 7;
+
+BEGIN { use_ok("IkiWiki::Plugin::htmlbalance"); }
+
+is(IkiWiki::Plugin::htmlbalance::sanitize(content => "
"), "
");
+is(IkiWiki::Plugin::htmlbalance::sanitize(content => "
"), "");
+is(IkiWiki::Plugin::htmlbalance::sanitize(content => ""), "");
+is(IkiWiki::Plugin::htmlbalance::sanitize(content => "foo "), "foo ");
+is(IkiWiki::Plugin::htmlbalance::sanitize(content => " foo "), " foo ");
+is(IkiWiki::Plugin::htmlbalance::sanitize(content => "a>"), "a>");
--
cgit v1.2.3
From 43039d7d86ea66578743867a0b1d484e65816bb2 Mon Sep 17 00:00:00 2001
From: Joey Hess
Date: Mon, 17 Nov 2008 14:22:11 -0500
Subject: modify to skip tests if the neccessary perl modules are not available
---
t/htmlbalance.t | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
(limited to 't/htmlbalance.t')
diff --git a/t/htmlbalance.t b/t/htmlbalance.t
index cd124e473..783ed9841 100755
--- a/t/htmlbalance.t
+++ b/t/htmlbalance.t
@@ -1,9 +1,20 @@
#!/usr/bin/perl
use warnings;
use strict;
-use Test::More tests => 7;
-BEGIN { use_ok("IkiWiki::Plugin::htmlbalance"); }
+BEGIN {
+ eval q{
+ use HTML::TreeBuilder;
+ use XML::Atom::Util qw(encode_xml);
+ };
+ if ($@) {
+ eval q{use Test::More skip_all => "HTML::TreeBuilder or XML::Atom::Util not available"};
+ }
+ else {
+ eval q{use Test::More tests => 7};
+ }
+ use_ok("IkiWiki::Plugin::htmlbalance");
+}
is(IkiWiki::Plugin::htmlbalance::sanitize(content => "
"), "
");
is(IkiWiki::Plugin::htmlbalance::sanitize(content => ""), "");
--
cgit v1.2.3
From 181bdbe1a9a8a1eb07259466361d98bdc1378499 Mon Sep 17 00:00:00 2001
From: Joey Hess
Date: Mon, 17 Nov 2008 14:27:11 -0500
Subject: use HTML::Entities
---
IkiWiki/Plugin/htmlbalance.pm | 4 ++--
doc/plugins/htmlbalance/discussion.mdwn | 2 ++
t/htmlbalance.t | 3 +--
3 files changed, 5 insertions(+), 4 deletions(-)
(limited to 't/htmlbalance.t')
diff --git a/IkiWiki/Plugin/htmlbalance.pm b/IkiWiki/Plugin/htmlbalance.pm
index 8f43d5dac..3a2d62d15 100644
--- a/IkiWiki/Plugin/htmlbalance.pm
+++ b/IkiWiki/Plugin/htmlbalance.pm
@@ -11,7 +11,7 @@ use warnings;
use strict;
use IkiWiki 2.00;
use HTML::TreeBuilder;
-use XML::Atom::Util qw(encode_xml);
+use HTML::Entities;
sub import { #{{{
hook(type => "getsetup", id => "htmlbalance", call => \&getsetup);
@@ -39,7 +39,7 @@ sub sanitize (@) { #{{{
$node->delete();
}
else {
- $ret .= encode_xml($node);
+ $ret .= encode_entities($node);
}
}
$tree->delete();
diff --git a/doc/plugins/htmlbalance/discussion.mdwn b/doc/plugins/htmlbalance/discussion.mdwn
index bad052f1c..c66528a4f 100644
--- a/doc/plugins/htmlbalance/discussion.mdwn
+++ b/doc/plugins/htmlbalance/discussion.mdwn
@@ -2,6 +2,8 @@ Would it be possible to use [[!cpan HTML::Entities]] rather than
`XML::Atom::Util` for encoding entities? The former is already an ikiwiki
dependency (via [[!cpan HTML::Parser]]).
+> Now switched to HTML::Entities --[[Joey]]
+
I also wonder if there's any benefit to using this plugin aside from with
aggregate. Perhaps a small one but aggregate seems like the main case..
wondering if it would be better to just have aggregate balanace the html
diff --git a/t/htmlbalance.t b/t/htmlbalance.t
index 783ed9841..e5a5db0ee 100755
--- a/t/htmlbalance.t
+++ b/t/htmlbalance.t
@@ -5,10 +5,9 @@ use strict;
BEGIN {
eval q{
use HTML::TreeBuilder;
- use XML::Atom::Util qw(encode_xml);
};
if ($@) {
- eval q{use Test::More skip_all => "HTML::TreeBuilder or XML::Atom::Util not available"};
+ eval q{use Test::More skip_all => "HTML::TreeBuilder not available"};
}
else {
eval q{use Test::More tests => 7};
--
cgit v1.2.3