Переглянути джерело

tests for last fixes

svn path=/trunk/mcs/; revision=101663
Jb Evain 17 роки тому
батько
коміт
9a9f7fc8a8

+ 23 - 0
mcs/class/System.Core/Test/System.Linq.Expressions/ExpressionTest_Convert.cs

@@ -282,5 +282,28 @@ namespace MonoTests.System.Linq.Expressions {
 			Assert.IsTrue (c.IsLiftedToNull);
 			Assert.IsNotNull (c.Method);
 		}
+
+		[Test]
+		public void CompiledBoxing ()
+		{
+			var b = Expression.Lambda<Func<object>> (
+				Expression.Convert (42.ToConstant (), typeof (object))).Compile ();
+
+			Assert.AreEqual ((object) 42, b ());
+		}
+
+		[Test]
+		public void CompiledConvertToSameType ()
+		{
+			var k = new Klang (42);
+
+			var p = Expression.Parameter (typeof (Klang), "klang");
+			var c = Expression.Lambda<Func<Klang, Klang>> (
+				Expression.Convert (
+					p, typeof (Klang)),
+				p).Compile ();
+
+			Assert.AreEqual (k, c (k));
+		}
 	}
 }