Mercurial > vim
diff src/testdir/test_vim9_builtin.vim @ 28570:35e24d9de858 v8.2.4809
patch 8.2.4809: various things no6 properly tested
Commit: https://github.com/vim/vim/commit/885de449c0c0ef4a8541ed1f5377351844384516
Author: Yegappan Lakshmanan <yegappan@yahoo.com>
Date: Sat Apr 23 10:51:14 2022 +0100
patch 8.2.4809: various things no6 properly tested
Problem: Various things no6 properly tested.
Solution: Add various test cases. (Yegappan Lakshmanan, closes https://github.com/vim/vim/issues/10259)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 23 Apr 2022 12:00:06 +0200 |
parents | 373c70e3c542 |
children | 38f7a132bba3 |
line wrap: on
line diff
--- a/src/testdir/test_vim9_builtin.vim +++ b/src/testdir/test_vim9_builtin.vim @@ -1273,56 +1273,79 @@ def Test_float_funcs_args() # acos() v9.CheckDefAndScriptFailure(['acos("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('1.570796', string(acos(0.0))) # asin() v9.CheckDefAndScriptFailure(['asin("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('0.0', string(asin(0.0))) # atan() v9.CheckDefAndScriptFailure(['atan("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('0.0', string(atan(0.0))) # atan2() v9.CheckDefAndScriptFailure(['atan2("a", 1.1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('-2.356194', string(atan2(-1, -1))) v9.CheckDefAndScriptFailure(['atan2(1.2, "a")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 2']) v9.CheckDefAndScriptFailure(['atan2(1.2)'], ['E119:', 'E119:']) # ceil() v9.CheckDefAndScriptFailure(['ceil("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('2.0', string(ceil(2.0))) # cos() v9.CheckDefAndScriptFailure(['cos("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('1.0', string(cos(0.0))) # cosh() v9.CheckDefAndScriptFailure(['cosh("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('1.0', string(cosh(0.0))) # exp() v9.CheckDefAndScriptFailure(['exp("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('1.0', string(exp(0.0))) # float2nr() v9.CheckDefAndScriptFailure(['float2nr("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal(1, float2nr(1.234)) # floor() v9.CheckDefAndScriptFailure(['floor("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('2.0', string(floor(2.0))) # fmod() v9.CheckDefAndScriptFailure(['fmod(1.1, "a")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 2']) v9.CheckDefAndScriptFailure(['fmod("a", 1.1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) v9.CheckDefAndScriptFailure(['fmod(1.1)'], ['E119:', 'E119:']) + assert_equal('0.13', string(fmod(12.33, 1.22))) # isinf() v9.CheckDefAndScriptFailure(['isinf("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal(1, isinf(1.0 / 0.0)) # isnan() v9.CheckDefAndScriptFailure(['isnan("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_true(isnan(0.0 / 0.0)) # log() v9.CheckDefAndScriptFailure(['log("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('0.0', string(log(1.0))) # log10() v9.CheckDefAndScriptFailure(['log10("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('0.0', string(log10(1.0))) # pow() v9.CheckDefAndScriptFailure(['pow("a", 1.1)'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) v9.CheckDefAndScriptFailure(['pow(1.1, "a")'], ['E1013: Argument 2: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 2']) v9.CheckDefAndScriptFailure(['pow(1.1)'], ['E119:', 'E119:']) + assert_equal('1.0', string(pow(0.0, 0.0))) # round() v9.CheckDefAndScriptFailure(['round("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('2.0', string(round(2.1))) # sin() v9.CheckDefAndScriptFailure(['sin("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('0.0', string(sin(0.0))) # sinh() v9.CheckDefAndScriptFailure(['sinh("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('0.0', string(sinh(0.0))) # sqrt() v9.CheckDefAndScriptFailure(['sqrt("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('0.0', string(sqrt(0.0))) # tan() v9.CheckDefAndScriptFailure(['tan("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('0.0', string(tan(0.0))) # tanh() v9.CheckDefAndScriptFailure(['tanh("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('0.0', string(tanh(0.0))) # trunc() v9.CheckDefAndScriptFailure(['trunc("a")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1219: Float or Number required for argument 1']) + assert_equal('2.0', string(trunc(2.1))) enddef def Test_fnameescape()