@@ -527,6 +527,12 @@ def test_snowflake(self):
527527 self .assertEqual (ast .args .get ("precision" ).name , "10" )
528528 self .assertEqual (ast .args .get ("scale" ).name , "1" )
529529
530+ ast = self .validate_identity ("TO_NUMBER('12.3456', 3, 0)" )
531+ self .assertIsInstance (ast , exp .ToNumber )
532+ self .assertIsNone (ast .args .get ("format" ))
533+ self .assertEqual (ast .args .get ("precision" ).name , "3" )
534+ self .assertEqual (ast .args .get ("scale" ).name , "0" )
535+
530536 self .validate_identity ("TO_DECFLOAT('123.456')" )
531537 self .validate_identity ("TO_DECFLOAT('1,234.56', '999,999.99')" )
532538 self .validate_identity ("TRY_TO_DECFLOAT('123.456')" )
@@ -599,6 +605,13 @@ def test_snowflake(self):
599605 self .assertEqual (ast .args .get ("scale" ).name , "1" )
600606 self .assertTrue (ast .args .get ("safe" ))
601607
608+ ast = self .validate_identity ("TRY_TO_NUMBER('12.3456', 3, 0)" )
609+ self .assertIsInstance (ast , exp .ToNumber )
610+ self .assertIsNone (ast .args .get ("format" ))
611+ self .assertEqual (ast .args .get ("precision" ).name , "3" )
612+ self .assertEqual (ast .args .get ("scale" ).name , "0" )
613+ self .assertTrue (ast .args .get ("safe" ))
614+
602615 self .validate_identity ("TO_NUMERIC('123.45')" , "TO_NUMBER('123.45')" )
603616 self .validate_identity ("TO_NUMERIC('123.45', '999.99')" , "TO_NUMBER('123.45', '999.99')" )
604617 self .validate_identity (
0 commit comments