#!/usr/bin/env perl

use warnings;
use strict;
use autodie qw(:all);

use FindBin qw($Bin);
use lib "$Bin/../lib";
use DBI;

# print $DBD::Version, "\n";

eval {
	doit();
};
die $@ if $@;

sub doit
{
	print "Test 1 - import from file\n";
	my $dbh = DBI->connect('dbi:XMLSimple(RaiseError => 1):');

	# print "xmlsimple_import file\n";
	$dbh->func('person', 'XML', "$Bin/../data/person.xml", 'xmlsimple_import');

	# print "prepare\n";
	# my $sth = $dbh->prepare( "SELECT * FROM person WHERE name = 'Nigel Horne'");
	# my $sth = $dbh->prepare( "SELECT * FROM person WHERE email = 'njh\@bandsman.co.uk'");
	my $sth = $dbh->prepare("SELECT * FROM person");
	# my $sth = $dbh->prepare( "SELECT name FROM person WHERE email = 'njh\@bandsman.co.uk'");
	# print "execute\n";
	$sth->execute();
	$sth->dump_results();

	print "Test 2 - import from string\n";
	$dbh = DBI->connect('dbi:XMLSimple(RaiseError => 1):');
	# print "xmlsimple_import string\n";
	$dbh->func('person2', 'XML', [<DATA>], 'xmlsimple_import');

	# $sth = $dbh->prepare("SELECT * FROM person2");
	$sth = $dbh->prepare("Select email FROM person2 WHERE name = 'Nigel Horne'");
	# print "execute\n";
	$sth->execute();
	$sth->dump_results();

	$sth = $dbh->prepare("Select name FROM person2");
	$sth->execute();
	$sth->dump_results();
}

__DATA__
<?xml version="1.0" encoding="US-ASCII"?>
<table>
	<row id="1">
		<email>njh@concert-bands.co.uk</email>
		<name>Nigel Horne</name>
	</row>
	<row id="2">
		<email>somebody@example.com</email>
		<name>A N Other</name>
		<name>Fred Flintsone</name>
	</row>
</table>
