Software /
code /
prosody
Annotate
spec/util_table_spec.lua @ 13525:0f7e7311eebf
util.xtemplate: Use same argument order in filters even without 'args'
This removes the different argument order used between '{x|foo}' and
'{x|foo(y)}' because the differing order was awkward and confusing.
This util does not seem to be widely used so should not be problematic
to change this part. The only known use is in mod_pubsub, which does not
use the filter function feature.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Wed, 16 Oct 2024 16:15:05 +0200 |
parent | 12942:54756e3a54b9 |
rev | line source |
---|---|
9726 | 1 local u_table = require "util.table"; |
2 describe("util.table", function () | |
9727
9a35ae935390
util.table: Add test for create()
Kim Alvefur <zash@zash.se>
parents:
9726
diff
changeset
|
3 describe("create()", function () |
9a35ae935390
util.table: Add test for create()
Kim Alvefur <zash@zash.se>
parents:
9726
diff
changeset
|
4 it("works", function () |
9a35ae935390
util.table: Add test for create()
Kim Alvefur <zash@zash.se>
parents:
9726
diff
changeset
|
5 -- Can't test the allocated sizes of the table, so what you gonna do? |
9a35ae935390
util.table: Add test for create()
Kim Alvefur <zash@zash.se>
parents:
9726
diff
changeset
|
6 assert.is.table(u_table.create(1,1)); |
9a35ae935390
util.table: Add test for create()
Kim Alvefur <zash@zash.se>
parents:
9726
diff
changeset
|
7 end); |
9a35ae935390
util.table: Add test for create()
Kim Alvefur <zash@zash.se>
parents:
9726
diff
changeset
|
8 end); |
9a35ae935390
util.table: Add test for create()
Kim Alvefur <zash@zash.se>
parents:
9726
diff
changeset
|
9 |
9726 | 10 describe("pack()", function () |
11 it("works", function () | |
12 assert.same({ "lorem", "ipsum", "dolor", "sit", "amet", n = 5 }, u_table.pack("lorem", "ipsum", "dolor", "sit", "amet")); | |
13 end); | |
14 end); | |
12404
082f38e9de64
util.table: tests: Tests for table.move()
Matthew Wild <mwild1@gmail.com>
parents:
9727
diff
changeset
|
15 |
082f38e9de64
util.table: tests: Tests for table.move()
Matthew Wild <mwild1@gmail.com>
parents:
9727
diff
changeset
|
16 describe("move()", function () |
082f38e9de64
util.table: tests: Tests for table.move()
Matthew Wild <mwild1@gmail.com>
parents:
9727
diff
changeset
|
17 it("works", function () |
082f38e9de64
util.table: tests: Tests for table.move()
Matthew Wild <mwild1@gmail.com>
parents:
9727
diff
changeset
|
18 local t1 = { "apple", "banana", "carrot" }; |
082f38e9de64
util.table: tests: Tests for table.move()
Matthew Wild <mwild1@gmail.com>
parents:
9727
diff
changeset
|
19 local t2 = { "cat", "donkey", "elephant" }; |
082f38e9de64
util.table: tests: Tests for table.move()
Matthew Wild <mwild1@gmail.com>
parents:
9727
diff
changeset
|
20 local t3 = {}; |
082f38e9de64
util.table: tests: Tests for table.move()
Matthew Wild <mwild1@gmail.com>
parents:
9727
diff
changeset
|
21 u_table.move(t1, 1, 3, 1, t3); |
082f38e9de64
util.table: tests: Tests for table.move()
Matthew Wild <mwild1@gmail.com>
parents:
9727
diff
changeset
|
22 u_table.move(t2, 1, 3, 3, t3); |
082f38e9de64
util.table: tests: Tests for table.move()
Matthew Wild <mwild1@gmail.com>
parents:
9727
diff
changeset
|
23 assert.same({ "apple", "banana", "cat", "donkey", "elephant" }, t3); |
082f38e9de64
util.table: tests: Tests for table.move()
Matthew Wild <mwild1@gmail.com>
parents:
9727
diff
changeset
|
24 end); |
12942
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
25 it("supports overlapping regions", function () |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
26 do |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
27 local t1 = { "apple", "banana", "carrot", "date", "endive", "fig", "grapefruit" }; |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
28 u_table.move(t1, 1, 3, 3); |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
29 assert.same({ "apple", "banana", "apple", "banana", "carrot", "fig", "grapefruit" }, t1); |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
30 end |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
31 |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
32 do |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
33 local t1 = { "apple", "banana", "carrot", "date", "endive", "fig", "grapefruit" }; |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
34 u_table.move(t1, 1, 3, 2); |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
35 assert.same({ "apple", "apple", "banana", "carrot", "endive", "fig", "grapefruit" }, t1); |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
36 end |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
37 |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
38 do |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
39 local t1 = { "apple", "banana", "carrot", "date", "endive", "fig", "grapefruit" }; |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
40 u_table.move(t1, 3, 5, 2); |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
41 assert.same({ "apple", "carrot", "date", "endive", "endive", "fig", "grapefruit" }, t1); |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
42 end |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
43 |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
44 do |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
45 local t1 = { "apple", "banana", "carrot", "date", "endive", "fig", "grapefruit" }; |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
46 u_table.move(t1, 3, 5, 6); |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
47 assert.same({ "apple", "banana", "carrot", "date", "endive", "carrot", "date", "endive" }, t1); |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
48 end |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
49 |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
50 do |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
51 local t1 = { "apple", "banana", "carrot", "date", "endive", "fig", "grapefruit" }; |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
52 u_table.move(t1, 3, 1, 3); |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
53 assert.same({ "apple", "banana", "carrot", "date", "endive", "fig", "grapefruit" }, t1); |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
54 end |
54756e3a54b9
util.table: Expand table.move() tests (thanks mutation testing)
Matthew Wild <mwild1@gmail.com>
parents:
12404
diff
changeset
|
55 end); |
12404
082f38e9de64
util.table: tests: Tests for table.move()
Matthew Wild <mwild1@gmail.com>
parents:
9727
diff
changeset
|
56 end); |
9726 | 57 end); |
58 | |
59 |