#!/usr/bin/ruby -w

require '../xslt'

xslt = XML::XSLT.new()

print "\n-------------------------------------------------\n"
print "ERROR #1 : XML XSL inverse\n"
begin
xslt.xsl = IO::readlines( "fuzface.xml" ).join( )
rescue => e
  print "Error trapped by ", e.class, " : ", e.message, "\n"
  p XML::XSLT::errors
end

begin
  xslt.xml = IO::readlines( "fuzface.xsl" ).join( )
rescue => e
  print "Error trapped by ", e.class, " : ", e.message, "\n"
  p XML::XSLT::errors
end

begin
  out = xslt.serve()
rescue => e
  print "Error trapped by ", e.class, " : ", e.message, "\n"
  p XML::XSLT::errors
end

print "\n-------------------------------------------------\n"
print "ERROR #2 : XSL error\n"
begin
  xslt.xml = IO::readlines( "fuzface.xml" ).join( )
rescue => e
  print "Error trapped by ", e.class, " : ", e.message, "\n"
  p XML::XSLT::errors
end

begin
  xslt.xsl = "totototototot"
rescue => e
  print "Error trapped by ", e.class, " : ", e.message, "\n"
  p XML::XSLT::errors
end

begin
  out = xslt.serve()
rescue => e
  print "Error trapped by ", e.class, " : ", e.message, "\n"
  p XML::XSLT::errors
end

print "\n-------------------------------------------------\n"
print "ERROR #3 : XML error\n"
begin
  xslt.xml = "totototototot"
rescue => e
  print "Error trapped by ", e.class, " : ", e.message, "\n"
  p XML::XSLT::errors
end

begin
  xslt.xsl = IO::readlines( "fuzface.xsl" ).join( )
rescue => e
  print "Error trapped by ", e.class, " : ", e.message, "\n"
  p XML::XSLT::errors
end

begin
  out = xslt.serve()
rescue => e
  print "Error trapped by ", e.class, " : ", e.message, "\n"
  p XML::XSLT::errors
end

print "\n-------------------------------------------------\n"
print "SUCCESS !\n"
xslt.xml = IO::readlines( "fuzface.xml" ).join( )
xslt.xsl = IO::readlines( "fuzface.xsl" ).join( )
begin
  out = xslt.serve()
rescue => e
  print "Error trapped by ", e.class, " : ", e.message, "\n"
  p XML::XSLT::errors
end

