From: Andrew Skiba Date: Tue, 9 Aug 2005 15:07:46 +0000 (-0000) Subject: refactor testcase, to make possible to check other properties X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=commitdiff_plain;h=cc5ebf00f58ba43c1fe2698a3bb30e6e00e25a38;p=mono.git refactor testcase, to make possible to check other properties svn path=/trunk/mcs/; revision=48170 --- diff --git a/mcs/class/System.Drawing/Test/System.Drawing.Imaging/ChangeLog b/mcs/class/System.Drawing/Test/System.Drawing.Imaging/ChangeLog index 08f99af7faf..6656ceaeead 100644 --- a/mcs/class/System.Drawing/Test/System.Drawing.Imaging/ChangeLog +++ b/mcs/class/System.Drawing/Test/System.Drawing.Imaging/ChangeLog @@ -1,3 +1,8 @@ +2005-08-09 Andrew Skiba + + * TestImageCodecInfo.cs: refactor to make possible to add tests for all + properties, not only FormatID. + 2004-03-22 Jordi Mas i Hernandez * TestColorMatrix.cs: added test case diff --git a/mcs/class/System.Drawing/Test/System.Drawing.Imaging/TestImageCodecInfo.cs b/mcs/class/System.Drawing/Test/System.Drawing.Imaging/TestImageCodecInfo.cs index 76021fcf44e..201f91a3ba8 100644 --- a/mcs/class/System.Drawing/Test/System.Drawing.Imaging/TestImageCodecInfo.cs +++ b/mcs/class/System.Drawing/Test/System.Drawing.Imaging/TestImageCodecInfo.cs @@ -34,7 +34,7 @@ using System; using System.Drawing; using System.Drawing.Imaging; using NUnit.Framework; -using System.IO; +using System.Collections; namespace MonoTests.System.Drawing { @@ -42,85 +42,91 @@ namespace MonoTests.System.Drawing [TestFixture] public class TestImageCodecInfo { - - [TearDown] - public void Clean() {} - - [SetUp] - public void GetReady() + Hashtable decoders; + Hashtable encoders; + + ImageCodecInfo GetDecoder (string clsid) { - + return GetDecoder (new Guid (clsid)); } - - internal void isPresent (ImageCodecInfo[] codecs, string clsid, string formatID) - { - for (int i = 0; i < codecs.Length; i++) { - if (codecs[i].FormatID.ToString() == formatID) { - Assert.AreEqual (codecs[i].Clsid.ToString(), clsid); - return; - } - } - Assert.IsTrue (false); - } - - /* - This test makes sure that we deliver at least the BMP, GIF, JPEG - and PNG encoders - */ - [Test] - public void Encoders() + ImageCodecInfo GetDecoder (Guid clsid) { - - ImageCodecInfo[] decoders = ImageCodecInfo.GetImageDecoders(); - ImageCodecInfo[] encoders = ImageCodecInfo.GetImageEncoders(); - - - /* BMP */ - isPresent (encoders, "557cf400-1a04-11d3-9a73-0000f81ef32e", - "b96b3cab-0728-11d3-9d7b-0000f81ef32e"); + return (ImageCodecInfo) decoders [clsid]; + } - /* GIF */ - isPresent (encoders, "557cf402-1a04-11d3-9a73-0000f81ef32e", - "b96b3cb0-0728-11d3-9d7b-0000f81ef32e"); + ImageCodecInfo GetEncoder (string clsid) + { + return GetEncoder (new Guid (clsid)); + } - /* JPEG */ - isPresent (encoders, "557cf401-1a04-11d3-9a73-0000f81ef32e", - "b96b3cae-0728-11d3-9d7b-0000f81ef32e"); + ImageCodecInfo GetEncoder (Guid clsid) + { + return (ImageCodecInfo) encoders [clsid]; + } - /* PNG */ - isPresent (encoders, "557cf406-1a04-11d3-9a73-0000f81ef32e", - "b96b3caf-0728-11d3-9d7b-0000f81ef32e"); + [TestFixtureSetUp] + public void FixtureGetReady() + { + decoders = new Hashtable (); + encoders = new Hashtable (); + foreach (ImageCodecInfo decoder in ImageCodecInfo.GetImageDecoders()) + decoders[decoder.Clsid] = decoder; + + foreach (ImageCodecInfo encoder in ImageCodecInfo.GetImageEncoders()) + encoders[encoder.Clsid] = encoder; } - - /* - This test makes sure that we deliver at least the BMP, GIF, JPEG - and PNG decoders - */ + [Test] - public void Decoders() - { - ImageCodecInfo[] decoders = ImageCodecInfo.GetImageDecoders(); - - /* BMP */ - isPresent (decoders, "557cf400-1a04-11d3-9a73-0000f81ef32e", - "b96b3cab-0728-11d3-9d7b-0000f81ef32e"); - - /* GIF */ - isPresent (decoders, "557cf402-1a04-11d3-9a73-0000f81ef32e", - "b96b3cb0-0728-11d3-9d7b-0000f81ef32e"); + public void BMPDecoder() + { + Assert.AreEqual (ImageFormat.Bmp.Guid, + GetDecoder ("557cf400-1a04-11d3-9a73-0000f81ef32e").FormatID, "BMP"); + } - /* JPEG */ - isPresent (decoders, "557cf401-1a04-11d3-9a73-0000f81ef32e", - "b96b3cae-0728-11d3-9d7b-0000f81ef32e"); + [Test] + public void GifDecoder() + { + Assert.AreEqual (ImageFormat.Gif.Guid, + GetDecoder ("557cf402-1a04-11d3-9a73-0000f81ef32e").FormatID, "GIF"); + } + + [Test] + public void JpegDecoder() + { + Assert.AreEqual (ImageFormat.Jpeg.Guid, + GetDecoder ("557cf401-1a04-11d3-9a73-0000f81ef32e").FormatID, "JPEG"); + } - /* PNG */ - isPresent (decoders, "557cf406-1a04-11d3-9a73-0000f81ef32e", - "b96b3caf-0728-11d3-9d7b-0000f81ef32e"); + [Test] + public void PngDecoder() + { + Assert.AreEqual (ImageFormat.Png.Guid, + GetDecoder ("557cf406-1a04-11d3-9a73-0000f81ef32e").FormatID, "PNG"); + } + [Test] + public void BMPEncoder() { + Assert.AreEqual (ImageFormat.Bmp.Guid, + GetEncoder ("557cf400-1a04-11d3-9a73-0000f81ef32e").FormatID, "BMP"); } - + [Test] + public void GifEncoder() { + Assert.AreEqual (ImageFormat.Gif.Guid, + GetEncoder ("557cf402-1a04-11d3-9a73-0000f81ef32e").FormatID, "GIF"); + } + [Test] + public void JpegEncoder() { + Assert.AreEqual (ImageFormat.Jpeg.Guid, + GetEncoder ("557cf401-1a04-11d3-9a73-0000f81ef32e").FormatID, "JPEG"); + } + + [Test] + public void PngEncoder() { + Assert.AreEqual (ImageFormat.Png.Guid, + GetEncoder ("557cf406-1a04-11d3-9a73-0000f81ef32e").FormatID, "PNG"); + } } }