tree: 61c8d81743751a5acdc4a5e4b49ac0473786c226 [path history] [tgz]
  1. analysis/
  2. artificial-deflate/
  3. artificial-gif/
  4. artificial-png/
  5. non-ascii/
  6. 0.bytes
  7. 256.bytes
  8. 256.bytes.bz2
  9. 256.bytes.gz
  10. abraca.txt
  11. abraca.txt.bz2
  12. animated-red-blue.000000.nie
  13. animated-red-blue.000001.nie
  14. animated-red-blue.000002.nie
  15. animated-red-blue.000003.nie
  16. animated-red-blue.apng
  17. animated-red-blue.gif
  18. animated-red-blue.nia
  19. archive.7z
  20. archive.cab
  21. archive.iso
  22. archive.password-is-asdf.zip
  23. archive.rar
  24. archive.tar
  25. archive.tar.bz2
  26. archive.tar.gz
  27. archive.zip
  28. australian-abc-local-stations.json
  29. australian-abc-local-stations.tokens
  30. bricks-color.bmp
  31. bricks-color.jpeg
  32. bricks-color.lossless.webp
  33. bricks-color.lossy.webp
  34. bricks-color.png
  35. bricks-color.qoi
  36. bricks-color.tga
  37. bricks-color.tiff
  38. bricks-dither.bmp
  39. bricks-dither.gif
  40. bricks-dither.indexes
  41. bricks-dither.indexes.giflzw
  42. bricks-dither.lossless.webp
  43. bricks-dither.no-ancillary.png
  44. bricks-dither.palette
  45. bricks-dither.png
  46. bricks-gray.bmp
  47. bricks-gray.gif
  48. bricks-gray.indexes
  49. bricks-gray.indexes.giflzw
  50. bricks-gray.jpeg
  51. bricks-gray.lossless.webp
  52. bricks-gray.lossy.webp
  53. bricks-gray.no-ancillary.png
  54. bricks-gray.png
  55. bricks-gray.tga
  56. bricks-gray.tiff
  57. bricks-nodither.bmp
  58. bricks-nodither.gif
  59. bricks-nodither.indexes
  60. bricks-nodither.indexes.giflzw
  61. bricks-nodither.lossless.webp
  62. bricks-nodither.palette
  63. bricks-nodither.png
  64. bricks-nodither.tga
  65. bricks-nodither.wbmp
  66. cbor-rfc-7049-examples.cbor
  67. cbor-rfc-7049-examples.sans-comments.json
  68. cbor-rfc-7049-examples.tokens
  69. cbor-rfc-7049-examples.with-comments.json
  70. checkerboard.gamma1dot0.png
  71. checkerboard.gamma2dot2.png
  72. crude-flag.nia
  73. crude-flag.nie
  74. crude-flag.nii
  75. DCI-P3-D65.icc
  76. DCI-P3-D65.icc.zlib
  77. file-sizes.json
  78. gifplayer-muybridge.gif
  79. github-tags.json
  80. harvesters.bmp
  81. harvesters.gif
  82. harvesters.jpeg
  83. harvesters.lossless.webp
  84. harvesters.lossy.webp
  85. harvesters.png
  86. harvesters.tiff
  87. hat.bmp
  88. hat.gif
  89. hat.jpeg
  90. hat.lossless.webp
  91. hat.lossy.webp
  92. hat.png
  93. hat.tiff
  94. hat.wbmp
  95. hello.sh
  96. hibiscus.primitive.bmp
  97. hibiscus.primitive.gif
  98. hibiscus.primitive.jpeg
  99. hibiscus.primitive.lossless.webp
  100. hibiscus.primitive.lossy.webp
  101. hibiscus.primitive.png
  102. hibiscus.primitive.svg
  103. hibiscus.primitive.tiff
  104. hibiscus.regular.bmp
  105. hibiscus.regular.gif
  106. hibiscus.regular.jpeg
  107. hibiscus.regular.lossless.webp
  108. hibiscus.regular.lossy.webp
  109. hibiscus.regular.png
  110. hibiscus.regular.tiff
  111. hippopotamus.bmp
  112. hippopotamus.interlaced.gif
  113. hippopotamus.interlaced.png
  114. hippopotamus.interlaced.truncated.gif
  115. hippopotamus.interlaced.truncated.png
  116. hippopotamus.jpeg
  117. hippopotamus.lossless.webp
  118. hippopotamus.lossy.webp
  119. hippopotamus.masked-with-muybridge.gif
  120. hippopotamus.masked-with-muybridge.png
  121. hippopotamus.nie
  122. hippopotamus.regular.gif
  123. hippopotamus.regular.ico
  124. hippopotamus.regular.png
  125. hippopotamus.regular.truncated.png
  126. hippopotamus.tiff
  127. json-quirks.json
  128. json-quirks.tokens
  129. json-things.cbor
  130. json-things.formatted.json
  131. json-things.unformatted.json
  132. json-things.unformatted.tokens
  133. midsummer.txt
  134. midsummer.txt.bz2
  135. midsummer.txt.gz
  136. midsummer.txt.zlib
  137. muybridge-frame-000.indexes
  138. muybridge-frame-000.wbmp
  139. muybridge-frame-001.indexes
  140. muybridge-frame-002.indexes
  141. muybridge-frame-003.indexes
  142. muybridge-frame-004.indexes
  143. muybridge-frame-005.indexes
  144. muybridge-frame-006.indexes
  145. muybridge-frame-007.indexes
  146. muybridge-frame-008.indexes
  147. muybridge-frame-009.indexes
  148. muybridge-frame-010.indexes
  149. muybridge-frame-011.indexes
  150. muybridge-frame-012.indexes
  151. muybridge-frame-013.indexes
  152. muybridge-frame-014.indexes
  153. muybridge.apng
  154. muybridge.gif
  155. nobel-prizes.json
  156. pi.txt
  157. pi.txt.bz2
  158. pi.txt.giflzw
  159. pi.txt.gz
  160. pi.txt.zlib
  161. pjw-thumbnail.bmp
  162. pjw-thumbnail.gif
  163. pjw-thumbnail.jpeg
  164. pjw-thumbnail.lossless.webp
  165. pjw-thumbnail.lossy.webp
  166. pjw-thumbnail.png
  167. pjw-thumbnail.tiff
  168. README.md
  169. red-blue-gradient.dcip3d65-no-chrm-no-gama.png
  170. red-blue-gradient.gamma1dot0.png
  171. red-blue-gradient.gamma1dot8.png
  172. red-blue-gradient.gamma2dot2.png
  173. red-blue-gradient.vanilla.png
  174. rfc-6901-json-pointer.json
  175. rgb24png.bmp
  176. romeo.txt
  177. romeo.txt.bz2
  178. romeo.txt.deflate
  179. romeo.txt.fixed-huff.deflate
  180. romeo.txt.gz
  181. romeo.txt.zlib
  182. romeo.txt.zst
  183. sheep-more.rac
