aboutsummaryrefslogtreecommitdiff
path: root/test/functional/legacy/function_sort_spec.lua
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2016-04-25 03:56:33 -0400
committerJustin M. Keyes <justinkz@gmail.com>2016-04-25 03:56:33 -0400
commit588bc1d9586bc65b63519bc9d292fa4ab59b2dba (patch)
treee1cb76952f7dc0008ba9f2fc11d13da80d9a94e2 /test/functional/legacy/function_sort_spec.lua
parent121e76db6f2dd2a088ba0fabd17fd80425347d50 (diff)
parent1addc45e78155a73f52a00762cb77abbd3f8d993 (diff)
downloadrneovim-588bc1d9586bc65b63519bc9d292fa4ab59b2dba.tar.gz
rneovim-588bc1d9586bc65b63519bc9d292fa4ab59b2dba.tar.bz2
rneovim-588bc1d9586bc65b63519bc9d292fa4ab59b2dba.zip
Merge #4303 'vim-patch:7.4.{951,1143,1144}'.
Diffstat (limited to 'test/functional/legacy/function_sort_spec.lua')
-rw-r--r--test/functional/legacy/function_sort_spec.lua29
1 files changed, 29 insertions, 0 deletions
diff --git a/test/functional/legacy/function_sort_spec.lua b/test/functional/legacy/function_sort_spec.lua
new file mode 100644
index 0000000000..9083911021
--- /dev/null
+++ b/test/functional/legacy/function_sort_spec.lua
@@ -0,0 +1,29 @@
+local helpers = require('test.functional.helpers')
+local clear = helpers.clear
+local eq = helpers.eq
+local eval = helpers.eval
+
+describe('sort', function()
+ before_each(clear)
+
+ it('numbers compared as strings', function()
+ eq({1, 2, 3}, eval('sort([3, 2, 1])'))
+ eq({13, 28, 3}, eval('sort([3, 28, 13])'))
+ end)
+
+ it('numbers compared as numeric', function()
+ eq({1, 2, 3}, eval("sort([3, 2, 1], 'n')"))
+ eq({3, 13, 28}, eval("sort([3, 28, 13], 'n')"))
+ -- Strings are not sorted.
+ eq({'13', '28', '3'}, eval("sort(['13', '28', '3'], 'n')"))
+ end)
+
+ it('numbers compared as numbers', function()
+ eq({3, 13, 28}, eval("sort([13, 28, 3], 'N')"))
+ eq({'3', '13', '28'}, eval("sort(['13', '28', '3'], 'N')"))
+ end)
+
+ it('numbers compared as float', function()
+ eq({0.28, 3, 13.5}, eval("sort([13.5, 0.28, 3], 'f')"))
+ end)
+end)