12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- #include "tests/PNGReaderTests.h"
- #include "images/PNGReader.h"
- #include "tests/Test.h"
- #include "utils/List.h"
- #include "utils/StringBuffer.h"
- static void testReadRGB8(Test& test, const char* path) {
- PNGReader png;
- if(png.load(StringBuffer<200>(path).append("rgb8.png")).has()) {
- test.checkEqual(false, true, "read rgb8 error");
- return;
- }
- test.checkEqual(32, png.getWidth(), "rgb8 width");
- test.checkEqual(64, png.getHeight(), "rgb8 height");
- test.checkEqual(3, png.getChannels(), "rgb8 channels");
- test.checkEqual(true, png.getData() != nullptr, "rgb8 data");
- }
- static void testReadRGB16(Test& test, const char* path) {
- PNGReader png;
- test.checkEqual(
- true, png.load((StringBuffer<200>(path).append("rgb16.png"))).has(),
- "read rgb16 error");
- }
- static void testReadRGBA8(Test& test, const char* path) {
- PNGReader png;
- if(png.load(StringBuffer<200>(path).append("rgba8.png")).has()) {
- test.checkEqual(false, true, "read rgba8 error");
- return;
- }
- test.checkEqual(32, png.getWidth(), "rgba8 width");
- test.checkEqual(64, png.getHeight(), "rgba8 height");
- test.checkEqual(4, png.getChannels(), "rgba8 channels");
- test.checkEqual(true, png.getData() != nullptr, "rgba8 data");
- }
- static void testReadRGBA16(Test& test, const char* path) {
- PNGReader png;
- test.checkEqual(
- true, png.load(StringBuffer<200>(path).append("rgba16.png")).has(),
- "read rgba16 error");
- }
- static void testReadGray8(Test& test, const char* path) {
- PNGReader png;
- if(png.load(StringBuffer<200>(path).append("gray8.png")).has()) {
- test.checkEqual(false, true, "read gray8 error");
- return;
- }
- test.checkEqual(32, png.getWidth(), "gray8 width");
- test.checkEqual(64, png.getHeight(), "gray8 height");
- test.checkEqual(1, png.getChannels(), "gray8 channels");
- test.checkEqual(true, png.getData() != nullptr, "gray8 data");
- }
- static void testReadGray16(Test& test, const char* path) {
- PNGReader png;
- test.checkEqual(
- true, png.load(StringBuffer<200>(path).append("gray16.png")).has(),
- "read gray16 error");
- }
- static void testReadGrayA8(Test& test, const char* path) {
- PNGReader png;
- if(png.load(StringBuffer<200>(path).append("graya8.png")).has()) {
- test.checkEqual(false, true, "read graya8 error");
- return;
- }
- test.checkEqual(32, png.getWidth(), "graya8 width");
- test.checkEqual(64, png.getHeight(), "graya8 height");
- test.checkEqual(2, png.getChannels(), "graya8 channels");
- test.checkEqual(true, png.getData() != nullptr, "graya8 data");
- }
- static void testReadGrayA16(Test& test, const char* path) {
- PNGReader png;
- test.checkEqual(
- true, png.load(StringBuffer<200>(path).append("graya16.png")).has(),
- "read graya16 error");
- }
- void PNGReaderTests::test(const char* path) {
- Test test("PNGReader");
- testReadRGB8(test, path);
- testReadRGB16(test, path);
- testReadRGBA8(test, path);
- testReadRGBA16(test, path);
- testReadGray8(test, path);
- testReadGray16(test, path);
- testReadGrayA8(test, path);
- testReadGrayA16(test, path);
- test.finalize();
- }
|