test/data/README.md

Unless otherwise noted, the *.gzfiles were generated by the gzip command line tool and the *.deflate and *.zlib versions were then generated by script/extract-deflate-offsets.go. Similarly, the *.giflzw files were generated by script/extract-giflzw.go and the *.palette and *.indexes files were generated by script/extract-palette-indexes.go. The *.tokens files were generated by script/print-json-token-debug-format.c.

The *.jpeg files are usually the canonical versions of the test/data images, and other versions (*.bmp, *.gif, *.png etc) were usually generated by ImageMagick's convert command line tool. The *.wbmp versions were generated by the script/convert-png-to-wbmp.go command line tool. The *.webp versions were generated by the cwebp command line tool. The *.no-ancillary.png files were generated by the script/strip-png-ancillary-chunks.go command line tool. The *.qoi files were generated by the qoiconv command line tool.

The *.apng files were generated by gif2apng. Those with finite animation loop counts were manually patched to correct for a gif2apng bug. https://bugs.chromium.org/p/chromium/issues/detail?id=592735 argues that GIF and APNG/WEBP have different semantics but gif2apng does not cater for that.


The artificial-* directories hold artificially generated test data, often to explicitly test corner cases of various file formats. The files there usually come in families whose names have a common prefix, such as three files foo.bar, foo.bar.qux, foo.bar.commentary.txt all prefixed by foo.bar. The file whose name is that prefix is usually the canonical (typically hand-crafted) file, and the other files are then derived from that. Outside of the artificial-* directories, the other files in this directory are typically real world examples of various file formats, or deriviations of them.


