diff --git a/examples/test/list.html b/examples/test/list.html
deleted file mode 100755
index b2183fd..0000000
--- a/examples/test/list.html
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
-
- PNG Test
-
-
-
- Basic
-
grayscale
-
color
-
paletted
-
grayscale + alpha
-
color + alpha
-
- Image filtering
-
grayscale, filter 0
-
color, filter 0
-
grayscale, filter 1
-
color, filter 1
-
grayscale, filter 2
-
color, filter 2
-
grayscale, filter 3
-
color, filter 3
-
grayscale, filter 4
-
color, filter 4
-
- Transparency
-
grayscale, not transparent
-
color, not transparent
-
paletted, not transparent
-
color, transparent
-
paletted, transparent
-
-
diff --git a/examples/test/bg.js b/test/bg.js
similarity index 100%
rename from examples/test/bg.js
rename to test/bg.js
diff --git a/examples/test/bg.png b/test/bg.png
similarity index 100%
rename from examples/test/bg.png
rename to test/bg.png
diff --git a/examples/test/img/PngSuite.LICENSE b/test/in/PngSuite.LICENSE
similarity index 100%
rename from examples/test/img/PngSuite.LICENSE
rename to test/in/PngSuite.LICENSE
diff --git a/examples/test/img/PngSuite.README b/test/in/PngSuite.README
similarity index 96%
rename from examples/test/img/PngSuite.README
rename to test/in/PngSuite.README
index 3ef8f24..94df6cc 100644
--- a/examples/test/img/PngSuite.README
+++ b/test/in/PngSuite.README
@@ -1,25 +1,25 @@
- PNGSUITE
-----------------
-
- testset for PNG-(de)coders
- created by Willem van Schaik
-------------------------------------
-
-This is a collection of graphics images created to test the png applications
-like viewers, converters and editors. All (as far as that is possible)
-formats supported by the PNG standard are represented.
-
-The suite consists of the following files:
-
-- PngSuite.README - this file
-- PngSuite.LICENSE - the PngSuite is freeware
-- PngSuite.png - image with PngSuite logo
-- PngSuite.tgz - archive of all PNG testfiles
-- PngSuite.zip - same in .zip format for PCs
-
-
---------
- (c) Willem van Schaik
- willem@schaik.com
- Calgary, April 2011
-
+ PNGSUITE
+----------------
+
+ testset for PNG-(de)coders
+ created by Willem van Schaik
+------------------------------------
+
+This is a collection of graphics images created to test the png applications
+like viewers, converters and editors. All (as far as that is possible)
+formats supported by the PNG standard are represented.
+
+The suite consists of the following files:
+
+- PngSuite.README - this file
+- PngSuite.LICENSE - the PngSuite is freeware
+- PngSuite.png - image with PngSuite logo
+- PngSuite.tgz - archive of all PNG testfiles
+- PngSuite.zip - same in .zip format for PCs
+
+
+--------
+ (c) Willem van Schaik
+ willem@schaik.com
+ Calgary, April 2011
+
diff --git a/test/in/PngSuite.png b/test/in/PngSuite.png
new file mode 100644
index 0000000..205460d
Binary files /dev/null and b/test/in/PngSuite.png differ
diff --git a/test/in/basi0g01.png b/test/in/basi0g01.png
new file mode 100644
index 0000000..556fa72
Binary files /dev/null and b/test/in/basi0g01.png differ
diff --git a/test/in/basi0g02.png b/test/in/basi0g02.png
new file mode 100644
index 0000000..ce09821
Binary files /dev/null and b/test/in/basi0g02.png differ
diff --git a/test/in/basi0g04.png b/test/in/basi0g04.png
new file mode 100644
index 0000000..3853273
Binary files /dev/null and b/test/in/basi0g04.png differ
diff --git a/test/in/basi0g08.png b/test/in/basi0g08.png
new file mode 100644
index 0000000..faed8be
Binary files /dev/null and b/test/in/basi0g08.png differ
diff --git a/test/in/basi0g16.png b/test/in/basi0g16.png
new file mode 100644
index 0000000..a9f2816
Binary files /dev/null and b/test/in/basi0g16.png differ
diff --git a/test/in/basi2c08.png b/test/in/basi2c08.png
new file mode 100644
index 0000000..2aab44d
Binary files /dev/null and b/test/in/basi2c08.png differ
diff --git a/test/in/basi2c16.png b/test/in/basi2c16.png
new file mode 100644
index 0000000..cd7e50f
Binary files /dev/null and b/test/in/basi2c16.png differ
diff --git a/test/in/basi3p01.png b/test/in/basi3p01.png
new file mode 100644
index 0000000..00a7cea
Binary files /dev/null and b/test/in/basi3p01.png differ
diff --git a/test/in/basi3p02.png b/test/in/basi3p02.png
new file mode 100644
index 0000000..bb16b44
Binary files /dev/null and b/test/in/basi3p02.png differ
diff --git a/test/in/basi3p04.png b/test/in/basi3p04.png
new file mode 100644
index 0000000..b4e888e
Binary files /dev/null and b/test/in/basi3p04.png differ
diff --git a/test/in/basi3p08.png b/test/in/basi3p08.png
new file mode 100644
index 0000000..50a6d1c
Binary files /dev/null and b/test/in/basi3p08.png differ
diff --git a/test/in/basi4a08.png b/test/in/basi4a08.png
new file mode 100644
index 0000000..398132b
Binary files /dev/null and b/test/in/basi4a08.png differ
diff --git a/test/in/basi4a16.png b/test/in/basi4a16.png
new file mode 100644
index 0000000..51192e7
Binary files /dev/null and b/test/in/basi4a16.png differ
diff --git a/test/in/basi6a08.png b/test/in/basi6a08.png
new file mode 100644
index 0000000..aecb32e
Binary files /dev/null and b/test/in/basi6a08.png differ
diff --git a/test/in/basi6a16.png b/test/in/basi6a16.png
new file mode 100644
index 0000000..4181533
Binary files /dev/null and b/test/in/basi6a16.png differ
diff --git a/test/in/basn0g01.png b/test/in/basn0g01.png
new file mode 100644
index 0000000..1d72242
Binary files /dev/null and b/test/in/basn0g01.png differ
diff --git a/test/in/basn0g02.png b/test/in/basn0g02.png
new file mode 100644
index 0000000..5083324
Binary files /dev/null and b/test/in/basn0g02.png differ
diff --git a/test/in/basn0g04.png b/test/in/basn0g04.png
new file mode 100644
index 0000000..0bf3687
Binary files /dev/null and b/test/in/basn0g04.png differ
diff --git a/examples/test/img/basn0g08.png b/test/in/basn0g08.png
similarity index 100%
rename from examples/test/img/basn0g08.png
rename to test/in/basn0g08.png
diff --git a/test/in/basn0g16.png b/test/in/basn0g16.png
new file mode 100644
index 0000000..e7c82f7
Binary files /dev/null and b/test/in/basn0g16.png differ
diff --git a/examples/test/img/basn2c08.png b/test/in/basn2c08.png
similarity index 100%
rename from examples/test/img/basn2c08.png
rename to test/in/basn2c08.png
diff --git a/test/in/basn2c16.png b/test/in/basn2c16.png
new file mode 100644
index 0000000..50c1cb9
Binary files /dev/null and b/test/in/basn2c16.png differ
diff --git a/test/in/basn3p01.png b/test/in/basn3p01.png
new file mode 100644
index 0000000..b145c2b
Binary files /dev/null and b/test/in/basn3p01.png differ
diff --git a/test/in/basn3p02.png b/test/in/basn3p02.png
new file mode 100644
index 0000000..8985b3d
Binary files /dev/null and b/test/in/basn3p02.png differ
diff --git a/test/in/basn3p04.png b/test/in/basn3p04.png
new file mode 100644
index 0000000..0fbf9e8
Binary files /dev/null and b/test/in/basn3p04.png differ
diff --git a/examples/test/img/basn3p08.png b/test/in/basn3p08.png
similarity index 100%
rename from examples/test/img/basn3p08.png
rename to test/in/basn3p08.png
diff --git a/examples/test/img/basn4a08.png b/test/in/basn4a08.png
similarity index 100%
rename from examples/test/img/basn4a08.png
rename to test/in/basn4a08.png
diff --git a/test/in/basn4a16.png b/test/in/basn4a16.png
new file mode 100644
index 0000000..8243644
Binary files /dev/null and b/test/in/basn4a16.png differ
diff --git a/examples/test/img/basn6a08.png b/test/in/basn6a08.png
similarity index 100%
rename from examples/test/img/basn6a08.png
rename to test/in/basn6a08.png
diff --git a/test/in/basn6a16.png b/test/in/basn6a16.png
new file mode 100644
index 0000000..984a995
Binary files /dev/null and b/test/in/basn6a16.png differ
diff --git a/test/in/bgai4a08.png b/test/in/bgai4a08.png
new file mode 100644
index 0000000..398132b
Binary files /dev/null and b/test/in/bgai4a08.png differ
diff --git a/test/in/bgai4a16.png b/test/in/bgai4a16.png
new file mode 100644
index 0000000..51192e7
Binary files /dev/null and b/test/in/bgai4a16.png differ
diff --git a/test/in/bgan6a08.png b/test/in/bgan6a08.png
new file mode 100644
index 0000000..e608738
Binary files /dev/null and b/test/in/bgan6a08.png differ
diff --git a/test/in/bgan6a16.png b/test/in/bgan6a16.png
new file mode 100644
index 0000000..984a995
Binary files /dev/null and b/test/in/bgan6a16.png differ
diff --git a/test/in/bgbn4a08.png b/test/in/bgbn4a08.png
new file mode 100644
index 0000000..7cbefc3
Binary files /dev/null and b/test/in/bgbn4a08.png differ
diff --git a/test/in/bggn4a16.png b/test/in/bggn4a16.png
new file mode 100644
index 0000000..13fd85b
Binary files /dev/null and b/test/in/bggn4a16.png differ
diff --git a/test/in/bgwn6a08.png b/test/in/bgwn6a08.png
new file mode 100644
index 0000000..a67ff20
Binary files /dev/null and b/test/in/bgwn6a08.png differ
diff --git a/test/in/bgyn6a16.png b/test/in/bgyn6a16.png
new file mode 100644
index 0000000..ae3e9be
Binary files /dev/null and b/test/in/bgyn6a16.png differ
diff --git a/test/in/ccwn2c08.png b/test/in/ccwn2c08.png
new file mode 100644
index 0000000..47c2481
Binary files /dev/null and b/test/in/ccwn2c08.png differ
diff --git a/test/in/ccwn3p08.png b/test/in/ccwn3p08.png
new file mode 100644
index 0000000..8bb2c10
Binary files /dev/null and b/test/in/ccwn3p08.png differ
diff --git a/test/in/cdfn2c08.png b/test/in/cdfn2c08.png
new file mode 100644
index 0000000..559e526
Binary files /dev/null and b/test/in/cdfn2c08.png differ
diff --git a/test/in/cdhn2c08.png b/test/in/cdhn2c08.png
new file mode 100644
index 0000000..3e07e8e
Binary files /dev/null and b/test/in/cdhn2c08.png differ
diff --git a/test/in/cdsn2c08.png b/test/in/cdsn2c08.png
new file mode 100644
index 0000000..076c32c
Binary files /dev/null and b/test/in/cdsn2c08.png differ
diff --git a/test/in/cdun2c08.png b/test/in/cdun2c08.png
new file mode 100644
index 0000000..846033b
Binary files /dev/null and b/test/in/cdun2c08.png differ
diff --git a/test/in/ch1n3p04.png b/test/in/ch1n3p04.png
new file mode 100644
index 0000000..17cd12d
Binary files /dev/null and b/test/in/ch1n3p04.png differ
diff --git a/test/in/ch2n3p08.png b/test/in/ch2n3p08.png
new file mode 100644
index 0000000..25c1798
Binary files /dev/null and b/test/in/ch2n3p08.png differ
diff --git a/test/in/cm0n0g04.png b/test/in/cm0n0g04.png
new file mode 100644
index 0000000..9fba5db
Binary files /dev/null and b/test/in/cm0n0g04.png differ
diff --git a/test/in/cm7n0g04.png b/test/in/cm7n0g04.png
new file mode 100644
index 0000000..f7dc46e
Binary files /dev/null and b/test/in/cm7n0g04.png differ
diff --git a/test/in/cm9n0g04.png b/test/in/cm9n0g04.png
new file mode 100644
index 0000000..dd70911
Binary files /dev/null and b/test/in/cm9n0g04.png differ
diff --git a/test/in/cs3n2c16.png b/test/in/cs3n2c16.png
new file mode 100644
index 0000000..bf5fd20
Binary files /dev/null and b/test/in/cs3n2c16.png differ
diff --git a/test/in/cs3n3p08.png b/test/in/cs3n3p08.png
new file mode 100644
index 0000000..f4a6623
Binary files /dev/null and b/test/in/cs3n3p08.png differ
diff --git a/test/in/cs5n2c08.png b/test/in/cs5n2c08.png
new file mode 100644
index 0000000..40f947c
Binary files /dev/null and b/test/in/cs5n2c08.png differ
diff --git a/test/in/cs5n3p08.png b/test/in/cs5n3p08.png
new file mode 100644
index 0000000..dfd6e6e
Binary files /dev/null and b/test/in/cs5n3p08.png differ
diff --git a/test/in/cs8n2c08.png b/test/in/cs8n2c08.png
new file mode 100644
index 0000000..8e01d32
Binary files /dev/null and b/test/in/cs8n2c08.png differ
diff --git a/test/in/cs8n3p08.png b/test/in/cs8n3p08.png
new file mode 100644
index 0000000..a44066e
Binary files /dev/null and b/test/in/cs8n3p08.png differ
diff --git a/test/in/ct0n0g04.png b/test/in/ct0n0g04.png
new file mode 100644
index 0000000..40d1e06
Binary files /dev/null and b/test/in/ct0n0g04.png differ
diff --git a/test/in/ct1n0g04.png b/test/in/ct1n0g04.png
new file mode 100644
index 0000000..3ba110a
Binary files /dev/null and b/test/in/ct1n0g04.png differ
diff --git a/test/in/cten0g04.png b/test/in/cten0g04.png
new file mode 100644
index 0000000..a6a56fa
Binary files /dev/null and b/test/in/cten0g04.png differ
diff --git a/test/in/ctfn0g04.png b/test/in/ctfn0g04.png
new file mode 100644
index 0000000..353873e
Binary files /dev/null and b/test/in/ctfn0g04.png differ
diff --git a/test/in/ctgn0g04.png b/test/in/ctgn0g04.png
new file mode 100644
index 0000000..453f2b0
Binary files /dev/null and b/test/in/ctgn0g04.png differ
diff --git a/test/in/cthn0g04.png b/test/in/cthn0g04.png
new file mode 100644
index 0000000..8fce253
Binary files /dev/null and b/test/in/cthn0g04.png differ
diff --git a/test/in/ctjn0g04.png b/test/in/ctjn0g04.png
new file mode 100644
index 0000000..a77b8d2
Binary files /dev/null and b/test/in/ctjn0g04.png differ
diff --git a/test/in/ctzn0g04.png b/test/in/ctzn0g04.png
new file mode 100644
index 0000000..b4401c9
Binary files /dev/null and b/test/in/ctzn0g04.png differ
diff --git a/examples/test/img/f00n0g08.png b/test/in/f00n0g08.png
similarity index 100%
rename from examples/test/img/f00n0g08.png
rename to test/in/f00n0g08.png
diff --git a/examples/test/img/f00n2c08.png b/test/in/f00n2c08.png
similarity index 100%
rename from examples/test/img/f00n2c08.png
rename to test/in/f00n2c08.png
diff --git a/examples/test/img/f01n0g08.png b/test/in/f01n0g08.png
similarity index 100%
rename from examples/test/img/f01n0g08.png
rename to test/in/f01n0g08.png
diff --git a/examples/test/img/f01n2c08.png b/test/in/f01n2c08.png
similarity index 100%
rename from examples/test/img/f01n2c08.png
rename to test/in/f01n2c08.png
diff --git a/examples/test/img/f02n0g08.png b/test/in/f02n0g08.png
similarity index 100%
rename from examples/test/img/f02n0g08.png
rename to test/in/f02n0g08.png
diff --git a/examples/test/img/f02n2c08.png b/test/in/f02n2c08.png
similarity index 100%
rename from examples/test/img/f02n2c08.png
rename to test/in/f02n2c08.png
diff --git a/examples/test/img/f03n0g08.png b/test/in/f03n0g08.png
similarity index 100%
rename from examples/test/img/f03n0g08.png
rename to test/in/f03n0g08.png
diff --git a/examples/test/img/f03n2c08.png b/test/in/f03n2c08.png
similarity index 100%
rename from examples/test/img/f03n2c08.png
rename to test/in/f03n2c08.png
diff --git a/examples/test/img/f04n0g08.png b/test/in/f04n0g08.png
similarity index 100%
rename from examples/test/img/f04n0g08.png
rename to test/in/f04n0g08.png
diff --git a/examples/test/img/f04n2c08.png b/test/in/f04n2c08.png
similarity index 100%
rename from examples/test/img/f04n2c08.png
rename to test/in/f04n2c08.png
diff --git a/test/in/f99n0g04.png b/test/in/f99n0g04.png
new file mode 100644
index 0000000..0b521c1
Binary files /dev/null and b/test/in/f99n0g04.png differ
diff --git a/test/in/g03n0g16.png b/test/in/g03n0g16.png
new file mode 100644
index 0000000..41083ca
Binary files /dev/null and b/test/in/g03n0g16.png differ
diff --git a/test/in/g03n2c08.png b/test/in/g03n2c08.png
new file mode 100644
index 0000000..a9354db
Binary files /dev/null and b/test/in/g03n2c08.png differ
diff --git a/test/in/g03n3p04.png b/test/in/g03n3p04.png
new file mode 100644
index 0000000..60396c9
Binary files /dev/null and b/test/in/g03n3p04.png differ
diff --git a/test/in/g04n0g16.png b/test/in/g04n0g16.png
new file mode 100644
index 0000000..32395b7
Binary files /dev/null and b/test/in/g04n0g16.png differ
diff --git a/test/in/g04n2c08.png b/test/in/g04n2c08.png
new file mode 100644
index 0000000..a652b0c
Binary files /dev/null and b/test/in/g04n2c08.png differ
diff --git a/test/in/g04n3p04.png b/test/in/g04n3p04.png
new file mode 100644
index 0000000..5661cc3
Binary files /dev/null and b/test/in/g04n3p04.png differ
diff --git a/test/in/g05n0g16.png b/test/in/g05n0g16.png
new file mode 100644
index 0000000..70b37f0
Binary files /dev/null and b/test/in/g05n0g16.png differ
diff --git a/test/in/g05n2c08.png b/test/in/g05n2c08.png
new file mode 100644
index 0000000..932c136
Binary files /dev/null and b/test/in/g05n2c08.png differ
diff --git a/test/in/g05n3p04.png b/test/in/g05n3p04.png
new file mode 100644
index 0000000..9619930
Binary files /dev/null and b/test/in/g05n3p04.png differ
diff --git a/test/in/g07n0g16.png b/test/in/g07n0g16.png
new file mode 100644
index 0000000..d6a47c2
Binary files /dev/null and b/test/in/g07n0g16.png differ
diff --git a/test/in/g07n2c08.png b/test/in/g07n2c08.png
new file mode 100644
index 0000000..5973464
Binary files /dev/null and b/test/in/g07n2c08.png differ
diff --git a/test/in/g07n3p04.png b/test/in/g07n3p04.png
new file mode 100644
index 0000000..c73fb61
Binary files /dev/null and b/test/in/g07n3p04.png differ
diff --git a/test/in/g10n0g16.png b/test/in/g10n0g16.png
new file mode 100644
index 0000000..85f2c95
Binary files /dev/null and b/test/in/g10n0g16.png differ
diff --git a/test/in/g10n2c08.png b/test/in/g10n2c08.png
new file mode 100644
index 0000000..b303997
Binary files /dev/null and b/test/in/g10n2c08.png differ
diff --git a/test/in/g10n3p04.png b/test/in/g10n3p04.png
new file mode 100644
index 0000000..1b6a6be
Binary files /dev/null and b/test/in/g10n3p04.png differ
diff --git a/test/in/g25n0g16.png b/test/in/g25n0g16.png
new file mode 100644
index 0000000..a9f6787
Binary files /dev/null and b/test/in/g25n0g16.png differ
diff --git a/test/in/g25n2c08.png b/test/in/g25n2c08.png
new file mode 100644
index 0000000..03f505a
Binary files /dev/null and b/test/in/g25n2c08.png differ
diff --git a/test/in/g25n3p04.png b/test/in/g25n3p04.png
new file mode 100644
index 0000000..4f943c6
Binary files /dev/null and b/test/in/g25n3p04.png differ
diff --git a/test/in/oi1n0g16.png b/test/in/oi1n0g16.png
new file mode 100644
index 0000000..e7c82f7
Binary files /dev/null and b/test/in/oi1n0g16.png differ
diff --git a/test/in/oi1n2c16.png b/test/in/oi1n2c16.png
new file mode 100644
index 0000000..50c1cb9
Binary files /dev/null and b/test/in/oi1n2c16.png differ
diff --git a/test/in/oi2n0g16.png b/test/in/oi2n0g16.png
new file mode 100644
index 0000000..14d64c5
Binary files /dev/null and b/test/in/oi2n0g16.png differ
diff --git a/test/in/oi2n2c16.png b/test/in/oi2n2c16.png
new file mode 100644
index 0000000..4c2e3e3
Binary files /dev/null and b/test/in/oi2n2c16.png differ
diff --git a/test/in/oi4n0g16.png b/test/in/oi4n0g16.png
new file mode 100644
index 0000000..69e73ed
Binary files /dev/null and b/test/in/oi4n0g16.png differ
diff --git a/test/in/oi4n2c16.png b/test/in/oi4n2c16.png
new file mode 100644
index 0000000..93691e3
Binary files /dev/null and b/test/in/oi4n2c16.png differ
diff --git a/test/in/oi9n0g16.png b/test/in/oi9n0g16.png
new file mode 100644
index 0000000..9248413
Binary files /dev/null and b/test/in/oi9n0g16.png differ
diff --git a/test/in/oi9n2c16.png b/test/in/oi9n2c16.png
new file mode 100644
index 0000000..f0512e4
Binary files /dev/null and b/test/in/oi9n2c16.png differ
diff --git a/test/in/pp0n2c16.png b/test/in/pp0n2c16.png
new file mode 100644
index 0000000..8f2aad7
Binary files /dev/null and b/test/in/pp0n2c16.png differ
diff --git a/test/in/pp0n6a08.png b/test/in/pp0n6a08.png
new file mode 100644
index 0000000..4ed7a30
Binary files /dev/null and b/test/in/pp0n6a08.png differ
diff --git a/test/in/ps1n0g08.png b/test/in/ps1n0g08.png
new file mode 100644
index 0000000..99625fa
Binary files /dev/null and b/test/in/ps1n0g08.png differ
diff --git a/test/in/ps1n2c16.png b/test/in/ps1n2c16.png
new file mode 100644
index 0000000..0c7a6b3
Binary files /dev/null and b/test/in/ps1n2c16.png differ
diff --git a/test/in/ps2n0g08.png b/test/in/ps2n0g08.png
new file mode 100644
index 0000000..90b2979
Binary files /dev/null and b/test/in/ps2n0g08.png differ
diff --git a/test/in/ps2n2c16.png b/test/in/ps2n2c16.png
new file mode 100644
index 0000000..a4a181e
Binary files /dev/null and b/test/in/ps2n2c16.png differ
diff --git a/test/in/s01i3p01.png b/test/in/s01i3p01.png
new file mode 100644
index 0000000..6c0fad1
Binary files /dev/null and b/test/in/s01i3p01.png differ
diff --git a/test/in/s01n3p01.png b/test/in/s01n3p01.png
new file mode 100644
index 0000000..cb2c8c7
Binary files /dev/null and b/test/in/s01n3p01.png differ
diff --git a/test/in/s02i3p01.png b/test/in/s02i3p01.png
new file mode 100644
index 0000000..2defaed
Binary files /dev/null and b/test/in/s02i3p01.png differ
diff --git a/test/in/s02n3p01.png b/test/in/s02n3p01.png
new file mode 100644
index 0000000..2b1b669
Binary files /dev/null and b/test/in/s02n3p01.png differ
diff --git a/test/in/s03i3p01.png b/test/in/s03i3p01.png
new file mode 100644
index 0000000..c23fdc4
Binary files /dev/null and b/test/in/s03i3p01.png differ
diff --git a/test/in/s03n3p01.png b/test/in/s03n3p01.png
new file mode 100644
index 0000000..6d96ee4
Binary files /dev/null and b/test/in/s03n3p01.png differ
diff --git a/test/in/s04i3p01.png b/test/in/s04i3p01.png
new file mode 100644
index 0000000..0e710c2
Binary files /dev/null and b/test/in/s04i3p01.png differ
diff --git a/test/in/s04n3p01.png b/test/in/s04n3p01.png
new file mode 100644
index 0000000..956396c
Binary files /dev/null and b/test/in/s04n3p01.png differ
diff --git a/test/in/s05i3p02.png b/test/in/s05i3p02.png
new file mode 100644
index 0000000..d14cbd3
Binary files /dev/null and b/test/in/s05i3p02.png differ
diff --git a/test/in/s05n3p02.png b/test/in/s05n3p02.png
new file mode 100644
index 0000000..bf940f0
Binary files /dev/null and b/test/in/s05n3p02.png differ
diff --git a/test/in/s06i3p02.png b/test/in/s06i3p02.png
new file mode 100644
index 0000000..456ada3
Binary files /dev/null and b/test/in/s06i3p02.png differ
diff --git a/test/in/s06n3p02.png b/test/in/s06n3p02.png
new file mode 100644
index 0000000..501064d
Binary files /dev/null and b/test/in/s06n3p02.png differ
diff --git a/test/in/s07i3p02.png b/test/in/s07i3p02.png
new file mode 100644
index 0000000..44b66ba
Binary files /dev/null and b/test/in/s07i3p02.png differ
diff --git a/test/in/s07n3p02.png b/test/in/s07n3p02.png
new file mode 100644
index 0000000..6a58259
Binary files /dev/null and b/test/in/s07n3p02.png differ
diff --git a/test/in/s08i3p02.png b/test/in/s08i3p02.png
new file mode 100644
index 0000000..acf74f3
Binary files /dev/null and b/test/in/s08i3p02.png differ
diff --git a/test/in/s08n3p02.png b/test/in/s08n3p02.png
new file mode 100644
index 0000000..b7094e1
Binary files /dev/null and b/test/in/s08n3p02.png differ
diff --git a/test/in/s09i3p02.png b/test/in/s09i3p02.png
new file mode 100644
index 0000000..0bfae8e
Binary files /dev/null and b/test/in/s09i3p02.png differ
diff --git a/test/in/s09n3p02.png b/test/in/s09n3p02.png
new file mode 100644
index 0000000..711ab82
Binary files /dev/null and b/test/in/s09n3p02.png differ
diff --git a/test/in/s32i3p04.png b/test/in/s32i3p04.png
new file mode 100644
index 0000000..0841910
Binary files /dev/null and b/test/in/s32i3p04.png differ
diff --git a/test/in/s32n3p04.png b/test/in/s32n3p04.png
new file mode 100644
index 0000000..fa58e3e
Binary files /dev/null and b/test/in/s32n3p04.png differ
diff --git a/test/in/s33i3p04.png b/test/in/s33i3p04.png
new file mode 100644
index 0000000..ab0dc14
Binary files /dev/null and b/test/in/s33i3p04.png differ
diff --git a/test/in/s33n3p04.png b/test/in/s33n3p04.png
new file mode 100644
index 0000000..764f1a3
Binary files /dev/null and b/test/in/s33n3p04.png differ
diff --git a/test/in/s34i3p04.png b/test/in/s34i3p04.png
new file mode 100644
index 0000000..bd99039
Binary files /dev/null and b/test/in/s34i3p04.png differ
diff --git a/test/in/s34n3p04.png b/test/in/s34n3p04.png
new file mode 100644
index 0000000..9cbc68b
Binary files /dev/null and b/test/in/s34n3p04.png differ
diff --git a/test/in/s35i3p04.png b/test/in/s35i3p04.png
new file mode 100644
index 0000000..e2a5e0a
Binary files /dev/null and b/test/in/s35i3p04.png differ
diff --git a/test/in/s35n3p04.png b/test/in/s35n3p04.png
new file mode 100644
index 0000000..90b892e
Binary files /dev/null and b/test/in/s35n3p04.png differ
diff --git a/test/in/s36i3p04.png b/test/in/s36i3p04.png
new file mode 100644
index 0000000..eb61b6f
Binary files /dev/null and b/test/in/s36i3p04.png differ
diff --git a/test/in/s36n3p04.png b/test/in/s36n3p04.png
new file mode 100644
index 0000000..b38d179
Binary files /dev/null and b/test/in/s36n3p04.png differ
diff --git a/test/in/s37i3p04.png b/test/in/s37i3p04.png
new file mode 100644
index 0000000..6e2b1e9
Binary files /dev/null and b/test/in/s37i3p04.png differ
diff --git a/test/in/s37n3p04.png b/test/in/s37n3p04.png
new file mode 100644
index 0000000..4d3054d
Binary files /dev/null and b/test/in/s37n3p04.png differ
diff --git a/test/in/s38i3p04.png b/test/in/s38i3p04.png
new file mode 100644
index 0000000..a0a8a14
Binary files /dev/null and b/test/in/s38i3p04.png differ
diff --git a/test/in/s38n3p04.png b/test/in/s38n3p04.png
new file mode 100644
index 0000000..1233ed0
Binary files /dev/null and b/test/in/s38n3p04.png differ
diff --git a/test/in/s39i3p04.png b/test/in/s39i3p04.png
new file mode 100644
index 0000000..04fee93
Binary files /dev/null and b/test/in/s39i3p04.png differ
diff --git a/test/in/s39n3p04.png b/test/in/s39n3p04.png
new file mode 100644
index 0000000..c750100
Binary files /dev/null and b/test/in/s39n3p04.png differ
diff --git a/test/in/s40i3p04.png b/test/in/s40i3p04.png
new file mode 100644
index 0000000..68f358b
Binary files /dev/null and b/test/in/s40i3p04.png differ
diff --git a/test/in/s40n3p04.png b/test/in/s40n3p04.png
new file mode 100644
index 0000000..864b6b9
Binary files /dev/null and b/test/in/s40n3p04.png differ
diff --git a/test/in/tbbn0g04.png b/test/in/tbbn0g04.png
new file mode 100644
index 0000000..39a7050
Binary files /dev/null and b/test/in/tbbn0g04.png differ
diff --git a/test/in/tbbn2c16.png b/test/in/tbbn2c16.png
new file mode 100644
index 0000000..dd3168e
Binary files /dev/null and b/test/in/tbbn2c16.png differ
diff --git a/test/in/tbbn3p08.png b/test/in/tbbn3p08.png
new file mode 100644
index 0000000..0ede357
Binary files /dev/null and b/test/in/tbbn3p08.png differ
diff --git a/test/in/tbgn2c16.png b/test/in/tbgn2c16.png
new file mode 100644
index 0000000..85cec39
Binary files /dev/null and b/test/in/tbgn2c16.png differ
diff --git a/test/in/tbgn3p08.png b/test/in/tbgn3p08.png
new file mode 100644
index 0000000..8cf2e6f
Binary files /dev/null and b/test/in/tbgn3p08.png differ
diff --git a/examples/test/img/tbrn2c08.png b/test/in/tbrn2c08.png
similarity index 100%
rename from examples/test/img/tbrn2c08.png
rename to test/in/tbrn2c08.png
diff --git a/test/in/tbwn0g16.png b/test/in/tbwn0g16.png
new file mode 100644
index 0000000..99bdeed
Binary files /dev/null and b/test/in/tbwn0g16.png differ
diff --git a/test/in/tbwn3p08.png b/test/in/tbwn3p08.png
new file mode 100644
index 0000000..eacab7a
Binary files /dev/null and b/test/in/tbwn3p08.png differ
diff --git a/test/in/tbyn3p08.png b/test/in/tbyn3p08.png
new file mode 100644
index 0000000..656db09
Binary files /dev/null and b/test/in/tbyn3p08.png differ
diff --git a/test/in/tm3n3p02.png b/test/in/tm3n3p02.png
new file mode 100644
index 0000000..fb3ef1d
Binary files /dev/null and b/test/in/tm3n3p02.png differ
diff --git a/examples/test/img/tp0n0g08.png b/test/in/tp0n0g08.png
similarity index 100%
rename from examples/test/img/tp0n0g08.png
rename to test/in/tp0n0g08.png
diff --git a/examples/test/img/tp0n2c08.png b/test/in/tp0n2c08.png
similarity index 100%
rename from examples/test/img/tp0n2c08.png
rename to test/in/tp0n2c08.png
diff --git a/examples/test/img/tp0n3p08.png b/test/in/tp0n3p08.png
similarity index 100%
rename from examples/test/img/tp0n3p08.png
rename to test/in/tp0n3p08.png
diff --git a/examples/test/img/tp1n3p08.png b/test/in/tp1n3p08.png
similarity index 100%
rename from examples/test/img/tp1n3p08.png
rename to test/in/tp1n3p08.png
diff --git a/test/in/xc1n0g08.png b/test/in/xc1n0g08.png
new file mode 100644
index 0000000..9404227
Binary files /dev/null and b/test/in/xc1n0g08.png differ
diff --git a/test/in/xc9n2c08.png b/test/in/xc9n2c08.png
new file mode 100644
index 0000000..b11c2a7
Binary files /dev/null and b/test/in/xc9n2c08.png differ
diff --git a/test/in/xcrn0g04.png b/test/in/xcrn0g04.png
new file mode 100644
index 0000000..48abba1
Binary files /dev/null and b/test/in/xcrn0g04.png differ
diff --git a/test/in/xcsn0g01.png b/test/in/xcsn0g01.png
new file mode 100644
index 0000000..9863a26
Binary files /dev/null and b/test/in/xcsn0g01.png differ
diff --git a/test/in/xd0n2c08.png b/test/in/xd0n2c08.png
new file mode 100644
index 0000000..2f00161
Binary files /dev/null and b/test/in/xd0n2c08.png differ
diff --git a/test/in/xd3n2c08.png b/test/in/xd3n2c08.png
new file mode 100644
index 0000000..9e4a3ff
Binary files /dev/null and b/test/in/xd3n2c08.png differ
diff --git a/test/in/xd9n2c08.png b/test/in/xd9n2c08.png
new file mode 100644
index 0000000..2c3b91a
Binary files /dev/null and b/test/in/xd9n2c08.png differ
diff --git a/test/in/xdtn0g01.png b/test/in/xdtn0g01.png
new file mode 100644
index 0000000..1a81abe
Binary files /dev/null and b/test/in/xdtn0g01.png differ
diff --git a/test/in/xhdn0g08.png b/test/in/xhdn0g08.png
new file mode 100644
index 0000000..fcb8737
Binary files /dev/null and b/test/in/xhdn0g08.png differ
diff --git a/test/in/xlfn0g04.png b/test/in/xlfn0g04.png
new file mode 100644
index 0000000..d9ec53e
Binary files /dev/null and b/test/in/xlfn0g04.png differ
diff --git a/test/in/xs1n0g01.png b/test/in/xs1n0g01.png
new file mode 100644
index 0000000..1817c51
Binary files /dev/null and b/test/in/xs1n0g01.png differ
diff --git a/test/in/xs2n0g01.png b/test/in/xs2n0g01.png
new file mode 100644
index 0000000..b8147f2
Binary files /dev/null and b/test/in/xs2n0g01.png differ
diff --git a/test/in/xs4n0g01.png b/test/in/xs4n0g01.png
new file mode 100644
index 0000000..45237a1
Binary files /dev/null and b/test/in/xs4n0g01.png differ
diff --git a/test/in/xs7n0g01.png b/test/in/xs7n0g01.png
new file mode 100644
index 0000000..3f307f1
Binary files /dev/null and b/test/in/xs7n0g01.png differ
diff --git a/test/in/z00n2c08.png b/test/in/z00n2c08.png
new file mode 100644
index 0000000..7669eb8
Binary files /dev/null and b/test/in/z00n2c08.png differ
diff --git a/test/in/z03n2c08.png b/test/in/z03n2c08.png
new file mode 100644
index 0000000..bfb10de
Binary files /dev/null and b/test/in/z03n2c08.png differ
diff --git a/test/in/z06n2c08.png b/test/in/z06n2c08.png
new file mode 100644
index 0000000..b90ebc1
Binary files /dev/null and b/test/in/z06n2c08.png differ
diff --git a/test/in/z09n2c08.png b/test/in/z09n2c08.png
new file mode 100644
index 0000000..5f191a7
Binary files /dev/null and b/test/in/z09n2c08.png differ
diff --git a/test/list.html b/test/list.html
new file mode 100644
index 0000000..384103b
--- /dev/null
+++ b/test/list.html
@@ -0,0 +1,186 @@
+
+
+
+ PNG Test
+
+
+
+
+Filtering
+
+
+
+
+
+
+
+
+
+
+
+Ancilary chunks
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Basic
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ZLib
+
+
+
+
+Transparency
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Sizing
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Pallettes
+
+
+
+
+
+
+Chunk Ordering
+
+
+
+
+
+
+
+
+Gamma
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/test/out/.gitignore b/test/out/.gitignore
similarity index 100%
rename from examples/test/out/.gitignore
rename to test/out/.gitignore
diff --git a/examples/test/test.js b/test/test.js
old mode 100755
new mode 100644
similarity index 54%
rename from examples/test/test.js
rename to test/test.js
index 1a9f6a1..6df5102
--- a/examples/test/test.js
+++ b/test/test.js
@@ -1,9 +1,9 @@
var fs = require('fs'),
- PNG = require('pngjs').PNG;
+ PNG = require('../lib/png').PNG;
-fs.readdir(__dirname + '/img/', function(err, files) {
+fs.readdir(__dirname + '/in/', function(err, files) {
if (err) throw err;
files.forEach(function(file) {
@@ -11,10 +11,29 @@ fs.readdir(__dirname + '/img/', function(err, files) {
if (!file.match(/\.png$/i))
return;
- fs.createReadStream(__dirname + '/img/' + file)
+ var expectedError = false;
+ if (file.match(/^x/) ||
+ file.match(/^...i/) || // interlace
+ file.match(/^......(01|02|04|16)/) || // 1/2/4/16 bit
+ file.match(/^basn3p(01|02|04)/) || // 2/4/16 colour palette
+ file.match(/^s/) // odd sizes
+ ) {
+ expectedError = true;
+ }
+
+ fs.createReadStream(__dirname + '/in/' + file)
.pipe(new PNG())
+ .on('error', function() {
+ if (!expectedError) {
+ console.log("Error reading " + file);
+ }
+ })
.on('parsed', function() {
+ if (expectedError) {
+ console.log("Error expected, parsed fine", file);
+ }
+
if (this.gamma) {
for (var y = 0; y < this.height; y++) {
for (var x = 0; x < this.width; x++) {