public void CreateVarNodeWithoutTypeInfo() { string name = "foo"; TypeInfo typeinfo = TypeInfo.Int; IExpressionNode expression = new ConstantNode(42); VarNode node = new VarNode(name, null, expression); Assert.IsNull(node.TypeInfo); node.CheckType(null); Assert.AreSame(TypeInfo.Int, node.TypeInfo); }
public void RaiseIfTypeMismatch() { string name = "foo"; TypeInfo typeinfo = TypeInfo.Int; IExpressionNode expression = new ConstantNode(42); VarNode node = new VarNode(name, TypeInfo.Double, expression); Assert.AreSame(TypeInfo.Double, node.TypeInfo); try { node.CheckType(null); Assert.Fail(); } catch (Exception ex) { Assert.AreEqual("type mismatch", ex.Message); } }