3 using System.Windows.Media;
5 namespace MonoTests.System.Windows.Media {
8 public class MatrixConverterTest {
9 const double DELTA = 0.000000001d;
11 void CheckMatrix (Matrix expected, Matrix actual)
13 Assert.AreEqual (expected.M11, actual.M11, DELTA);
14 Assert.AreEqual (expected.M12, actual.M12, DELTA);
15 Assert.AreEqual (expected.M21, actual.M21, DELTA);
16 Assert.AreEqual (expected.M22, actual.M22, DELTA);
17 Assert.AreEqual (expected.OffsetX, actual.OffsetX, DELTA);
18 Assert.AreEqual (expected.OffsetY, actual.OffsetY, DELTA);
22 public void CanConvertFrom ()
24 var conv = new MatrixConverter ();
25 Assert.IsTrue (conv.CanConvertFrom (typeof (string)));
26 Assert.IsFalse (conv.CanConvertFrom (typeof (Matrix)));
30 public void CanConvertTo ()
32 var conv = new MatrixConverter ();
33 Assert.IsTrue (conv.CanConvertTo (typeof (string)));
34 Assert.IsFalse (conv.CanConvertTo (typeof (Matrix)));
38 public void ConvertFrom ()
40 var conv = new MatrixConverter ();
41 object obj = conv.ConvertFrom ("1, 2, 3, 4, 5, 6");
42 Assert.AreEqual (typeof (Matrix), obj.GetType ());
43 CheckMatrix (new Matrix (1, 2, 3, 4, 5, 6), (Matrix)obj);
47 [ExpectedException (typeof (NotSupportedException))]
48 public void ConvertFromInvalidType ()
50 var conv = new MatrixConverter ();
51 conv.ConvertFrom (new Matrix (10, 20, 30, 40, 50, 60));
55 public void ConvertTo ()
57 var conv = new MatrixConverter ();
58 var matrix = new Matrix (1, 2, 3, 4, 5, 6);
59 object obj = conv.ConvertTo (matrix, typeof (string));
60 Assert.AreEqual (typeof (string), obj.GetType ());
61 Assert.AreEqual ("1,2,3,4,5,6", (string)obj);