--- /dev/null
+--TEST--
+xmlwriter_open_uri with PHP_MAXPATHLEN + 1
+--SKIPIF--
+<?php if (!extension_loaded("xmlwriter")) print "skip"; ?>
+--FILE--
+<?php
+$path = str_repeat('a', PHP_MAXPATHLEN + 1);
+var_dump(xmlwriter_open_uri('file:///' . $path));
+?>
+--CREDIT--
+Koen Kuipers koenk82@gmail.com
+Theo van der Zee
+#Test Fest Utrecht 09-05-2009
+--EXPECTF--
+
+Warning: xmlwriter_open_uri(): Unable to resolve file path in %s on line %d
+bool(false)
--- /dev/null
+--TEST--
+xmlwriter_open_uri with empty string as parameter
+--SKIPIF--
+<?php if (!extension_loaded("xmlwriter")) print "skip"; ?>
+--FILE--
+<?php
+var_dump(xmlwriter_open_uri(''));
+?>
+--CREDIT--
+Koen Kuipers koenk82@gmail.com
+Theo van der Zee
+#Test Fest Utrecht 09-05-2009
+--EXPECTF--
+
+Warning: xmlwriter_open_uri(): Empty string as source in %s on line %d
+bool(false)
--- /dev/null
+--TEST--
+xmlwriter_open_uri without parameter
+--SKIPIF--
+<?php if (!extension_loaded("xmlwriter")) print "skip"; ?>
+--FILE--
+<?php
+var_dump(xmlwriter_open_uri());
+?>
+--CREDIT--
+Koen Kuipers koenk82@gmail.com
+Theo van der Zee
+#Test Fest Utrecht 09-05-2009
+--EXPECTF--
+
+Warning: xmlwriter_open_uri() expects exactly %d parameter, %d given in %s on line %d
+NULL
--- /dev/null
+--TEST--
+xmlwriter_open_uri with non existing file
+--SKIPIF--
+<?php if (!extension_loaded("xmlwriter")) print "skip"; ?>
+--FILE--
+<?php
+var_dump(xmlwriter_open_uri('foo/bar.tmp'));
+?>
+--CREDIT--
+Koen Kuipers koenk82@gmail.com
+Theo van der Zee
+#Test Fest Utrecht 09-05-2009
+--XFAIL--
+Getting error: xmlNewTextWriterFilename : out of memory!
+--EXPECTF--
+
+Warning: xmlwriter_open_uri(%s): failed to open stream: No such file or directory in %s on line %d
+bool(false)
--- /dev/null
+--TEST--
+xmlwriter_open_uri with file:///
+--SKIPIF--
+<?php if (!extension_loaded("xmlwriter")) print "skip"; ?>
+--FILE--
+<?php
+var_dump(xmlwriter_open_uri('file:///'));
+?>
+--CREDIT--
+Koen Kuipers koenk82@gmail.com
+Theo van der Zee
+#Test Fest Utrecht 09-05-2009
+--XFAIL--
+Getting error: xmlNewTextWriterFilename : out of memory!
+--EXPECTF--
+
+Warning: xmlwriter_open_uri(/): failed to open stream: Is a directory in %s on line %d
+bool(false)
--- /dev/null
+--TEST--
+xmlwriter_open_uri with file://localhost/
+--SKIPIF--
+<?php if (!extension_loaded("xmlwriter")) print "skip"; ?>
+--FILE--
+<?php
+var_dump(xmlwriter_open_uri('file://localhost/'));
+?>
+--CREDIT--
+Koen Kuipers koenk82@gmail.com
+Theo van der Zee
+#Test Fest Utrecht 09-05-2009
+--XFAIL--
+Getting error: xmlNewTextWriterFilename : out of memory!
+--EXPECTF--
+
+Warning: xmlwriter_open_uri(/): failed to open stream: Is a directory in %s on line %d
+bool(false)
--- /dev/null
+--TEST--
+xmlwriter_set_indent_string passing xmlwriter resource
+--SKIPIF--
+<?php if (!extension_loaded("xmlwriter")) print "skip"; ?>
+--FILE--
+<?php
+$temp_filename = dirname(__FILE__)."/xmlwriter_set_indent_string.tmp";
+ $fp = fopen($temp_filename, "w");
+ fwrite ($fp, "Hi");
+ fclose($fp);
+$resource = xmlwriter_open_uri($temp_filename);
+var_dump(xmlwriter_set_indent_string($resource, ' '));
+?>
+--CLEAN--
+<?php
+$temp_filename = dirname(__FILE__)."/xmlwriter_set_indent_string.tmp";
+unlink($temp_filename);
+?>
+--CREDIT--
+Koen Kuipers koenk82@gmail.com
+Theo van der Zee
+#Test Fest Utrecht 09-05-2009
+--EXPECT--
+bool(true)
--- /dev/null
+--TEST--
+xmlwriter_set_indent_string with missing param(s)
+--SKIPIF--
+<?php if (!extension_loaded("xmlwriter")) print "skip"; ?>
+--FILE--
+<?php
+$temp_filename = dirname(__FILE__)."/xmlwriter_set_indent_string_error.tmp";
+ $fp = fopen($temp_filename, "w");
+ fwrite ($fp, "Hi");
+ fclose($fp);
+$resource = xmlwriter_open_uri($temp_filename);
+var_dump(xmlwriter_set_indent_string($resource));
+?>
+--CLEAN--
+<?php
+$temp_filename = dirname(__FILE__)."/xmlwriter_set_indent_string_error.tmp";
+unlink($temp_filename);
+?>
+--CREDIT--
+Koen Kuipers koenk82@gmail.com
+--EXPECTF--
+
+Warning: xmlwriter_set_indent_string() expects exactly %d parameters, %d given in %s on line %d
+NULL
--- /dev/null
+--TEST--
+xmlwriter_write_attribute_ns basic function tests
+--SKIPIF--
+<?php if (!extension_loaded("xmlwriter")) print "skip"; ?>
+--FILE--
+<?php
+$xw = xmlwriter_open_memory();
+xmlwriter_set_indent($xw, TRUE);
+xmlwriter_start_document($xw, NULL, "UTF-8");
+xmlwriter_start_element($xw, 'root');
+xmlwriter_write_attribute_ns($xw, 'prefix', 'id', 'http://www.php.net/uri', 'elem1');
+xmlwriter_start_element($xw, 'elem1');
+xmlwriter_write_attribute($xw, 'attr1', 'first');
+xmlwriter_end_element($xw);
+xmlwriter_full_end_element($xw);
+xmlwriter_end_document($xw);
+
+$output = xmlwriter_flush($xw, true);
+print $output;
+?>
+--CREDIT--
+Koen Kuipers koenk82@gmail.com
+--EXPECT--
+<?xml version="1.0" encoding="UTF-8"?>
+<root prefix:id="elem1" xmlns:prefix="http://www.php.net/uri">
+ <elem1 attr1="first"/>
+</root>
+
--- /dev/null
+--TEST--
+xmlwriter_write_attribute_ns with missing param
+--SKIPIF--
+<?php if (!extension_loaded("xmlwriter")) print "skip"; ?>
+--FILE--
+<?php
+$xw = xmlwriter_open_memory();
+xmlwriter_set_indent($xw, TRUE);
+xmlwriter_start_document($xw, NULL, "UTF-8");
+xmlwriter_start_element($xw, 'root');
+xmlwriter_write_attribute_ns($xw, 'prefix', '', 'http://www.php.net/uri');
+xmlwriter_start_element($xw, 'elem1');
+xmlwriter_write_attribute($xw, 'attr1', 'first');
+xmlwriter_end_element($xw);
+xmlwriter_full_end_element($xw);
+xmlwriter_end_document($xw);
+
+$output = xmlwriter_flush($xw, true);
+print $output;
+
+// write attribute_ns without start_element first
+$xw = xmlwriter_open_memory();
+var_dump(xmlwriter_write_attribute_ns($xw, 'prefix', 'id', 'http://www.php.net/uri', 'elem1'));
+print xmlwriter_output_memory($xw);
+?>
+--CREDIT--
+Koen Kuipers koenk82@gmail.com
+--EXPECTF--
+
+Warning: xmlwriter_write_attribute_ns() expects exactly %d parameters, %d given in %s on line %d
+<?xml version="1.0" encoding="UTF-8"?>
+<root>
+ <elem1 attr1="first"/>
+</root>
+bool(false)
--- /dev/null
+--TEST--
+xmlwriter_write_dtd basic function tests
+--SKIPIF--
+<?php if (!extension_loaded("xmlwriter")) print "skip"; ?>
+--FILE--
+<?php
+
+$xmlwriter = xmlwriter_open_memory();
+var_dump(xmlwriter_write_dtd($xmlwriter, 'bla1', 'bla2', 'bla3', 'bla4'));
+$output = xmlwriter_flush($xmlwriter, true);
+print $output . PHP_EOL;
+
+var_dump(xmlwriter_write_dtd($xmlwriter, '', '', ''));
+$output = xmlwriter_flush($xmlwriter, true);
+print $output;
+?>
+--CREDIT--
+Koen Kuipers koenk82@gmail.com
+--EXPECT--
+bool(true)
+<!DOCTYPE bla1 PUBLIC "bla2" "bla3" [bla4]>
+bool(false)
--- /dev/null
+--TEST--
+xmlwriter_write_dtd with missing param(s)
+--SKIPIF--
+<?php if (!extension_loaded("xmlwriter")) print "skip"; ?>
+--FILE--
+<?php
+$xmlwriter = xmlwriter_open_memory();
+var_dump(xmlwriter_write_dtd($xmlwriter));
+?>
+--CREDIT--
+Koen Kuipers koenk82@gmail.com
+--EXPECTF--
+
+Warning: xmlwriter_write_dtd() expects at least %d parameters, %d given in %s on line %d
+NULL