fix: dual arity argument parsing; (#55)

This commit is contained in:
stefan-gorules
2023-07-18 18:58:04 +03:00
committed by GitHub
parent a748360d6c
commit 404e91dc59
2 changed files with 22 additions and 1 deletions
+1 -1
View File
@@ -253,7 +253,7 @@ where
Arity::Dual => {
let arg1 = self.parse_expression(0)?;
self.iterator.expect(TokenKind::Operator, Some(&[","]))?;
let arg2 = self.parse_primary_expression()?;
let arg2 = self.parse_expression(0)?;
self.iterator.expect(TokenKind::Bracket, Some(&[")"]))?;
self.iterator.node(Node::BuiltIn {
+21
View File
@@ -519,6 +519,27 @@ fn isolate_standard_test() {
},
]),
},
TestEnv {
env: json!({}),
cases: Vec::from([
TestCase {
expr: r#"some(['a', 'b'], startsWith('a', #))"#,
result: json!(true),
},
TestCase {
expr: r#"some(['a', 'b'], startsWith(#, 'a'))"#,
result: json!(true),
},
TestCase {
expr: r#"some(['a', 'b'], startsWith('c', #))"#,
result: json!(false),
},
TestCase {
expr: r#"some(['a', 'b'], startsWith(#, 'c'))"#,
result: json!(false),
},
]),
},
]);
let isolate = Isolate::default();