diff options
Diffstat (limited to 'src/nvim/testdir/test65.in')
-rw-r--r-- | src/nvim/testdir/test65.in | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/src/nvim/testdir/test65.in b/src/nvim/testdir/test65.in new file mode 100644 index 0000000000..ca53f27555 --- /dev/null +++ b/src/nvim/testdir/test65.in @@ -0,0 +1,95 @@ +Test for floating point and logical operators. + +STARTTEST +:so small.vim +:if !has("float") +: e! test.ok +: wq! test.out +:endif +:" +:$put =printf('%f', 123.456) +:$put =printf('%e', 123.456) +:$put =printf('%g', 123.456) +:" check we don't crash on division by zero +:echo 1.0 / 0.0 +:$put ='+=' +:let v = 1.234 +:let v += 6.543 +:$put =printf('%g', v) +:let v = 1.234 +:let v += 5 +:$put =printf('%g', v) +:let a = 5 +:let a += 3.333 +:$put =string(a) +:$put ='==' +:let v = 1.234 +:$put =v == 1.234 +:$put =v == 1.2341 +:$put ='add-subtract' +:$put =printf('%g', 4 + 1.234) +:$put =printf('%g', 1.234 - 8) +:$put ='mult-div' +:$put =printf('%g', 4 * 1.234) +:$put =printf('%g', 4.0 / 1234) +:$put ='dict' +:$put =string({'x': 1.234, 'y': -2.0e20}) +:$put ='list' +:$put =string([-123.4, 2.0e-20]) +:$put ='abs' +:$put =printf('%d', abs(1456)) +:$put =printf('%d', abs(-4)) +:$put =printf('%d', abs([1, 2, 3])) +:$put =printf('%g', abs(14.56)) +:$put =printf('%g', abs(-54.32)) +:$put ='ceil' +:$put =printf('%g', ceil(1.456)) +:$put =printf('%g', ceil(-5.456)) +:$put =printf('%g', ceil(-4.000)) +:$put ='floor' +:$put =printf('%g', floor(1.856)) +:$put =printf('%g', floor(-5.456)) +:$put =printf('%g', floor(4.0)) +:$put ='log10' +:$put =printf('%g', log10(1000)) +:$put =printf('%g', log10(0.01000)) +:$put ='pow' +:$put =printf('%g', pow(3, 3.0)) +:$put =printf('%g', pow(2, 16)) +:$put ='round' +:$put =printf('%g', round(0.456)) +:$put =printf('%g', round(4.5)) +:$put =printf('%g', round(-4.50)) +:$put ='sqrt' +:$put =printf('%g', sqrt(100)) +:echo sqrt(-4.01) +:$put ='str2float' +:$put =printf('%g', str2float('1e40')) +:$put ='trunc' +:$put =printf('%g', trunc(1.456)) +:$put =printf('%g', trunc(-5.456)) +:$put =printf('%g', trunc(4.000)) +:$put ='float2nr' +:$put =float2nr(123.456) +:$put =float2nr(-123.456) +:$put ='AND' +:$put =and(127, 127) +:$put =and(127, 16) +:$put =and(127, 128) +:$put ='OR' +:$put =or(16, 7) +:$put =or(8, 7) +:$put =or(0, 123) +:$put ='XOR' +:$put =xor(127, 127) +:$put =xor(127, 16) +:$put =xor(127, 128) +:$put ='invert' +:$put =and(invert(127), 65535) +:$put =and(invert(16), 65535) +:$put =and(invert(128), 65535) +:$put =invert(1.0) +:/^Results/,$wq! test.out +ENDTEST + +Results of test65: |