11using System ;
2- using System . Collections . Generic ;
32using System . Collections ;
3+ using System . Collections . Generic ;
44using System . Diagnostics ;
55using Xunit ;
66
@@ -79,6 +79,13 @@ public void Eval() {
7979
8080 Assert . Equal ( true , lambdaParser . Eval ( " (1+testObj.IntProp)==2 ? testObj.FldTrue : false " , varContext ) ) ;
8181
82+ Assert . Equal ( "3" , lambdaParser . Eval ( "toString( (1+2) )" , varContext ) as string ) ;
83+ Assert . Equal ( "3" , lambdaParser . Eval ( "(1+2).ToString()" , varContext ) as string ) ;
84+
85+ Assert . Throws < LambdaParserException > ( ( ) => lambdaParser . Eval ( "toString( (1+2)" , varContext ) ) ;
86+ Assert . Throws < LambdaParserException > ( ( ) => lambdaParser . Eval ( "toString( (1+2), )" , varContext ) ) ;
87+ Assert . Throws < LambdaParserException > ( ( ) => lambdaParser . Eval ( "toString( 1 " , varContext ) ) ;
88+
8289 Assert . Equal ( "ab2_3" , lambdaParser . Eval ( " \" a\" +testObj.Format(\" b{0}_{1}\" , 2, \" 3\" .ToString() ).ToString() " , varContext ) ) ;
8390
8491 Assert . Equal ( true , lambdaParser . Eval ( " testObj.Hash[\" a\" ] == \" 1\" " , varContext ) ) ;
@@ -104,6 +111,9 @@ public void Eval() {
104111 Assert . Equal ( 3 , lambdaParser . Eval ( " new { {\" a\" , 1}, {\" b\" , 2}, {\" c\" , 3} }.Count " , varContext ) ) ;
105112 Assert . Equal ( 3 , lambdaParser . Eval ( " { \" a\" : 1, \" b\" : 2, \" c\" : 3 }.Count " , varContext ) ) ;
106113 Assert . Equal ( 0 , lambdaParser . Eval ( " { }.Count " , varContext ) ) ;
114+
115+ Assert . Equal ( "1" , lambdaParser . Eval ( "toString( { \" a\" : 1 }.Count ) " , varContext ) as string ) ;
116+
107117 Assert . Throws < LambdaParserException > ( ( ) => lambdaParser . Eval ( "{ \" a\" : 1, \" b\" : 2, }" , varContext ) ) ;
108118 Assert . Throws < LambdaParserException > ( ( ) => lambdaParser . Eval ( "{ \" a\" }" , varContext ) ) ;
109119 Assert . Throws < LambdaParserException > ( ( ) => lambdaParser . Eval ( "{ \" a\" : }" , varContext ) ) ;
0 commit comments