00001 #include "BMPTests.h"
00002
00003
00004 void
00005 BMPTests::testLoader() {
00006 static const string base = "images/bmpsuite/";
00007 static const string reference_base = "images/bmpsuite/reference/";
00008
00009 static Comparison images[] = {
00010 { "g01bg.bmp", "01bg.png" },
00011 { "g01bw.bmp", "01bw.png" },
00012 { "g01p1.bmp", "01p1.png" },
00013 { "g01wb.bmp", "01bw.png" },
00014 { "g04.bmp", "04.png" },
00015 { "g04p4.bmp", "04p4.png" },
00016 { "g04rle.bmp", "04.png" },
00017 { "g08.bmp", "08.png" },
00018 { "g08offs.bmp", "08.png" },
00019 { "g08os2.bmp", "08.png" },
00020 { "g08p256.bmp", "08.png" },
00021 { "g08p64.bmp", "08p64.png" },
00022 { "g08pi256.bmp", "08.png" },
00023 { "g08pi64.bmp", "08.png" },
00024 { "g08res11.bmp", "08.png" },
00025 { "g08res21.bmp", "08.png" },
00026 { "g08res22.bmp", "08.png" },
00027 { "g08rle.bmp", "08.png" },
00028 { "g08s0.bmp", "08.png" },
00029 { "g08w124.bmp", "08w124.png" },
00030 { "g08w125.bmp", "08w125.png" },
00031 { "g08w126.bmp", "08w126.png" },
00032 { "g16bf555.bmp", "16bf555.png" },
00033 { "g16bf565.bmp", "16bf565.png" },
00034 { "g16def555.bmp", "16bf555.png" },
00035 { "g24.bmp", "24.png" },
00036 { "g32bf.bmp", "24.png" },
00037 { "g32def.bmp", "24.png" },
00038 };
00039 static const int image_count = sizeof(images) / sizeof(*images);
00040
00041 for (int i = 0; i < image_count; ++i) {
00042 AssertImagesEqual(base + images[i].image,
00043 reference_base + images[i].reference);
00044 }
00045 }
00046
00047
00048 Test*
00049 BMPTests::suite() {
00050 typedef TestCaller<BMPTests> Caller;
00051
00052 TestSuite* suite = new TestSuite();
00053 suite->addTest(new Caller("Test BMP Loader", &BMPTests::testLoader));
00054 return suite;
00055 }