[corlib] Improve CancellationTokenSource test
[mono.git] / mcs / class / System.Drawing / Test / DrawingTest / Test / Graphics.cs
index 10c4a206e7c0a3c5f134bdcb2b9ba4ca4288d3bd..9848565605712e7fde336a7da9279d79c3dca56e 100644 (file)
@@ -38,6 +38,9 @@ using System.Drawing.Text;
 using System.Drawing.Imaging;\r
 using DrawingTestHelper;\r
 using System.IO;\r
+#if !MONOTOUCH\r
+using  NUnit.Framework.SyntaxHelpers;\r
+#endif\r
 \r
 namespace Test.Sys.Drawing.GraphicsFixtures {\r
        #region GraphicsFixtureProps\r
@@ -53,20 +56,24 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t = DrawingTest.Create(512, 512);\r
                }\r
 \r
+               [TearDown]\r
+               public void TearDown ()\r
+               {\r
+                       if (t != null)\r
+                               t.Dispose ();\r
+               }\r
+\r
                [Test]\r
-#if TARGET_JVM\r
-               [Category ("NotWorking")] // FIXME: Newly created region area is not the same.\r
-#endif\r
                public void ClipTest_1() {\r
                        Region r = new Region();\r
-                       Assert.IsTrue(r.Equals(t.Graphics.Clip, t.Graphics));\r
+                       Assert.That(r.Equals(t.Graphics.Clip, t.Graphics), Is.True);\r
                }\r
 \r
                [Test]\r
                public void ClipTest_2() {\r
                        Region r = new Region(new Rectangle(10, 10, 60, 60));\r
                        t.Graphics.Clip = r;\r
-                       Assert.IsTrue(r.Equals(t.Graphics.Clip, t.Graphics));\r
+                       Assert.That(r.Equals(t.Graphics.Clip, t.Graphics), Is.True);\r
 \r
                        Pen redPen   = new Pen(Color.Red, 3);\r
                        Pen greenPen = new Pen(Color.Green, 3);\r
@@ -90,7 +97,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw lines between original points to screen.\r
                        t.Graphics.DrawLines(redPen, curvePoints);\r
                        t.Show ();\r
-                       Assert.IsTrue(t.PDCompare(TOLERANCE));\r
+                       Assert.That(t.PDCompare(TOLERANCE), Is.True);\r
                }\r
 \r
                [Test]\r
@@ -138,23 +145,20 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                }\r
 \r
                [Test]\r
-#if TARGET_JVM\r
-               [Category ("NotWorking")] // FIXME: Newly created region area is not the same.\r
-#endif\r
                public void ClipBoundsTest() {\r
                        Region r = new Region();\r
-                       Assert.IsTrue(t.Graphics.ClipBounds.Equals(r.GetBounds(t.Graphics)));\r
+                       Assert.That(t.Graphics.ClipBounds.Equals(r.GetBounds(t.Graphics)), Is.True);\r
 \r
                        RectangleF rf = new RectangleF(10, 10, 60, 60);\r
                        r = new Region(rf);\r
                        t.Graphics.Clip = r;\r
-                       Assert.IsTrue(rf.Equals(t.Graphics.ClipBounds));\r
+                       Assert.That(rf.Equals(t.Graphics.ClipBounds), Is.True);\r
                }\r
 \r
                [Test]\r
                public void CompositingModeTest() {\r
                        //TODO: seems to draw equal images\r
-                       Assert.AreEqual(CompositingMode.SourceOver, t.Graphics.CompositingMode);\r
+                       Assert.That (CompositingMode.SourceOver, Is.EqualTo (t.Graphics.CompositingMode));\r
 \r
                        Bitmap b = new Bitmap(100, 100);\r
                        Graphics g = Graphics.FromImage(b);\r
@@ -173,7 +177,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t.Graphics.DrawImage(b, 300, 300);\r
 \r
                        t.Show ();\r
-                       Assert.IsTrue(t.PDCompare(TOLERANCE));\r
+                       Assert.That(t.PDCompare(TOLERANCE), Is.True);\r
                }\r
 \r
                [Test] //TBD\r
@@ -182,96 +186,91 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
 \r
                [Test]\r
                public void DpiXTest() {\r
-                       Assert.IsTrue(t.Graphics.DpiX == 96f);\r
+                       Assert.That(t.Graphics.DpiX == 96f, Is.True);\r
                }\r
 \r
                [Test]\r
                public void DpiYTest() {\r
-                       Assert.IsTrue(t.Graphics.DpiY == 96f);\r
+                       Assert.That(t.Graphics.DpiY == 96f, Is.True);\r
                }\r
 \r
                [Test] //TBD\r
                public void InterpolationModeTest() {\r
-                       Assert.AreEqual(InterpolationMode.Bilinear, t.Graphics.InterpolationMode);\r
+                       Assert.That (InterpolationMode.Bilinear, Is.EqualTo (t.Graphics.InterpolationMode));\r
                }\r
 \r
                [Test]\r
                public void IsClipEmtpyTest() {\r
-                       Assert.IsFalse(t.Graphics.IsClipEmpty);\r
+                       Assert.That (t.Graphics.IsClipEmpty, Is.False);\r
 \r
                        try {\r
                                t.Graphics.Clip = null;\r
                                Assert.Fail("The ArgumentNullException was not thrown");\r
                        }\r
                        catch(Exception e) {\r
-                               Assert.AreEqual(e.GetType(), typeof(ArgumentNullException));\r
+                               Assert.That (e.GetType(), Is.EqualTo (typeof(ArgumentNullException)));\r
                        }\r
 \r
                        Region r = new Region(new Rectangle(10, 10, 0, 0));\r
                        t.Graphics.Clip = r;\r
 \r
-                       Assert.IsTrue( t.Graphics.IsClipEmpty);\r
+                       Assert.That( t.Graphics.IsClipEmpty, Is.True);\r
                }\r
 \r
                [Test]\r
                public void IsVisibleClipEmtpyTest() {\r
-                       Assert.IsFalse(t.Graphics.IsVisibleClipEmpty, "default t.Graphics.IsVisibleClipEmpty");\r
+                       Assert.That (t.Graphics.IsVisibleClipEmpty, Is.False, "default t.Graphics.IsVisibleClipEmpty");\r
 \r
                        Region r = new Region(new Rectangle(512, 512, 100, 100));\r
                        t.Graphics.Clip = r;\r
-                       Assert.IsFalse(t.Graphics.IsClipEmpty);\r
-                       Assert.IsTrue(t.Graphics.IsVisibleClipEmpty);\r
+                       Assert.That (t.Graphics.IsClipEmpty, Is.False);\r
+                       Assert.That(t.Graphics.IsVisibleClipEmpty, Is.True);\r
                }\r
 \r
                [Test]\r
                public void PageScaleTest() {\r
-                       Assert.AreEqual(1f, t.Graphics.PageScale);\r
+                       Assert.That (1f, Is.EqualTo (t.Graphics.PageScale));\r
                }\r
 \r
                [Test]\r
                public void PageUnitTest() {\r
-                       Assert.AreEqual(GraphicsUnit.Display, t.Graphics.PageUnit);\r
+                       Assert.That (GraphicsUnit.Display, Is.EqualTo (t.Graphics.PageUnit));\r
                }\r
 \r
                [Test]\r
                public void PixelOffsetModeTest() {\r
-                       Assert.AreEqual(PixelOffsetMode.Default, t.Graphics.PixelOffsetMode);\r
+                       Assert.That (PixelOffsetMode.Default, Is.EqualTo (t.Graphics.PixelOffsetMode));\r
                }\r
 \r
                [Test]\r
-#if TARGET_JVM\r
-               [Category ("NotWorking")] // FIXME: RenderingOrigin is not implemented\r
-#endif\r
+               [Category("NotWorking")]\r
                public void RenderingOriginTest() {\r
-                       Assert.AreEqual(new Point(0,0), t.Graphics.RenderingOrigin);\r
+                       Assert.That (new Point(0,0), Is.EqualTo (t.Graphics.RenderingOrigin));\r
                }\r
 \r
                [Test]\r
                public void SmoothingModeTest() {\r
-                       Assert.AreEqual(SmoothingMode.None, t.Graphics.SmoothingMode);\r
+                       Assert.That (SmoothingMode.None, Is.EqualTo (t.Graphics.SmoothingMode));\r
                }\r
 \r
                [Test]\r
                public void TextContrastTest() {\r
-                       Assert.AreEqual(4, t.Graphics.TextContrast);\r
+                       Assert.That (4, Is.EqualTo (t.Graphics.TextContrast));\r
                }\r
 \r
                [Test]\r
                public void TextRenderingHintTest() {\r
-                       Assert.AreEqual(TextRenderingHint.SystemDefault, t.Graphics.TextRenderingHint);\r
+                       Assert.That (TextRenderingHint.SystemDefault, Is.EqualTo (t.Graphics.TextRenderingHint));\r
                }\r
 \r
                [Test]\r
                public void TransformTest() {\r
-                       Assert.AreEqual(new Matrix(), t.Graphics.Transform);\r
+                       Assert.That (new Matrix(), Is.EqualTo (t.Graphics.Transform));\r
                }\r
 \r
                [Test]\r
-#if TARGET_JVM\r
-               [Category ("NotWorking")] // FIXME: Graphics.ClipBounds retun null if no clip region was set.\r
-#endif\r
                public void VisibleClipBoundsTest() {\r
-                       Assert.AreEqual(new RectangleF(0, 0, 512, 512), t.Graphics.VisibleClipBounds);\r
+                       Assert.That (new RectangleF(0, 0, 512, 512), Is.EqualTo (t.Graphics.VisibleClipBounds));\r
                }\r
        }\r
 \r
