@@ -524,6 +524,12 @@ def test_snowflake(self):
524524 self .assertEqual (ast .args .get ("precision" ).name , "10" )
525525 self .assertEqual (ast .args .get ("scale" ).name , "1" )
526526
527+ ast = self .validate_identity ("TO_NUMBER('12.3456', 3, 0)" )
528+ self .assertIsInstance (ast , exp .ToNumber )
529+ self .assertIsNone (ast .args .get ("format" ))
530+ self .assertEqual (ast .args .get ("precision" ).name , "3" )
531+ self .assertEqual (ast .args .get ("scale" ).name , "0" )
532+
527533 self .validate_identity ("TO_DECFLOAT('123.456')" )
528534 self .validate_identity ("TO_DECFLOAT('1,234.56', '999,999.99')" )
529535 self .validate_identity ("TRY_TO_DECFLOAT('123.456')" )
@@ -596,6 +602,13 @@ def test_snowflake(self):
596602 self .assertEqual (ast .args .get ("scale" ).name , "1" )
597603 self .assertTrue (ast .args .get ("safe" ))
598604
605+ ast = self .validate_identity ("TRY_TO_NUMBER('12.3456', 3, 0)" )
606+ self .assertIsInstance (ast , exp .ToNumber )
607+ self .assertIsNone (ast .args .get ("format" ))
608+ self .assertEqual (ast .args .get ("precision" ).name , "3" )
609+ self .assertEqual (ast .args .get ("scale" ).name , "0" )
610+ self .assertTrue (ast .args .get ("safe" ))
611+
599612 self .validate_identity ("TO_NUMERIC('123.45')" , "TO_NUMBER('123.45')" )
600613 self .validate_identity ("TO_NUMERIC('123.45', '999.99')" , "TO_NUMBER('123.45', '999.99')" )
601614 self .validate_identity (
0 commit comments