#============================================================= -*-perl-*- # # t/xmlsimple.t # # Test the XML::Simple plugin. # # Written by Kenny Gatdula # # Copyright (C) 2004 Kenny Gatdula. All Rights Reserved. # # This is free software; you can redistribute it and/or modify it # under the same terms as Perl itself. # # $Id: xmlsimple.t,v 1.2 2004/10/04 10:03:52 abw Exp $ # #======================================================================== use strict; use lib qw( ./lib ../lib ); use Template::Test; use Cwd qw( abs_path ); $^W = 1; $Template::Test::DEBUG = 0; #$Template::Test::DEBUG = 1; #$Template::Parser::DEBUG = 1; #$Template::Directive::PRETTY = 1; my $tt1 = Template->new({ INCLUDE_PATH => [ qw( t/test/lib test/lib ) ], ABSOLUTE => 1, }); ok(1); eval "use XML::Simple"; if ($@ || $XML::Simple::VERSION < 2) { skip_all('XML::Simple v2.0 or later not installed'); } # account for script being run in distribution root or 't' directory my $file = abs_path( -d 't' ? 't/test/xml' : 'test/xml' ); $file .= '/testfile.xml'; test_expect(\*DATA, $tt1, { 'xmlfile' => $file }); __END__ -- test -- [% TRY; USE xmlsimple = XML.Simple('no_such_file'); CATCH; error; END %] -- expect -- file error - no_such_file: not found -- test -- [% USE xml = XML.Simple(xmlfile) -%] [% xml.section.name -%] -- expect -- alpha -- test -- [% USE xs = XML.Simple -%] [% xml = xs.XMLin(xmlfile) -%] [% xml.section.title -%] -- expect -- The Alpha Zone -- test -- [% USE XML; xs = XML.simple -%] [% xml = xs.XMLin(xmlfile) -%] [% xml.section.title -%] -- expect -- The Alpha Zone -- test -- [% USE xs = XML.Simple -%] [% xml = xs.XMLin(xmlfile) -%] [% xmlout = xs.XMLout(xml) -%] [% xmlout -%] -- expect --