3 using System.Windows.Converters;
6 namespace MonoTests.System.Windows {
9 public class SizeValueSerializerTest
12 public void CanConvertFromString ()
14 var serializer = new SizeValueSerializer ();
15 Assert.IsTrue (serializer.CanConvertFromString ("", null));
19 public void CanConvertToString ()
21 var serializer = new SizeValueSerializer ();
22 Assert.IsTrue (serializer.CanConvertToString (new Size (0, 0), null));
23 Assert.IsFalse (serializer.CanConvertToString ("", null));
27 public void ConvertFromString ()
29 var serializer = new SizeValueSerializer ();
30 object obj = serializer.ConvertFromString ("3,4", null);
31 Assert.AreEqual (typeof (Size), obj.GetType ());
32 Assert.AreEqual (new Size (3, 4), obj);
36 public void RoundTripConvert()
38 var serializer = new SizeValueSerializer ();
39 var size = new Size (1.234, 5.678);
40 var obj = serializer.ConvertFromString (serializer.ConvertToString (size, null), null);
41 Assert.AreEqual (size, obj);
45 [ExpectedException (typeof (FormatException))]
46 public void ConvertFromStringShouldThrowExceptionWhenStringHasInvalidFormat ()
48 var serializer = new SizeValueSerializer ();
49 serializer.ConvertFromString ("a,b", null);
53 [ExpectedException (typeof (ArgumentNullException))]
54 public void ConvertFromStringShouldThrowExceptionWhenStringIsNull ()
56 var serializer = new SizeValueSerializer ();
57 serializer.ConvertFromString (null, null);
61 [ExpectedException (typeof (NotSupportedException))]
62 public void ConvertToStringShouldThrowExceptionWhenInvalidType ()
64 var serializer = new SizeValueSerializer ();
65 serializer.ConvertToString (10, null);
69 [ExpectedException (typeof (ArgumentException))]
70 public void ConvertToStringShouldThrowExceptionWhenHeightOrWidthIsNegative ()
72 var serializer = new SizeValueSerializer ();
73 var result = serializer.ConvertFromString ("-1,-4", null);