The non-ascii directory holds trivial UTF-8 (but not ASCII) text files.


DCI-P3-D65.icc comes from color.org. DCI-P3-D65.icc.zlib is a zlib-compresion of that, created by Go's standard library.

archive.* archives a subset of other files in this directory.

animated-red-blue.gif is an original animation by Nigel Tao nigeltao@golang.org. animated-red-blue.nia and animated-red-blue.*.nie were then generated by example/convert-to-nia and script/extract-nia-frames.go.

australian-abc-local-stations.json was crawled from data.gov.au.

bricks-* are various encodings of an original photo by Nigel Tao nigeltao@golang.org.

cbor-rfc-7049-examples.cbor is the concatenated examples from RFC 7049. The cbor-rfc-7049-examples.*.json files were then generated by example/cbor-to-json.

checkerboard.*.png was generated by script/make-red-blue-gradient.go.

crude-flag.* is an original animation by Nigel Tao nigeltao@golang.org. See the lib/nie documentation.

file-sizes.json was created by running script/print-file-sizes-json.go in this repository's root directory.

gifplayer-muybridge.gif is an original animation by Nigel Tao nigeltao@golang.org.

harvesters.* are various encodings of a photo of “The Harvesters” by Pieter Bruegel the Elder, held by the Metropolitan Museum of Art. www.metmuseum.org lists that image as in the public domain.

github-tags.json was crawled from api.github.com.

hat.* are various encodings of a photo of “Self-Portrait with a Straw Hat (obverse: The Potato Peeler)” by Vincent van Gogh, held by the Metropolitan Museum of art. www.metmuseum.org lists that image as in the public domain.

hello.sh is a trivial shell script.

hibiscus.regular.* are various encodings of a photo of “Hibiscus and Parrots” by Louis Comfort Tiffany, held by the Metropolitan Museum of Art. www.metmuseum.org lists that image as in the public domain.

hibiscus.primitive.* is the result of running the hibiscus.regular.png image through github.com/fogleman/primitive and other programs:

  • primitive -i hibiscus.regular.png -o hibiscus.primitive.svg -s 442 -n 32
  • inkscape -z -e hibiscus.primitive.png hibiscus.primitive.svg
  • Various invocations of convert and cwebp

hippopotamus.* are various encodings of a cropping of a photo of “Hippopotamus (William)”, held by the Metropolitan Museum of Art. www.metmuseum.org lists that image as in the public domain.

www.metmuseum.org says that “You are welcome to use images of artworks in The Met collection that the Museum believes to be in the public domain, or those to which the Museum waives any copyright it might have, for any purpose, including commercial and noncommercial use, free of charge and without requiring permission from the Museum.”

json-things.* are original JSON objects by Nigel Tao nigeltao@golang.org.

midsummer.txt is an excerpt of Shakespeare‘s "A Midsummer Night’s Dream", copied from shakespeare.mit.edu.

muybridge.gif is derived from en.wikipedia.org which is in the public domain.

nobel-prizes.json was crawled from api.nobelprize.org.

pi.txt contains the digits of pi.

pjw-thumbnail.* are various encodings of an image derived from an iconic, original photo of Peter J. Weinberger by Rob Pike r@golang.org.

red-blue-gradient.*.png was generated by script/make-red-blue-gradient.go.

rfc-6901-json-pointer.json is the example JSON document given in the RFC 6901 “JavaScript Object Notation (JSON) Pointer” specification.

rgb24png.bmp comes from BMP Suite, which states that its generated images “are in the public domain”.

romeo.txt is an excerpt of Shakespeare's “Romeo and Juliet”, copied from shakespeare.mit.edu.

romeo.txt.fixed-huff.deflate was derived from romeo.txt by a custom program to use fixed (not dynamic) Huffman tables for the deflate encoding.

sheep-more.rac is a RAC-compression of original text by Nigel Tao nigeltao@golang.org.