| Test-XML-Element documentation | Contained in the Test-XML-Element distribution. |
Test::XML::Element - Test the properties a single XML element in isolation.
0.01
use Test::XML::Element tests => 4;
element_is('<foobar />', "foobar")
has_attribute('<foobar color="red" />', 'color');
attribute_has_value('<foobar color="red">', color => 'red');
This module allows you to test the properties of a single XML element on it's own, which may be useful if your module does XML generation.
Test that an element is of the correct type.
Check that an element has a certain attribute
Check that an attribute has a certain attribute, and it is set to a certain value.
Oliver Charles oliver.g.charles@googlemail.com
Copyright 2009 Oliver Charles
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
| Test-XML-Element documentation | Contained in the Test-XML-Element distribution. |
package Test::XML::Element; use strict; use warnings; use 5.008; our $VERSION = '0.01'; use base 'Test::Builder::Module'; our @EXPORT = qw( element_is has_attribute attribute_is ); use XML::Simple; sub element_is { my $tb = Test::XML::Element->builder; my ($element, $name, $msg) = @_; my $xml = XMLin($element, KeepRoot => 1); return $tb->ok(exists $xml->{$name}, $msg); } sub has_attribute { my $tb = Test::XML::Element->builder; my ($element, $attribute, $msg) = @_; my $xml = XMLin($element); return $tb->ok(exists $xml->{$attribute}, $msg); } sub attribute_is { my $tb = Test::XML::Element->builder; my ($element, $attribute, $value, $msg) = @_; my $xml = XMLin($element); return $tb->ok(defined $xml->{$attribute} && $xml->{$attribute} eq $value, $msg); } 1;