public void ReferenceTableCanSetKey() { var table = new ReferenceTable(); var val = Expression.CreateValue("asdf"); table.SetExpressionForKey("key", val); var valFromTable = table.ExpressionForKey("key"); Assert.NotNull(valFromTable); Assert.Equal("asdf", valFromTable.Value); }
public void ExpressionCanDerefFromExternalTable() { var refTable = new ReferenceTable(); refTable.SetExpressionForKey("name", Expression.CreateValue("Bob")); var expr = Expression.CreateFromStringWithExternalReferenceTable( "@(playerName *[name])", ParseFlags.None, refTable ); Assert.Equal(ExpressionType.Map, expr.ExpressionType); var val = expr.MapValueForKey("playerName"); Assert.Equal(ExpressionType.Value, val.ExpressionType); Assert.Equal("Bob", val.Value); }