@@ -297,8 +296,8 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        SetUp("DrawImage");\r
                        DrawingTest.ShowForms = false;\r
                        try {\r
-                               bmp = Bitmap.FromFile(@"..\..\bitmap50.png");\r
-                               bmp2 = Bitmap.FromFile(@"..\..\bitmap25.png");\r
+                               bmp = Bitmap.FromFile("bitmap50.png");\r
+                               bmp2 = Bitmap.FromFile("bitmap25.png");\r
                        }\r
                        catch(Exception e) {\r
                                Console.WriteLine(e.Message);\r
@@ -312,6 +311,8 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                }\r
                [TearDown]\r
                public void TearDown() {\r
+                       if (t != null)\r
+                               t.Dispose ();\r
                }\r
 \r
                [Test]\r
@@ -319,35 +320,35 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t.Graphics.DrawImage(bmp, new Point[]{new Point(170,10), new Point(250,0), new Point(100,100)}, src, GraphicsUnit.Pixel );\r
                        t.Graphics.DrawImage(bmp, new PointF[]{new PointF(70,10), new PointF(150,0), new PointF(10,100)}, srcF, GraphicsUnit.Pixel );\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImage2() {\r
                        t.Graphics.DrawImage(bmp, dst, src, GraphicsUnit.Pixel);\r
                        t.Graphics.DrawImage(bmp, dstF, srcF, GraphicsUnit.Pixel);\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImage3() {\r
                        t.Graphics.DrawImage(bmp, 10.0F, 10.0F, srcF, GraphicsUnit.Pixel);\r
                        t.Graphics.DrawImage(bmp, 70.0F, 150.0F, 250.0F, 150.0F);\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImage4() {\r
                        t.Graphics.DrawImage(bmp, dst);\r
                        t.Graphics.DrawImage(bmp, dstF);\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImage5() {\r
                        t.Graphics.SetClip( new Rectangle(70, 0, 20, 200));\r
                        t.Graphics.DrawImage(bmp, new Point[]{new Point(50,50), new Point(250,30), new Point(100,150)}, src, GraphicsUnit.Pixel );\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImage6() {\r
@@ -355,28 +356,28 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t.Graphics.SetClip( new Rectangle(70, 0, 20, 200));\r
                        t.Graphics.DrawImage(bmp, new Point[]{new Point(50,50), new Point(250,30), new Point(100,150)}, src, GraphicsUnit.Pixel );\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImage7() {\r
                        t.Graphics.DrawImage(bmp, 170, 70, src, GraphicsUnit.Pixel);\r
                        t.Graphics.DrawImage(bmp, 70, 350, 350, 150);\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImage8() {\r
                        t.Graphics.DrawImage(bmp, new Point[]{new Point(170,10), new Point(250,10), new Point(100,100)} );\r
                        t.Graphics.DrawImage(bmp, new PointF[]{new PointF(170,100), new PointF(250,100), new PointF(100,190)} );\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImage9() {\r
                        t.Graphics.DrawImage(bmp, 0, 0);\r
                        t.Graphics.DrawImage(bmp, 200, 200);\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImagePageUnit() {\r
@@ -389,7 +390,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
 \r
                        t.Graphics.DrawImage(bmp2, p, new Rectangle(100, 100, 100, 100), GraphicsUnit.Pixel);\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImagePageUnit_2() {\r
@@ -403,7 +404,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
 \r
                        t.Graphics.DrawImage(bmp2, p, new Rectangle(100, 100, 100, 100), GraphicsUnit.Pixel);\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImagePageUnit_3() {\r
@@ -411,7 +412,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t.Graphics.ScaleTransform(0.3f, 0.3f);\r
                        t.Graphics.DrawImage(bmp2, new Rectangle(100, 100, 100, 100));\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImagePageUnit_4() {\r
@@ -419,7 +420,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t.Graphics.ScaleTransform(0.5f, 0.5f);\r
                        t.Graphics.DrawImage(bmp, 50, 50);\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImagePageUnitClip() {\r
@@ -434,27 +435,27 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t.Graphics.SetClip( new Rectangle(120, 120, 50, 100) );\r
                        t.Graphics.DrawImage(bmp2, p, new Rectangle(100, 100, 100, 100), GraphicsUnit.Pixel);\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImageWithResolution() {\r
                        t.Graphics.DrawImage(bmp2, 0, 0);\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImageInContainer1() {\r
                        t.Graphics.BeginContainer(new Rectangle(10, 10, 50, 50), new Rectangle(70, 70, 100, 100), GraphicsUnit.Pixel);\r
                        t.Graphics.DrawImage(bmp, 0, 0);\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImageInContainer2() {\r
                        t.Graphics.BeginContainer(new Rectangle(10, 10, 50, 50), new Rectangle(70, 70, 100, 100), GraphicsUnit.Pixel);\r
                        t.Graphics.DrawImage(bmp2, 0, 0);\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImageInContainer3() {\r
@@ -463,7 +464,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t.Graphics.ScaleTransform(0.5f, 0.5f);\r
                        t.Graphics.DrawImage(bmp2, 0, 0);\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
                [Test]\r
                public void DrawImageInContainer4() {\r
@@ -478,7 +479,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t.Graphics.DrawImage(bmp2, p, new Rectangle(100, 100, 100, 100), GraphicsUnit.Pixel);\r
                        t.Graphics.EndContainer( c );\r
                        t.Show();\r
-                       Assert.IsTrue(t.Compare());\r
+                       Assert.That(t.Compare(), Is.True);\r
                }\r
        }\r
        #endregion\r
@@ -498,12 +499,14 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                }\r
                [TearDown]\r
                public void TearDown() {\r
+                       if (t != null)\r
+                               t.Dispose ();\r
                }\r
 \r
                [Test]\r
                public void FillModeAlternate() {\r
                        GraphicsPath p = new GraphicsPath();\r
-                       Assert.AreEqual(FillMode.Alternate, p.FillMode);\r
+                       Assert.That (FillMode.Alternate, Is.EqualTo (p.FillMode));\r
                }\r
                [Test]\r
                public void FillModeAlternate_1() {\r
@@ -522,7 +525,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        path.FillMode = FillMode.Alternate;\r
                        t.Graphics.FillPath( Brushes.Blue, path );\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
                [Test]\r
                public void FillModeAlternate_2() {\r
@@ -535,7 +538,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        path.FillMode = FillMode.Alternate;\r
                        t.Graphics.FillPath( Brushes.Blue, path );\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
                [Test]\r
                public void FillModeAlternate_3() {\r
@@ -553,7 +556,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        path.FillMode = FillMode.Alternate;\r
                        t.Graphics.FillPath( Brushes.Blue, path );\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
                [Test]\r
                public void FillModeWinding_1() {\r
@@ -572,7 +575,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        path.FillMode = FillMode.Winding;\r
                        t.Graphics.FillPath( Brushes.Blue, path );\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
                [Test]\r
                public void FillModeWinding_2() {\r
@@ -585,7 +588,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        path.FillMode = FillMode.Winding;\r
                        t.Graphics.FillPath( Brushes.Blue, path );\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
                [Test]\r
                public void FillModeWinding_3() {\r
@@ -603,7 +606,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        path.FillMode = FillMode.Winding;\r
                        t.Graphics.FillPath( Brushes.Blue, path );\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
        }\r
@@ -642,12 +645,14 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                }\r
 \r
                [TearDown]\r
-               public void TearDown() {\r
+               public void TearDown ()\r
+               {\r
+                       if (t != null)\r
+                               t.Dispose ();\r
                }\r
 \r
                [Test]\r
-               [Category ("hehe")]\r
-               public void BeginContainerTest() {\r
+               public virtual void BeginContainerTest() {\r
                        // Define transformation for container.\r
                        RectangleF srcRect = new RectangleF(0.0F, 0.0F, 200.0F, 200.0F);\r
                        RectangleF destRect = new RectangleF(100.0F, 100.0F, 150.0F, 150.0F);\r
@@ -663,11 +668,38 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill untransformed rectangle with green.\r
                        t.Graphics.FillRectangle(new SolidBrush(Color.Green), 0.0F, 0.0F, 200.0F, 200.0F);\r
                        t.Show ();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
+               }\r
+\r
+               [Test]\r
+               public void MeasureString () {\r
+                       Bitmap bmp = new Bitmap (400, 300, PixelFormat.Format32bppArgb);\r
+                       Graphics graphics = Graphics.FromImage (bmp);\r
+                       graphics.PageUnit = GraphicsUnit.Point;\r
+\r
+                       string drawString = "Sample Text in points";\r
+                       Font drawFont = new Font ("Arial Black", 70, FontStyle.Regular);\r
+                       SolidBrush drawBrush = new SolidBrush (Color.Blue);\r
+\r
+                       float netWidth1 = 836.1719f;\r
+                       float netWidth2 = 1114.896f;\r
+                       float netHeight1 = 98.71094f;\r
+                       float netHeight2 = 131.6146f;\r
+\r
+                       SizeF size = graphics.MeasureString (drawString, drawFont, new PointF (0, 0), StringFormat.GenericTypographic);\r
+\r
+                       Assert.That (Math.Abs (size.Width - netWidth1) / netWidth1 < 0.01, Is.True);\r
+                       Assert.That (Math.Abs (size.Height - netHeight1) / netHeight1 < 0.01, Is.True);\r
+\r
+                       graphics.PageUnit = GraphicsUnit.Pixel;\r
+                       size = graphics.MeasureString (drawString, drawFont, new PointF (0, 0), StringFormat.GenericTypographic);\r
+\r
+                       Assert.That (Math.Abs (size.Width - netWidth2) / netWidth2 < 0.01, Is.True);\r
+                       Assert.That (Math.Abs (size.Height - netHeight2) / netHeight2 < 0.01, Is.True);\r
                }\r
+\r
                [Test]\r
-               [Category ("hehe")]\r
-               public void BeginContainerTest_2() {\r
+               public virtual void BeginContainerTest_2() {\r
                        t.Graphics.DrawRectangle( Pens.Black, new Rectangle(70, 70, 50, 100) );\r
                        t.Graphics.DrawRectangle( Pens.Black, new Rectangle(50, 100, 150, 50) );\r
                        t.Graphics.DrawRectangle( Pens.Black, new Rectangle(80, 120, 10, 10) );\r
@@ -692,20 +724,20 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t.Graphics.FillRectangle( Brushes.Yellow, new Rectangle(150, 80, 10, 10) );\r
 \r
                        t.Show ();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
                [Test]\r
-               public void ClearTest() {\r
+               public virtual void ClearTest() {\r
                        // Clear screen with teal background.\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        t.Graphics.Clear(Color.Teal);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawArcTest() {\r
+               public virtual void DrawArcTest() {\r
                        // Create pen.\r
                        Pen blackPen= new Pen(Color.Black, 1);\r
                        // Create coordinates of rectangle to bound ellipse.\r
@@ -719,41 +751,41 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw arc to screen.\r
                        t.Graphics.DrawArc(blackPen, (int)x, (int)y, (int)width, (int)height, (int)startAngle, (int)sweepAngle);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
                        startAngle =  10.0F;\r
                        sweepAngle = 120.0F;\r
                        t.Graphics.DrawArc(blackPen, new Rectangle((int)x, (int)y, (int)width, (int)height), startAngle, sweepAngle);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
                        startAngle =  10.0F;\r
                        sweepAngle = 190.0F;\r
                        t.Graphics.DrawArc(blackPen, x, y, width, height, startAngle, sweepAngle);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
                        startAngle =  10.0F;\r
                        sweepAngle = 300.0F;\r
                        t.Graphics.DrawArc(blackPen, new RectangleF(x, y, width, height), startAngle, sweepAngle);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
                        startAngle =  -179.9F;\r
                        sweepAngle = -359.9F;\r
                        t.Graphics.DrawArc(blackPen, new RectangleF(x, y, width, height), startAngle, sweepAngle);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
                        startAngle =  -10.0F;\r
                        sweepAngle = -300.0F;\r
                        t.Graphics.DrawArc(blackPen, new RectangleF(x, y, width, height), startAngle, sweepAngle);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawBezierTest() {\r
+               public virtual void DrawBezierTest() {\r
                        // Create pen.\r
                        Pen blackPen = new Pen(Color.Black, 3);\r
                        // Create coordinates of points for curve.\r
@@ -771,25 +803,25 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                                controlX2, controlY2,\r
                                endX, endY);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
                        t.Graphics.DrawBezier(blackPen, new PointF( startX, startY),\r
                                new PointF(controlX1, controlY1),\r
                                new PointF(controlX2, controlY2),\r
                                new PointF(endX, endY));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
                        t.Graphics.DrawBezier(blackPen, new Point((int)startX, (int)startY),\r
                                new Point((int)controlX1, (int)controlY1),\r
                                new Point((int)controlX2, (int)controlY2),\r
                                new Point((int)endX, (int)endY));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawBeziersTest() {\r
+               public virtual void DrawBeziersTest() {\r
                        // Create pen.\r
                        Pen blackPen = new Pen(Color.Black, 3);\r
                        // Create points for curve.\r
@@ -807,7 +839,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw arc to screen.\r
                        t.Graphics.DrawBeziers(blackPen, bezierPoints);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        PointF startF = new PointF(100.0F, 100.0F);\r
@@ -824,11 +856,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw arc to screen.\r
                        t.Graphics.DrawBeziers(blackPen, bezierPointsF);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawClosedCurveTest() {\r
+               public virtual void DrawClosedCurveTest() {\r
                        // Create pens.\r
                        Pen redPen   = new Pen(Color.Red, 3);\r
                        Pen greenPen = new Pen(Color.Green, 3);\r
@@ -857,18 +889,18 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw closed curve to screen.\r
                        t.Graphics.DrawClosedCurve(greenPen, curvePoints, tension, aFillMode);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        aFillMode = FillMode.Winding;\r
                        // Draw closed curve to screen.\r
                        t.Graphics.DrawClosedCurve(greenPen, curvePoints, tension, aFillMode);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawCurveTest() {\r
+               public virtual void DrawCurveTest() {\r
                        // Create pens.\r
                        Pen redPen   = new Pen(Color.Red, 3);\r
                        Pen greenPen = new Pen(Color.Green, 3);\r
@@ -898,21 +930,21 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw curve to screen.\r
                        t.Graphics.DrawCurve(greenPen, curvePoints, offset, numSegments, tension);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.DrawCurve(greenPen, curvePoints, tension);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.DrawCurve(greenPen, curvePoints);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawCurveTestF() {\r
+               public virtual void DrawCurveTestF() {\r
                        // Create pens.\r
                        Pen redPen   = new Pen(Color.Red, 3);\r
                        Pen greenPen = new Pen(Color.Green, 3);\r
@@ -942,26 +974,26 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw curve to screen.\r
                        t.Graphics.DrawCurve(greenPen, curvePoints, offset, numSegments, tension);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.DrawCurve(greenPen, curvePoints, offset, numSegments);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.DrawCurve(greenPen, curvePoints, tension);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.DrawCurve(greenPen, curvePoints);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawEllipseTest() {\r
+               public virtual void DrawEllipseTest() {\r
                        // Create pen.\r
                        Pen blackPen = new Pen(Color.Black, 3);\r
                        // Create location and size of ellipse.\r
@@ -972,16 +1004,16 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw ellipse to screen.\r
                        t.Graphics.DrawEllipse(blackPen, x, y, width, height);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.DrawEllipse(blackPen, new Rectangle(x, y, width, height));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawEllipseTestF() {\r
+               public virtual void DrawEllipseTestF() {\r
                        // Create pen.\r
                        Pen blackPen = new Pen(Color.Black, 3);\r
                        // Create location and size of ellipse.\r
@@ -992,33 +1024,30 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw ellipse to screen.\r
                        t.Graphics.DrawEllipse(blackPen, x, y, width, height);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.DrawEllipse(blackPen, new RectangleF(x, y, width, height));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                static string getInFile (string file) {\r
-                       string sRslt;                                           
-                       
-                       sRslt = Path.GetFullPath (file);
-                       
-                       if (! File.Exists (file))
-                               sRslt = Path.Combine (
-                                       Path.Combine ("..", ".."),
-                                       file);
-
-                       return sRslt;
-               }\r
-\r
-               [Test]\r
-#if TARGET_JVM\r
-               [Category ("NotWorking")] // FIXME: ImageFormat.Icon is not supported yet.\r
-                                                                       // java external library should be installed.\r
-#endif\r
-               public void DrawIconTest() {\r
+                       string sRslt;                                           \r
+                       \r
+                       sRslt = Path.GetFullPath (file);\r
+                       \r
+                       if (! File.Exists (file))\r
+                               sRslt = Path.Combine (\r
+                                       Path.Combine ("..", ".."),\r
+                                       file);\r
+\r
+                       return sRslt;\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public virtual void DrawIconTest() {\r
                        // Create icon.\r
                        Icon newIcon = new Icon(getInFile ("SampIcon.ico"));\r
                        // Create coordinates for upper-left corner of icon.\r
@@ -1027,19 +1056,16 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw icon to screen.\r
                        t.Graphics.DrawIcon(newIcon, x, y);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
 \r
                        t.Graphics.DrawIcon(newIcon, new Rectangle(200, 300, 125, 345));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-#if TARGET_JVM\r
-               [Category ("NotWorking")] // FIXME: ImageFormat.Icon is not supported yet.\r
-                                                                       // java external library should be installed.\r
-#endif\r
-               public void DrawIconUnstretchedTest() {\r
+               [Category("NotWorking")]\r
+               public virtual void DrawIconUnstretchedTest() {\r
                        // Create icon.\r
                        Icon newIcon = new Icon(getInFile ("SampIcon.ico"));\r
                        // Create rectangle for icon.\r
@@ -1047,7 +1073,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw icon to screen.\r
                        t.Graphics.DrawIconUnstretched(newIcon, rect);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 #if INTPTR_SUPPORTED\r
                // Define DrawImageAbort callback method.\r
@@ -1103,10 +1129,8 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                }\r
 #endif\r
                [Test]\r
-#if TARGET_JVM\r
-               [Category ("NotWorking")] // GH NUnit unable to read machine.config or any other app.config files\r
-#endif\r
-               public void DrawImageUnscaledTest() {\r
+               [Category("NotWorking")]\r
+               public virtual void DrawImageUnscaledTest() {\r
                        // Create image.\r
                        Image newImage = Bitmap.FromFile(getInFile ("bitmap_gh.png"));\r
                        // Create coordinates for upper-left corner of image.\r
@@ -1115,26 +1139,26 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw image to screen.\r
                        t.Graphics.DrawImageUnscaled(newImage, x, y, 100, 125);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.DrawImageUnscaled(newImage, new Rectangle(x, y, 34, 235));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.DrawImageUnscaled(newImage, x, y);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.DrawImageUnscaled(newImage, new Point(x, y));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawLineTest() {\r
+               public virtual void DrawLineTest() {\r
                        // Create pen.\r
                        Pen blackPen = new Pen(Color.Black, 3);\r
                        // Create coordinates of points that define line.\r
@@ -1145,16 +1169,16 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw line to screen.\r
                        t.Graphics.DrawLine(blackPen, x1, y1, x2, y2);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.DrawLine(blackPen, new Point( x1, y1), new Point( x2, y2));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawLineTestF() {\r
+               public virtual void DrawLineTestF() {\r
                        // Create pen.\r
                        Pen blackPen = new Pen(Color.Black, 3);\r
                        // Create coordinates of points that define line.\r
@@ -1165,16 +1189,16 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw line to screen.\r
                        t.Graphics.DrawLine(blackPen, x1, y1, x2, y2);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.DrawLine(blackPen, new PointF( x1, y1), new PointF( x2, y2));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawLinesTest() {\r
+               public virtual void DrawLinesTest() {\r
                        // Create pen.\r
                        Pen pen = new Pen(Color.Black, 3);\r
                        // Create array of points that define lines to draw.\r
@@ -1187,11 +1211,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        //Draw lines to screen.\r
                        t.Graphics.DrawLines(pen, points);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawLinesTestF() {\r
+               public virtual void DrawLinesTestF() {\r
                        // Create pen.\r
                        Pen pen = new Pen(Color.Black, 3);\r
                        // Create array of points that define lines to draw.\r
@@ -1204,11 +1228,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        //Draw lines to screen.\r
                        t.Graphics.DrawLines(pen, points);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawPathTest() {\r
+               public virtual void DrawPathTest() {\r
                        // Create graphics path object and add ellipse.\r
                        GraphicsPath graphPath = new GraphicsPath();\r
                        graphPath.AddEllipse(0, 0, 200, 100);\r
@@ -1217,11 +1241,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw graphics path to screen.\r
                        t.Graphics.DrawPath(blackPen, graphPath);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawPieTestF() {\r
+               public virtual void DrawPieTestF() {\r
                        // Create pen.\r
                        Pen blackPen = new Pen(Color.Black, 3);\r
                        // Create location and size of ellipse.\r
@@ -1235,16 +1259,16 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw pie to screen.\r
                        t.Graphics.DrawPie(blackPen, x, y, width, height, startAngle, sweepAngle);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.DrawPie(blackPen, new RectangleF( x, y, width, height), startAngle, sweepAngle);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawPieTest() {\r
+               public virtual void DrawPieTest() {\r
                        // Create pen.\r
                        Pen blackPen = new Pen(Color.Black, 3);\r
                        // Create location and size of ellipse.\r
@@ -1258,16 +1282,16 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw pie to screen.\r
                        t.Graphics.DrawPie(blackPen, x, y, width, height, startAngle, sweepAngle);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.DrawPie(blackPen, new Rectangle( x, y, width, height), startAngle, sweepAngle);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawPolygonPoint() {\r
+               public virtual void DrawPolygonPoint() {\r
                        // Create pen.\r
                        Pen blackPen = new Pen(Color.Black, 3);\r
                        // Create points that define polygon.\r
@@ -1290,11 +1314,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw polygon to screen.\r
                        t.Graphics.DrawPolygon(blackPen, curvePoints);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare()); // .NET's lines of polygon is more wide\r
+                       Assert.That(t.PDCompare()); // .NET's lines of polygon is more wi, Is.Truede\r
                }\r
 \r
                [Test]\r
-               public void DrawPolygonPointF() {\r
+               public virtual void DrawPolygonPointF() {\r
                        // Create pen.\r
                        Pen blackPen = new Pen(Color.Black, 3);\r
                        // Create points that define polygon.\r
@@ -1317,11 +1341,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw polygon to screen.\r
                        t.Graphics.DrawPolygon(blackPen, curvePoints);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawRectangleFloat() {\r
+               public virtual void DrawRectangleFloat() {\r
                        // Create pen.\r
                        Pen blackPen = new Pen(Color.Black, 3);\r
                        // Create location and size of rectangle.\r
@@ -1332,21 +1356,21 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw rectangle to screen.\r
                        t.Graphics.DrawRectangle(blackPen, x, y, width, height);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.DrawRectangle(blackPen, (int)x, (int)y, (int)width, (int)height);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.DrawRectangle(blackPen, new Rectangle( (int)x, (int)y, (int)width, (int)height));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawRectanglesRectangleF() {\r
+               public virtual void DrawRectanglesRectangleF() {\r
                        // Create pen.\r
                        Pen blackPen = new Pen(Color.Black, 3);\r
                        // Create array of rectangles.\r
@@ -1358,11 +1382,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw rectangles to screen.\r
                        t.Graphics.DrawRectangles(blackPen, rects);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void DrawRectanglesRectangle() {\r
+               public virtual void DrawRectanglesRectangle() {\r
                        // Create pen.\r
                        Pen blackPen = new Pen(Color.Black, 3);\r
                        // Create array of rectangles.\r
@@ -1374,11 +1398,12 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw rectangles to screen.\r
                        t.Graphics.DrawRectangles(blackPen, rects);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test] //TBD: add more combinations\r
-               public void DrawStringFloatFormat() {\r
+               [Category("NotWorking")]\r
+               public virtual void DrawStringFloatFormat() {\r
                        // Create string to draw.\r
                        String drawString = "Sample Text";\r
                        // Create font and brush.\r
@@ -1393,25 +1418,25 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw string to screen.\r
                        t.Graphics.DrawString(drawString, drawFont, drawBrush, x, y, drawFormat);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare()); // in .net the font is shmoothed\r
+                       Assert.That(t.PDCompare()); // in .net the font is shmooth, Is.Trueed\r
                        SetUp();\r
 \r
                        drawFormat.FormatFlags = StringFormatFlags.NoClip;\r
                        // Draw string to screen.\r
                        t.Graphics.DrawString(drawString, drawFont, drawBrush, x, y, drawFormat);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        drawFormat.FormatFlags = StringFormatFlags.FitBlackBox;\r
                        // Draw string to screen.\r
                        t.Graphics.DrawString(drawString, drawFont, drawBrush, x, y, drawFormat);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void EndContainerState() {\r
+               public virtual void EndContainerState() {\r
                        // Begin graphics container.\r
                        GraphicsContainer containerState = t.Graphics.BeginContainer();\r
                        // Translate world transformation.\r
@@ -1424,15 +1449,15 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill untransformed rectangle with green.\r
                        t.Graphics.FillRectangle(new SolidBrush(Color.Green), 0, 0, 200, 200);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test] //TBD\r
-               public void EnumerateMetafile() {\r
+               public virtual void EnumerateMetafile() {\r
                }\r
 \r
                [Test]\r
-               public void ExcludeClipRegion() {\r
+               public virtual void ExcludeClipRegion() {\r
                        // Create rectangle for exclusion.\r
                        Rectangle excludeRect = new Rectangle(100, 100, 200, 200);\r
                        // Set clipping region to exclude rectangle.\r
@@ -1440,11 +1465,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill large rectangle to show clipping region.\r
                        t.Graphics.FillRectangle(new SolidBrush(Color.Blue), 0, 0, 300, 300);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void FillClosedCurvePointFillModeTension() {\r
+               public virtual void FillClosedCurvePointFillModeTension() {\r
                        // Create solid brush.\r
                        SolidBrush redBrush = new SolidBrush(Color.Red);\r
                        // Create array of points for curve.\r
@@ -1460,22 +1485,22 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill curve on screen.\r
                        t.Graphics.FillClosedCurve(redBrush, points);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
 \r
                        SetUp();\r
                        t.Graphics.FillClosedCurve(redBrush, points, newFillMode);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
 \r
                        SetUp();\r
                        newFillMode = FillMode.Alternate;\r
                        t.Graphics.FillClosedCurve(redBrush, points, newFillMode, tension);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void FillClosedCurvePointFFillModeTension() {\r
+               public virtual void FillClosedCurvePointFFillModeTension() {\r
                        // Create solid brush.\r
                        SolidBrush redBrush = new SolidBrush(Color.Red);\r
                        // Create array of points for curve.\r
@@ -1491,22 +1516,22 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill curve on screen.\r
                        t.Graphics.FillClosedCurve(redBrush, points);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.FillClosedCurve(redBrush, points, newFillMode);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        newFillMode = FillMode.Alternate;\r
                        t.Graphics.FillClosedCurve(redBrush, points, newFillMode, tension);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void FillEllipse() {\r
+               public virtual void FillEllipse() {\r
                        // Create solid brush.\r
                        SolidBrush redBrush = new SolidBrush(Color.Red);\r
                        // Create location and size of ellipse.\r
@@ -1517,16 +1542,16 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill ellipse on screen.\r
                        t.Graphics.FillEllipse(redBrush, x, y, width, height);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.FillEllipse(redBrush, new Rectangle( x, y, width, height));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void FillEllipseFloat() {\r
+               public virtual void FillEllipseFloat() {\r
                        // Create solid brush.\r
                        SolidBrush redBrush = new SolidBrush(Color.Red);\r
                        // Create location and size of ellipse.\r
@@ -1537,16 +1562,16 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill ellipse on screen.\r
                        t.Graphics.FillEllipse(redBrush, x, y, width, height);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.FillEllipse(redBrush, new RectangleF( x, y, width, height));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void FillPathEllipse() {\r
+               public virtual void FillPathEllipse() {\r
                        // Create solid brush.\r
                        SolidBrush redBrush = new SolidBrush(Color.Red);\r
                        // Create graphics path object and add ellipse.\r
@@ -1555,11 +1580,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill graphics path to screen.\r
                        t.Graphics.FillPath(redBrush, graphPath);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void FillPieFloat() {\r
+               public virtual void FillPieFloat() {\r
                        // Create solid brush.\r
                        SolidBrush redBrush = new SolidBrush(Color.Red);\r
                        // Create location and size of ellipse.\r
@@ -1573,21 +1598,21 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill pie to screen.\r
                        t.Graphics.FillPie(redBrush, new Rectangle(x, y, width, height), startAngle, sweepAngle);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.FillPie(redBrush, x, y, width, height, (int)startAngle, (int)sweepAngle);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.FillPie(redBrush, (float)x, (float)y, (float)width, (float)height, startAngle, sweepAngle);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void FillPolygonPointFillMode() {\r
+               public virtual void FillPolygonPointFillMode() {\r
                        // Create solid brush.\r
                        SolidBrush blueBrush = new SolidBrush(Color.Blue);\r
                        // Create points that define polygon.\r
@@ -1611,21 +1636,21 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill polygon to screen.\r
                        t.Graphics.FillPolygon(blueBrush, curvePoints, FillMode.Winding);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.FillPolygon(blueBrush, curvePoints, FillMode.Alternate);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.FillPolygon(blueBrush, curvePoints);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void FillPolygonPointFFillMode() {\r
+               public virtual void FillPolygonPointFFillMode() {\r
                        // Create solid brush.\r
                        SolidBrush blueBrush = new SolidBrush(Color.Blue);\r
                        // Create points that define polygon.\r
@@ -1649,21 +1674,21 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill polygon to screen.\r
                        t.Graphics.FillPolygon(blueBrush, curvePoints, FillMode.Winding);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.FillPolygon(blueBrush, curvePoints, FillMode.Alternate);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.FillPolygon(blueBrush, curvePoints);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void FillRectangle() {\r
+               public virtual void FillRectangle() {\r
                        // Create solid brush.\r
                        SolidBrush blueBrush = new SolidBrush(Color.Blue);\r
                        // Create location and size of rectangle.\r
@@ -1674,16 +1699,16 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill rectangle to screen.\r
                        t.Graphics.FillRectangle(blueBrush, x, y, width, height);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.FillRectangle(blueBrush, new Rectangle( x, y, width, height));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void FillRectangleFloat() {\r
+               public virtual void FillRectangleFloat() {\r
                        // Create solid brush.\r
                        SolidBrush blueBrush = new SolidBrush(Color.Blue);\r
                        // Create location and size of rectangle.\r
@@ -1694,16 +1719,16 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill rectangle to screen.\r
                        t.Graphics.FillRectangle(blueBrush, x, y, width, height);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                        SetUp();\r
 \r
                        t.Graphics.FillRectangle(blueBrush, new RectangleF( x, y, width, height));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void FillRectanglesRectangle() {\r
+               public virtual void FillRectanglesRectangle() {\r
                        // Create solid brush.\r
                        SolidBrush blueBrush = new SolidBrush(Color.Blue);\r
                        // Create array of rectangles.\r
@@ -1715,11 +1740,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill rectangles to screen.\r
                        t.Graphics.FillRectangles(blueBrush, rects);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void FillRectanglesRectangleF() {\r
+               public virtual void FillRectanglesRectangleF() {\r
                        // Create solid brush.\r
                        SolidBrush blueBrush = new SolidBrush(Color.Blue);\r
                        // Create array of rectangles.\r
@@ -1731,11 +1756,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill rectangles to screen.\r
                        t.Graphics.FillRectangles(blueBrush, rects);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void FillRegionRectangle() {\r
+               public virtual void FillRegionRectangle() {\r
                        // Create solid brush.\r
                        SolidBrush blueBrush = new SolidBrush(Color.Blue);\r
                        // Create rectangle for region.\r
@@ -1745,17 +1770,17 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill region to screen.\r
                        t.Graphics.FillRegion(blueBrush, fillRegion);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void FlushTest() {\r
+               public virtual void FlushTest() {\r
                        t.Graphics.Flush();\r
                        t.Graphics.Flush(FlushIntention.Flush);\r
                }\r
 \r
                [Test]\r
-               public void IntersectClipRegion() {\r
+               public virtual void IntersectClipRegion() {\r
                        // Set clipping region.\r
                        Rectangle clipRect = new Rectangle(0, 0, 200, 300);\r
                        Region clipRegion = new Region(clipRect);\r
@@ -1775,11 +1800,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t.Show();\r
                        t.Graphics.DrawRectangle(new Pen(Color.Red), intersectRect);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void IsVisible4Float() {\r
+               public virtual void IsVisible4Float() {\r
                        // Set clip region.\r
                        Region clipRegion = new Region(new Rectangle(50, 50, 100, 100));\r
                        t.Graphics.SetClip(clipRegion, CombineMode.Replace);\r
@@ -1802,14 +1827,12 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                                t.Show();\r
                        }\r
 \r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-#if TARGET_JVM\r
-               [Category ("NotWorking")] // FIXME: Graphics.MeasureCharacterRanges is not implemented\r
-#endif\r
-               public void MeasureCharacterRangesRegions() {\r
+               [Category("NotWorking")]\r
+               public virtual void MeasureCharacterRangesRegions() {\r
                        // Set up string.\r
                        string measureString = "First and Second ranges";\r
                        Font stringFont = new Font("Times New Roman", 16.0F);\r
@@ -1854,15 +1877,12 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                                new Pen(Color.Blue, 1),\r
                                Rectangle.Round(measureRect2));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test] //TBD: add more overloads\r
-#if TARGET_JVM\r
-               [Category ("NotWorking")] // FIXME: Graphics.MeasureString(string,Font,SizeF,StringFormat,out int,out int) \r
-                                                                       // is not implemented\r
-#endif\r
-               public void MeasureStringSizeFFormatInts() {\r
+               [Category("NotWorking")]\r
+               public virtual void MeasureStringSizeFFormatInts() {\r
                        // Set up string.\r
                        string measureString = "Measure String";\r
                        Font stringFont = new Font("Arial", 16);\r
@@ -1903,11 +1923,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                                Brushes.Black,\r
                                new PointF(100, 0));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void MultiplyTransform() {\r
+               public virtual void MultiplyTransform() {\r
                        // Create transform matrix.\r
                        Matrix transformMatrix = new Matrix();\r
                        // Translate matrix, prepending translation vector.\r
@@ -1921,11 +1941,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw rotated, translated ellipse.\r
                        t.Graphics.DrawEllipse(new Pen(Color.Blue, 3), -80, -40, 160, 80);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void MultiplyTransformMatrixOrder() {\r
+               public virtual void MultiplyTransformMatrixOrder() {\r
                        // Create transform matrix.\r
                        Matrix transformMatrix = new Matrix();\r
                        // Translate matrix, prepending translation vector.\r
@@ -1939,11 +1959,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw rotated, translated ellipse.\r
                        t.Graphics.DrawEllipse(new Pen(Color.Blue, 3), -80, -40, 160, 80);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void MultiplyTransformMatrixOrder1() {\r
+               public virtual void MultiplyTransformMatrixOrder1() {\r
                        // Create transform matrix.\r
                        Matrix transformMatrix = new Matrix();\r
                        // Translate matrix, prepending translation vector.\r
@@ -1957,11 +1977,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw rotated, translated ellipse.\r
                        t.Graphics.DrawEllipse(new Pen(Color.Blue, 3), -80, -40, 160, 80);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void ResetClipIntersectClipRectangleF() {\r
+               public virtual void ResetClipIntersectClipRectangleF() {\r
                        // Set clipping region.\r
                        Rectangle clipRect = new Rectangle(0, 0, 200, 200);\r
                        t.Graphics.SetClip(clipRect);\r
@@ -1976,11 +1996,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t.Graphics.DrawRectangle(new Pen(Color.Black), clipRect);\r
                        t.Graphics.DrawRectangle(new Pen(Color.Red), Rectangle.Round(intersectRectF));\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void SaveRestoreTranslate() {\r
+               public virtual void SaveRestoreTranslate() {\r
                        // Translate transformation matrix.\r
                        t.Graphics.TranslateTransform(100, 0);\r
                        // Save translated graphics state.\r
@@ -1993,11 +2013,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t.Graphics.Restore(transState);\r
                        t.Graphics.FillRectangle(new SolidBrush(Color.Blue), 0, 0, 100, 100);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void RotateTransformAngleMatrixOrder() {\r
+               public virtual void RotateTransformAngleMatrixOrder() {\r
                        // Set world transform of graphics object to translate.\r
                        t.Graphics.TranslateTransform(100.0F, 0.0F);\r
                        // Then to rotate, appending rotation matrix.\r
@@ -2005,11 +2025,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw translated, rotated ellipse to screen.\r
                        t.Graphics.DrawEllipse(new Pen(Color.Blue, 3), 0, 0, 200, 80);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void RotateTransformAngleMatrixOrder1() {\r
+               public virtual void RotateTransformAngleMatrixOrder1() {\r
                        // Set world transform of graphics object to translate.\r
                        t.Graphics.TranslateTransform(100.0F, 0.0F);\r
                        // Then to rotate, appending rotation matrix.\r
@@ -2017,11 +2037,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw translated, rotated ellipse to screen.\r
                        t.Graphics.DrawEllipse(new Pen(Color.Blue, 3), 0, 0, 200, 80);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());  // Line width problem\r
+                       Assert.That(t.PDCompare());  // Line width probl, Is.Trueem\r
                }\r
 \r
                [Test]\r
-               public void ScaleTransformFloatMatrixOrder() {\r
+               public virtual void ScaleTransformFloatMatrixOrder() {\r
                        // Set world transform of graphics object to rotate.\r
                        t.Graphics.RotateTransform(30.0F);\r
                        // Then to scale, appending to world transform.\r
@@ -2029,11 +2049,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw rotated, scaled rectangle to screen.\r
                        t.Graphics.DrawRectangle(new Pen(Color.Blue, 3), 50, 0, 100, 40);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare()); // Line width problem\r
+                       Assert.That(t.PDCompare()); // Line width probl, Is.Trueem\r
                }\r
 \r
                [Test]\r
-               public void ScaleTransformFloatMatrixOrder1() {\r
+               public virtual void ScaleTransformFloatMatrixOrder1() {\r
                        // Set world transform of graphics object to rotate.\r
                        t.Graphics.RotateTransform(30.0F);\r
                        // Then to scale, appending to world transform.\r
@@ -2041,11 +2061,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw rotated, scaled rectangle to screen.\r
                        t.Graphics.DrawRectangle(new Pen(Color.Blue, 3), 50, 0, 100, 40);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test] //TBD: add more combination\r
-               public void SetClipRegionCombine() {\r
+               public virtual void SetClipRegionCombine() {\r
                        // Create region for clipping.\r
                        Region clipRegion = new Region(new Rectangle(0, 0, 200, 100));\r
                        // Set clipping region of graphics to region.\r
@@ -2053,11 +2073,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill rectangle to demonstrate clip region.\r
                        t.Graphics.FillRectangle(new SolidBrush(Color.Black), 0, 0, 500, 300);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void TransformPointsPointF() {\r
+               public virtual void TransformPointsPointF() {\r
                        // Create array of two points.\r
                        PointF[] points = {new PointF(0.0F, 0.0F),\r
                                                                  new PointF(100.0F, 50.0F)};\r
@@ -2078,11 +2098,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                                points[0],\r
                                points[1]);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void TranslateClipFloat() {\r
+               public virtual void TranslateClipFloat() {\r
                        // Create rectangle for clipping region.\r
                        RectangleF clipRect = new RectangleF(0.0F, 0.0F, 100.0F, 100.0F);\r
                        // Set clipping region of graphics to rectangle.\r
@@ -2094,11 +2114,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Fill rectangle to demonstrate translated clip region.\r
                        t.Graphics.FillRectangle(new SolidBrush(Color.Black), 0, 0, 500, 300);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void TranslateTransformAngleMatrixOrder() {\r
+               public virtual void TranslateTransformAngleMatrixOrder() {\r
                        // Set world transform of graphics object to rotate.\r
                        t.Graphics.RotateTransform(30.0F);\r
                        // Then to translate, appending to world transform.\r
@@ -2106,11 +2126,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw rotated, translated ellipse to screen.\r
                        t.Graphics.DrawEllipse(new Pen(Color.Blue, 3), 0, 0, 200, 80);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare()); // Line width problem\r
+                       Assert.That(t.PDCompare()); // Line width probl, Is.Trueem\r
                }\r
 \r
                [Test]\r
-               public void TranslateTransformAngleMatrixOrder1() {\r
+               public virtual void TranslateTransformAngleMatrixOrder1() {\r
                        // Set world transform of graphics object to rotate.\r
                        t.Graphics.RotateTransform(30.0F);\r
                        // Then to translate, appending to world transform.\r
@@ -2118,11 +2138,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        // Draw rotated, translated ellipse to screen.\r
                        t.Graphics.DrawEllipse(new Pen(Color.Blue, 3), 0, 0, 200, 80);\r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void TransfromPageScaleUnits() {\r
+               public virtual void TransfromPageScaleUnits() {\r
                        t.Graphics.PageUnit = GraphicsUnit.Millimeter;\r
                        t.Graphics.PageScale = 1.0F;\r
                        t.Graphics.DrawLine(Pens.Red, 10, 70, 70, 10);\r
@@ -2146,11 +2166,11 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t.Graphics.DrawLine(Pens.Yellow, 10, 70, 70, 10);\r
 \r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
-               public void TransfromPageScaleUnits_2() {\r
+               public virtual void TransfromPageScaleUnits_2() {\r
                        t.Graphics.RotateTransform(45);\r
                        t.Graphics.PageUnit = GraphicsUnit.Millimeter;\r
                        t.Graphics.PageScale = 1.0F;\r
@@ -2165,10 +2185,10 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t.Graphics.DrawLine(Pens.Green, 10, 70, 70, 10);\r
 \r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
                [Test]\r
-               public void TransfromPageScaleUnits_3() {\r
+               public virtual void TransfromPageScaleUnits_3() {\r
                        t.Graphics.TranslateTransform(20, 20);\r
                        t.Graphics.PageUnit = GraphicsUnit.Millimeter;\r
                        t.Graphics.PageScale = 1.0F;\r
@@ -2195,7 +2215,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t.Graphics.DrawLine(Pens.Red, 10, 70, 70, 10);\r
 \r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
        }\r
 \r
@@ -2226,6 +2246,40 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        st["FillClosedCurvePointFFillModeTension:6"] = TOLERANCE * 1.5f;\r
                        st["ScaleTransformFloatMatrixOrder1:2"] = TOLERANCE * 3.5f;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        #endregion\r
@@ -2238,6 +2292,42 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        base.SetUp ("GraphicsFixturePropCompositingMode1");\r
                        t.Graphics.CompositingMode = CompositingMode.SourceCopy;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        [TestFixture]\r
@@ -2246,6 +2336,42 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        base.SetUp ("GraphicsFixturePropCompositingMode2");\r
                        t.Graphics.CompositingMode = CompositingMode.SourceOver;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        #endregion\r
@@ -2258,6 +2384,42 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        base.SetUp ("GraphicsFixturePropInterpolationMode1");\r
                        t.Graphics.InterpolationMode = InterpolationMode.Bilinear;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        [TestFixture]\r
@@ -2266,6 +2428,42 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        base.SetUp ("GraphicsFixturePropInterpolationMode2");\r
                        t.Graphics.InterpolationMode = InterpolationMode.Bicubic;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        #endregion\r
@@ -2283,6 +2481,41 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        st["IntersectClipRegion:4"] = TOLERANCE * 1.5f;\r
                        st["ResetClipIntersectClipRectangleF:2"] = TOLERANCE * 1.5f;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        #endregion\r
@@ -2295,6 +2528,42 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        base.SetUp ("GraphicsFixturePropPageUnit1");\r
                        t.Graphics.PageUnit = GraphicsUnit.Display;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        [TestFixture]\r
@@ -2338,6 +2607,54 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        st["ScaleTransformFloatMatrixOrder1:2"] = TOLERANCE * 5.5f;\r
                        st["RotateTransformAngleMatrixOrder:2"] = TOLERANCE * 3.5f;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void BeginContainerTest() {\r
+                       base.BeginContainerTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void EndContainerState() {\r
+                       base.EndContainerState ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        [TestFixture]\r
@@ -2346,6 +2663,45 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        base.SetUp ("GraphicsFixturePropPageUnit3");\r
                        t.Graphics.PageUnit = GraphicsUnit.Inch;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void IsVisible4Float() {\r
+                       base.IsVisible4Float ();\r
+               }\r
+\r
+               [Test]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        [TestFixture]\r
@@ -2361,6 +2717,47 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        st["DrawRectanglesRectangle:2"] = TOLERANCE * 1.5f; \r
                        st["DrawRectanglesRectangleF:2"] = TOLERANCE * 1.5f; \r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawClosedCurveTest() {\r
+                       base.DrawClosedCurveTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        [TestFixture]\r
@@ -2370,6 +2767,42 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
 \r
                        t.Graphics.PageUnit = GraphicsUnit.Pixel;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        [TestFixture]\r
@@ -2385,30 +2818,168 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        st["IsVisible4Float:2"] = TOLERANCE * 1.5f; \r
                        st["TransformPointsPointF:2"] = TOLERANCE * 2.0f; \r
                }\r
-       }\r
 \r
-       //      [TestFixture]\r
-       //      public class GraphicsFixturePropPageUnit7 : GraphicsFixture {\r
-       //              public override void SetUp() {\r
-       //                      base.SetUp ();\r
-       //\r
-       //                      t.Graphics.PageUnit = GraphicsUnit.World;\r
-       //              }\r
-       //      }\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawClosedCurveTest() {\r
+                       base.DrawClosedCurveTest ();\r
+               }\r
 \r
-       #endregion\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawCurveTest() {\r
+                       base.DrawCurveTest ();\r
+               }\r
 \r
-       #region GraphicsFixturePropPixelOffsetMode\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawCurveTestF() {\r
+                       base.DrawCurveTestF ();\r
+               }\r
 \r
-       [TestFixture]\r
-       public class GraphicsFixturePropPixelOffsetMode : GraphicsFixture {\r
-               public override void SetUp() {\r
-                       base.SetUp ("GraphicsFixturePropPixelOffsetMode");\r
-                       t.Graphics.PixelOffsetMode = PixelOffsetMode.Half;\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawEllipseTest() {\r
+                       base.DrawEllipseTest ();\r
+               }\r
 \r
-                       st["TransformPointsPointF:2"] = TOLERANCE * 3.0f;\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawEllipseTestF() {\r
+                       base.DrawEllipseTestF ();\r
                }\r
-       }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawPathTest() {\r
+                       base.DrawPathTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void EndContainerState() {\r
+                       base.EndContainerState ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MultiplyTransform() {\r
+                       base.MultiplyTransform ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MultiplyTransformMatrixOrder1() {\r
+                       base.MultiplyTransformMatrixOrder1 ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void RotateTransformAngleMatrixOrder1() {\r
+                       base.RotateTransformAngleMatrixOrder1 ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void TranslateTransformAngleMatrixOrder() {\r
+                       base.TranslateTransformAngleMatrixOrder ();\r
+               }\r
+       }\r
+\r
+       //      [TestFixture]\r
+       //      public class GraphicsFixturePropPageUnit7 : GraphicsFixture {\r
+       //              public override void SetUp() {\r
+       //                      base.SetUp ();\r
+       //\r
+       //                      t.Graphics.PageUnit = GraphicsUnit.World;\r
+       //              }\r
+       //      }\r
+\r
+       #endregion\r
+\r
+       #region GraphicsFixturePropPixelOffsetMode\r
+\r
+       [TestFixture]\r
+       public class GraphicsFixturePropPixelOffsetMode : GraphicsFixture {\r
+               public override void SetUp() {\r
+                       base.SetUp ("GraphicsFixturePropPixelOffsetMode");\r
+                       t.Graphics.PixelOffsetMode = PixelOffsetMode.Half;\r
+\r
+                       st["TransformPointsPointF:2"] = TOLERANCE * 3.0f;\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
+       }\r
 \r
        [TestFixture]\r
        public class GraphicsFixturePropPixelOffsetMode1 : GraphicsFixture {\r
@@ -2416,6 +2987,42 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        base.SetUp ("GraphicsFixturePropPixelOffsetMode1");\r
                        t.Graphics.PixelOffsetMode = PixelOffsetMode.HighSpeed;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        [TestFixture]\r
@@ -2426,6 +3033,42 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
 \r
                        st["TransformPointsPointF:2"] = TOLERANCE * 3.0f;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        #endregion\r
@@ -2433,14 +3076,396 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
        #region GraphicsFixturePropRenderingOrigin\r
 \r
        [TestFixture]\r
-#if TARGET_JVM\r
-       [Category ("NotWorking")] // FIXME: Graphics.RenderingOrigin is not implemented\r
-#endif\r
+       [Category("NotWorking")]\r
        public class GraphicsFixturePropRenderingOrigin : GraphicsFixture {\r
                public override void SetUp() {\r
                        base.SetUp ("GraphicsFixturePropRenderingOrigin");\r
                        t.Graphics.RenderingOrigin = new Point(12, 23);\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void BeginContainerTest() {\r
+                       base.BeginContainerTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void BeginContainerTest_2() {\r
+                       base.BeginContainerTest_2 ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void ClearTest() {\r
+                       base.ClearTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawArcTest() {\r
+                       base.DrawArcTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawBezierTest() {\r
+                       base.DrawBezierTest ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void DrawBeziersTest() {\r
+                       base.DrawBeziersTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawClosedCurveTest() {\r
+                       base.DrawClosedCurveTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawCurveTest() {\r
+                       base.DrawCurveTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawCurveTestF() {\r
+                       base.DrawCurveTestF ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawEllipseTest() {\r
+                       base.DrawEllipseTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawEllipseTestF() {\r
+                       base.DrawEllipseTestF ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawLineTest() {\r
+                       base.DrawLineTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawLineTestF() {\r
+                       base.DrawLineTestF ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void DrawLinesTest() {\r
+                       base.DrawLinesTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawLinesTestF() {\r
+                       base.DrawLinesTestF ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawPathTest() {\r
+                       base.DrawPathTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawPieTestF() {\r
+                       base.DrawPieTestF ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawPieTest() {\r
+                       base.DrawPieTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawPolygonPoint() {\r
+                       base.DrawPolygonPoint ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void DrawPolygonPointF() {\r
+                       base.DrawPolygonPointF ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawRectangleFloat() {\r
+                       base.DrawRectangleFloat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawRectanglesRectangleF() {\r
+                       base.DrawRectanglesRectangleF ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawRectanglesRectangle() {\r
+                       base.DrawRectanglesRectangle ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void EndContainerState() {\r
+                       base.EndContainerState  ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void EnumerateMetafile() {\r
+                       base.EnumerateMetafile ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void ExcludeClipRegion() {\r
+                       base.ExcludeClipRegion ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void FillClosedCurvePointFillModeTension() {\r
+                       base.FillClosedCurvePointFillModeTension ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void FillClosedCurvePointFFillModeTension() {\r
+                       base.FillClosedCurvePointFFillModeTension ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void FillEllipse() {\r
+                       base.FillEllipse ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void FillEllipseFloat() {\r
+                       base.FillEllipseFloat ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void FillPathEllipse() {\r
+                       base.FillPathEllipse ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void FillPieFloat() {\r
+                       base.FillPieFloat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void FillPolygonPointFillMode() {\r
+                       base.FillPolygonPointFillMode ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void FillPolygonPointFFillMode() {\r
+                       base.FillPolygonPointFFillMode ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void FillRectangle() {\r
+                       base.FillRectangle ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void FillRectangleFloat() {\r
+                       base.FillRectangleFloat ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void FillRectanglesRectangle() {\r
+                       base.FillRectanglesRectangle ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void FillRectanglesRectangleF() {\r
+                       base.FillRectanglesRectangleF ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void FillRegionRectangle() {\r
+                       base.FillRegionRectangle ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void FlushTest() {\r
+                       base.FlushTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void IsVisible4Float() {\r
+                       base.IsVisible4Float ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MultiplyTransform() {\r
+                       base.MultiplyTransform ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MultiplyTransformMatrixOrder() {\r
+                       base.MultiplyTransformMatrixOrder ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MultiplyTransformMatrixOrder1() {\r
+                       base.MultiplyTransformMatrixOrder1 ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void ResetClipIntersectClipRectangleF() {\r
+                       base.ResetClipIntersectClipRectangleF ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void SaveRestoreTranslate() {\r
+                       base.SaveRestoreTranslate ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void RotateTransformAngleMatrixOrder() {\r
+                       base.RotateTransformAngleMatrixOrder ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void RotateTransformAngleMatrixOrder1() {\r
+                       base.RotateTransformAngleMatrixOrder1 ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void ScaleTransformFloatMatrixOrder() {\r
+                       base.ScaleTransformFloatMatrixOrder ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void ScaleTransformFloatMatrixOrder1() {\r
+                       base.ScaleTransformFloatMatrixOrder1 ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void SetClipRegionCombine() {\r
+                       base.SetClipRegionCombine ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void TransformPointsPointF() {\r
+                       base.TransformPointsPointF ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void TranslateClipFloat() {\r
+                       base.TranslateClipFloat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void TranslateTransformAngleMatrixOrder() {\r
+                       base.TranslateTransformAngleMatrixOrder ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void TranslateTransformAngleMatrixOrder1() {\r
+                       base.TranslateTransformAngleMatrixOrder1 ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void TransfromPageScaleUnits() {\r
+                       base.TransfromPageScaleUnits ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void TransfromPageScaleUnits_2() {\r
+                       base.TransfromPageScaleUnits_2 ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void TransfromPageScaleUnits_3() {\r
+                       base.TransfromPageScaleUnits_3 ();\r
+               }\r
        }\r
 \r
        #endregion\r
@@ -2471,6 +3496,42 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        st["DrawRectanglesRectangle:2"] = TOLERANCE * 3.0f;\r
                        st["DrawRectanglesRectangleF:2"] = TOLERANCE * 3.0f;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        [TestFixture]\r
@@ -2479,6 +3540,42 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        base.SetUp ("GraphicsFixturePropSmoothingMode1");\r
                        t.Graphics.SmoothingMode = SmoothingMode.HighSpeed;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        #endregion\r
@@ -2491,6 +3588,42 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        base.SetUp ("GraphicsFixturePropTextContrast");\r
                        t.Graphics.TextContrast = 9;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        #endregion\r
@@ -2508,7 +3641,10 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                }\r
 \r
                [TearDown]\r
-               public void TearDown() {\r
+               public void TearDown ()\r
+               {\r
+                       if (t != null)\r
+                               t.Dispose ();\r
                }\r
 \r
                [Test]\r
@@ -2544,7 +3680,7 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        t.Graphics.FillRectangle( Brushes.SeaGreen, 0, 0, 100, 100 );\r
 \r
                        t.Show();\r
-                       Assert.IsTrue(t.PDCompare());\r
+                       Assert.That(t.PDCompare(), Is.True);\r
                }\r
 \r
                [Test]\r
@@ -2562,16 +3698,16 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
 \r
                        GraphicsContainer c1 = t.Graphics.BeginContainer();\r
 \r
-                       Assert.AreEqual(CompositingQuality.Default, t.Graphics.CompositingQuality);\r
-                       Assert.AreEqual(CompositingMode.SourceOver, t.Graphics.CompositingMode);\r
-                       Assert.AreEqual(InterpolationMode.Bilinear, t.Graphics.InterpolationMode);\r
-                       Assert.AreEqual(1.0F, t.Graphics.PageScale);\r
-                       Assert.AreEqual(GraphicsUnit.Display, t.Graphics.PageUnit);\r
-                       Assert.AreEqual(PixelOffsetMode.Default, t.Graphics.PixelOffsetMode);\r
-                       Assert.AreEqual(SmoothingMode.None, t.Graphics.SmoothingMode);\r
-                       Assert.AreEqual(true, t.Graphics.Transform.IsIdentity);\r
-                       Assert.AreEqual(4.0f, t.Graphics.TextContrast);\r
-                       Assert.AreEqual(TextRenderingHint.SystemDefault, t.Graphics.TextRenderingHint);\r
+                       Assert.That (CompositingQuality.Default, Is.EqualTo (t.Graphics.CompositingQuality));\r
+                       Assert.That (CompositingMode.SourceOver, Is.EqualTo (t.Graphics.CompositingMode));\r
+                       Assert.That (InterpolationMode.Bilinear, Is.EqualTo (t.Graphics.InterpolationMode));\r
+                       Assert.That (1.0F, Is.EqualTo (t.Graphics.PageScale));\r
+                       Assert.That (GraphicsUnit.Display, Is.EqualTo (t.Graphics.PageUnit));\r
+                       Assert.That (PixelOffsetMode.Default, Is.EqualTo (t.Graphics.PixelOffsetMode));\r
+                       Assert.That (SmoothingMode.None, Is.EqualTo (t.Graphics.SmoothingMode));\r
+                       Assert.That (true, Is.EqualTo (t.Graphics.Transform.IsIdentity));\r
+                       Assert.That (4.0f, Is.EqualTo (t.Graphics.TextContrast));\r
+                       Assert.That (TextRenderingHint.SystemDefault, Is.EqualTo (t.Graphics.TextRenderingHint));\r
 \r
                        t.Graphics.EndContainer(c1);\r
                }\r
@@ -2592,16 +3728,16 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
 \r
                        t.Graphics.Restore(s);\r
 \r
-                       Assert.AreEqual(CompositingQuality.Default, t.Graphics.CompositingQuality);\r
-                       Assert.AreEqual(CompositingMode.SourceOver, t.Graphics.CompositingMode);\r
-                       Assert.AreEqual(InterpolationMode.Bilinear, t.Graphics.InterpolationMode);\r
-                       Assert.AreEqual(1.0F, t.Graphics.PageScale);\r
-                       Assert.AreEqual(GraphicsUnit.Display, t.Graphics.PageUnit);\r
-                       Assert.AreEqual(PixelOffsetMode.Default, t.Graphics.PixelOffsetMode);\r
-                       Assert.AreEqual(SmoothingMode.None, t.Graphics.SmoothingMode);\r
-                       Assert.AreEqual(true, t.Graphics.Transform.IsIdentity);\r
-                       Assert.AreEqual(4.0f, t.Graphics.TextContrast);\r
-                       Assert.AreEqual(TextRenderingHint.SystemDefault, t.Graphics.TextRenderingHint);\r
+                       Assert.That (CompositingQuality.Default, Is.EqualTo (t.Graphics.CompositingQuality));\r
+                       Assert.That (CompositingMode.SourceOver, Is.EqualTo (t.Graphics.CompositingMode));\r
+                       Assert.That (InterpolationMode.Bilinear, Is.EqualTo (t.Graphics.InterpolationMode));\r
+                       Assert.That (1.0F, Is.EqualTo (t.Graphics.PageScale));\r
+                       Assert.That (GraphicsUnit.Display, Is.EqualTo (t.Graphics.PageUnit));\r
+                       Assert.That (PixelOffsetMode.Default, Is.EqualTo (t.Graphics.PixelOffsetMode));\r
+                       Assert.That (SmoothingMode.None, Is.EqualTo (t.Graphics.SmoothingMode));\r
+                       Assert.That (true, Is.EqualTo (t.Graphics.Transform.IsIdentity));\r
+                       Assert.That (4.0f, Is.EqualTo (t.Graphics.TextContrast));\r
+                       Assert.That (TextRenderingHint.SystemDefault, Is.EqualTo (t.Graphics.TextRenderingHint));\r
                }\r
 \r
                [Test]\r
@@ -2616,19 +3752,19 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        GraphicsContainer c3 = t.Graphics.BeginContainer();\r
 \r
                        t.Graphics.EndContainer(c2);\r
-                       Assert.AreEqual(3, t.Graphics.PageScale);\r
+                       Assert.That (3, Is.EqualTo (t.Graphics.PageScale));\r
 \r
                        t.Graphics.PageScale = 5;\r
                        GraphicsState c5 = t.Graphics.Save();\r
 \r
                        t.Graphics.EndContainer(c3);\r
-                       Assert.AreEqual(5, t.Graphics.PageScale);\r
+                       Assert.That (5, Is.EqualTo (t.Graphics.PageScale));\r
 \r
                        t.Graphics.Restore(c5);\r
-                       Assert.AreEqual(5, t.Graphics.PageScale);\r
+                       Assert.That (5, Is.EqualTo (t.Graphics.PageScale));\r
 \r
                        t.Graphics.EndContainer(c1);\r
-                       Assert.AreEqual(2, t.Graphics.PageScale);\r
+                       Assert.That (2, Is.EqualTo (t.Graphics.PageScale));\r
                }\r
                [Test]\r
                public void SaveRestoreGraphicsProps_4() {\r
@@ -2639,10 +3775,10 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        GraphicsState c2 = t.Graphics.Save();\r
 \r
                        t.Graphics.EndContainer(c1);\r
-                       Assert.AreEqual(2, t.Graphics.PageScale);\r
+                       Assert.That (2, Is.EqualTo (t.Graphics.PageScale));\r
 \r
                        t.Graphics.Restore(c2);\r
-                       Assert.AreEqual(2, t.Graphics.PageScale);\r
+                       Assert.That (2, Is.EqualTo (t.Graphics.PageScale));\r
                }\r
        }\r
        #endregion\r
@@ -2650,69 +3786,267 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
        #region GraphicsFixturePropTextRenderingHint\r
 \r
        [TestFixture]\r
-#if TARGET_JVM\r
-       [Category ("NotWorking")] // FIXME: Graphics.TextRenderingHint is not implemented\r
-#endif\r
        public class GraphicsFixturePropTextRenderingHint : GraphicsFixture {\r
                public override void SetUp() {\r
                        base.SetUp ("GraphicsFixturePropTextRenderingHint");\r
                        t.Graphics.TextRenderingHint = TextRenderingHint.AntiAlias;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        [TestFixture]\r
-#if TARGET_JVM\r
-       [Category ("NotWorking")] // FIXME: Graphics.TextRenderingHint is not implemented\r
-#endif\r
        public class GraphicsFixturePropTextRenderingHint1 : GraphicsFixture {\r
                public override void SetUp() {\r
                        base.SetUp ("GraphicsFixturePropTextRenderingHint1");\r
                        t.Graphics.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        [TestFixture]\r
-#if TARGET_JVM\r
-       [Category ("NotWorking")] // FIXME: Graphics.TextRenderingHint is not implemented\r
-#endif\r
        public class GraphicsFixturePropTextRenderingHint2 : GraphicsFixture {\r
                public override void SetUp() {\r
                        base.SetUp ("GraphicsFixturePropTextRenderingHint2");\r
                        t.Graphics.TextRenderingHint = TextRenderingHint.ClearTypeGridFit;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        [TestFixture]\r
-#if TARGET_JVM\r
-       [Category ("NotWorking")] // FIXME: Graphics.TextRenderingHint is not implemented\r
-#endif\r
        public class GraphicsFixturePropTextRenderingHint3 : GraphicsFixture {\r
                public override void SetUp() {\r
                        base.SetUp ("GraphicsFixturePropTextRenderingHint3");\r
                        t.Graphics.TextRenderingHint = TextRenderingHint.SingleBitPerPixel;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        [TestFixture]\r
-#if TARGET_JVM\r
-       [Category ("NotWorking")] // FIXME: Graphics.TextRenderingHint is not implemented\r
-#endif\r
        public class GraphicsFixturePropTextRenderingHint4 : GraphicsFixture {\r
                public override void SetUp() {\r
                        base.SetUp ("GraphicsFixturePropTextRenderingHint4");\r
                        t.Graphics.TextRenderingHint = TextRenderingHint.SingleBitPerPixelGridFit;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        [TestFixture]\r
-#if TARGET_JVM\r
-       [Category ("NotWorking")] // FIXME: Graphics.TextRenderingHint is not implemented\r
-#endif\r
        public class GraphicsFixturePropTextRenderingHint5 : GraphicsFixture {\r
                public override void SetUp() {\r
                        base.SetUp ("GraphicsFixturePropTextRenderingHint5");\r
                        t.Graphics.TextRenderingHint = TextRenderingHint.SystemDefault;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        #endregion\r
@@ -2733,6 +4067,42 @@ namespace Test.Sys.Drawing.GraphicsFixtures {
                        st["RotateTransformAngleMatrixOrder:2"] = TOLERANCE * 1.5f;\r
                        st["TransformPointsPointF:2"] = TOLERANCE * 3.5f;\r
                }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconTest() {\r
+                       base.DrawIconTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawIconUnstretchedTest() {\r
+                       base.DrawIconUnstretchedTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawImageUnscaledTest() {\r
+                       base.DrawImageUnscaledTest ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void DrawStringFloatFormat() {\r
+                       base.DrawStringFloatFormat ();\r
+               }\r
+\r
+               [Test]\r
+               [Category("NotWorking")]\r
+               public override void MeasureCharacterRangesRegions() {\r
+                       base.MeasureCharacterRangesRegions ();\r
+               }\r
+\r
+               [Test] \r
+               [Category("NotWorking")]\r
+               public override void MeasureStringSizeFFormatInts() {\r
+                       base.MeasureStringSizeFFormatInts ();\r
+               }\r
        }\r
 \r
        #endregion\r