first pass simple cases working
John Napiorkowski [Fri, 25 Feb 2011 02:29:45 +0000 (21:29 -0500)]
t/tags_as_zoom_events.t

index b059df5..f7c047c 100644 (file)
@@ -39,20 +39,20 @@ use HTML::Zoom;
 
   sub landing {
     my (%data) = @_;
-    <p>, "Hi, I'm version: ", $data{site_version}, </p>,
+    <p>, "Hi, I'm version: $data{site_version}", </p>,
     <p>, "Here's some interesting things about me", </p>,
     <img src="smilyface.png" alt="smiles" />,
     <ul>,
-        <li>, <a href="/user">, "My Users", </li>,
-        <li>, <a href="/user/$data{new_user_link}">, "Create", "New User", </li>,
+      <li>, <a href="/user">, "My Users", </li>,
+      <li>, <a href="/user/$data{new_user_link}">, "Create New User", </li>,
     </ul>;
   }
 
   sub process_templates {
     my ($templates, %data) = @_;
     for my $template(@$templates) {
-        my @processed = $template->(%data);
-        $data{content} = \@processed;
+      my @processed = $template->(%data);
+      $data{content} = \@processed;
     }
     return @{$data{content}};
   }
@@ -71,7 +71,8 @@ use HTML::Zoom;
 
   sub _convert_to_events {
     map {
-      my $raw = ref $_ ? $$_ : $_;
+      ## TODO: This seems quite fragile
+      my $raw = ref $_ ? (ref $_ eq 'SCALAR' ? $$_: "$_") : $_;
       my @info = ($raw =~m{
       (
         (?:[^<]*) < (?:
@@ -122,8 +123,12 @@ ok my $html = BasicPage->show_landing_html;
 ok my $zoom = HTML::Zoom->from_html($html);
 ok my $events = BasicPage->show_landing_events;
 
-use Data::Dump 'dump';
-warn dump $html;
-warn dump $zoom->to_events;
-warn dump $events;
+is_deeply $zoom->to_events, $events,
+  'Made HZoom events from XMLTags';
 
+#use Data::Dump 'dump';
+#warn dump $html;
+#warn dump $zoom->to_events;
+#warn dump $events;
+
+done_testing();