--------------------------------------------------------------------------- -- @author Uli Schlachter -- @copyright 2014 Uli Schlachter --------------------------------------------------------------------------- local sort = require("gears.sort") describe("gears.sort", function() local function test(expected, input) sort.sort(input) assert.are.same(expected, input) end it("with empty input", function() test({}, {}) end) it("with sorted input", function() test({1, 2, 3, 4, 5, 6}, {1, 2, 3, 4, 5, 6}) end) it("with reversed input", function() test({1, 2, 3, 4, 5, 6}, {6, 5, 4, 3, 2, 1}) end) it("with repeating items", function() test({1, 2, 2, 3, 4, 4, 5}, {1, 2, 2, 3, 4, 4, 5}) end) it("with repeating items and reversed input", function() test({1, 2, 2, 3, 4, 4, 5}, {5, 4, 4, 3, 2, 2, 1}) end) it("with non-integer keys", function() test({2, 3, 4, Awesome = 42}, {3, 4, 2, Awesome = 42}) end) end) -- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80