File: MatrixValueSerializerTest.cs

package info (click to toggle)
mono 6.14.1%2Bds2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,282,732 kB
  • sloc: cs: 11,182,461; xml: 2,850,281; ansic: 699,123; cpp: 122,919; perl: 58,604; javascript: 30,841; asm: 21,845; makefile: 19,602; sh: 10,973; python: 4,772; pascal: 925; sql: 859; sed: 16; php: 1
file content (79 lines) | stat: -rw-r--r-- 2,379 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
using NUnit.Framework;
using System;
using System.Windows.Media.Converters;
using System.Windows.Media;

namespace MonoTests.System.Windows.Media {

	[TestFixture]
	public class MatrixValueSerializerTest {
		const double DELTA = 0.000000001d;

		void CheckMatrix (Matrix expected, Matrix actual)
		{
			Assert.AreEqual (expected.M11, actual.M11, DELTA);
			Assert.AreEqual (expected.M12, actual.M12, DELTA);
			Assert.AreEqual (expected.M21, actual.M21, DELTA);
			Assert.AreEqual (expected.M22, actual.M22, DELTA);
			Assert.AreEqual (expected.OffsetX, actual.OffsetX, DELTA);
			Assert.AreEqual (expected.OffsetY, actual.OffsetY, DELTA);
		}

		[Test]
		public void CanConvertFromString ()
		{
			var serializer = new MatrixValueSerializer ();
			Assert.IsTrue (serializer.CanConvertFromString ("", null));
		}

		[Test]
		public void CanConvertToString ()
		{
			var serializer = new MatrixValueSerializer ();
			Assert.IsTrue (serializer.CanConvertToString (new Matrix (1, 2, 3, 4, 5 ,6), null));
			Assert.IsFalse (serializer.CanConvertToString ("", null));
		}

		[Test]
		public void ConvertFromString ()
		{
			var serializer = new MatrixValueSerializer ();
			object obj = serializer.ConvertFromString ("1, 2, 3, 4, 5 ,6", null);
			Assert.AreEqual (typeof (Matrix), obj.GetType ());
			CheckMatrix (new Matrix (1, 2, 3, 4, 5, 6), (Matrix)obj);
		}

		[Test]
		public void RoundTripConvert()
		{
			var serializer = new MatrixValueSerializer ();
			var matrix = new Matrix (1.1, 2.2, 3.3, 4.4, 5.5, 6.6);
			var obj = serializer.ConvertFromString (serializer.ConvertToString (matrix, null), null);
			CheckMatrix (matrix, (Matrix)obj);
		}

		[Test]
		[ExpectedException (typeof (FormatException))]
		public void ConvertFromStringShouldThrowExceptionWhenStringHasInvalidFormat ()
		{
			var serializer = new MatrixValueSerializer ();
			serializer.ConvertFromString ("a,b,c,d,e,f", null);
		}

		[Test]
		[ExpectedException (typeof (NotSupportedException))]
		public void ConvertFromStringShouldThrowExceptionWhenStringIsNull ()
		{
			var serializer = new MatrixValueSerializer ();
			serializer.ConvertFromString (null, null);
		}

		[Test]
		[ExpectedException (typeof (NotSupportedException))]
		public void ConvertToStringShouldThrowExceptionWhenInvalidType ()
		{
			var serializer = new MatrixValueSerializer ();
			serializer.ConvertToString (10, null);
		}
	}
}