+static void TestTIFFImage(const wxString& option, int value)
+{
+ wxImage image("horse.png");
+
+ wxMemoryOutputStream memOut;
+ image.SetOption(option, value);
+
+ CPPUNIT_ASSERT(image.SaveFile(memOut, wxBITMAP_TYPE_TIF));
+
+ wxMemoryInputStream memIn(memOut);
+ CPPUNIT_ASSERT(memIn.IsOk());
+
+ wxImage savedImage(memIn);
+ CPPUNIT_ASSERT(savedImage.IsOk());
+
+ WX_ASSERT_EQUAL_MESSAGE(("While checking for option %s", option),
+ true, savedImage.HasOption(option));
+
+ WX_ASSERT_EQUAL_MESSAGE(("While testing for %s", option),
+ value, savedImage.GetOptionInt(option));
+}
+
+void ImageTestCase::SaveTIFF()
+{
+ TestTIFFImage(wxIMAGE_OPTION_TIFF_BITSPERSAMPLE, 1);
+}
+