Annotate

spec/util_table_spec.lua @ 13019:8a2f75e38eb2

util.fsm: New utility lib for finite state machines
author Matthew Wild <mwild1@gmail.com>
date Thu, 17 Mar 2022 17:45:27 +0000
parent 12942:54756e3a54b9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9726
a726668b3c48 util.table: Add test for pack()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 local u_table = require "util.table";
a726668b3c48 util.table: Add test for pack()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
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
a726668b3c48 util.table: Add test for pack()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 describe("pack()", function ()
a726668b3c48 util.table: Add test for pack()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11 it("works", function ()
a726668b3c48 util.table: Add test for pack()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 assert.same({ "lorem", "ipsum", "dolor", "sit", "amet", n = 5 }, u_table.pack("lorem", "ipsum", "dolor", "sit", "amet"));
a726668b3c48 util.table: Add test for pack()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13 end);
a726668b3c48 util.table: Add test for pack()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
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
a726668b3c48 util.table: Add test for pack()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
57 end);
a726668b3c48 util.table: Add test for pack()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
58
a726668b3c48 util.table: Add test for pack()
Kim Alvefur <zash@zash.se>
parents:
diff changeset
59