refactor: build system

This commit is contained in:
2023-03-22 11:45:30 +01:00
parent 4df19e8c20
commit 8cb9285462
427 changed files with 3978 additions and 9810 deletions

View File

@@ -12,34 +12,34 @@
* You should have received a copy of the GNU General Public License along with
* this program. If not, see <https://www.gnu.org/licenses/>.
*/
import { expect } from "chai";
import { Tree, treeGroupBy } from "../src/tree-group.js";
import {expect} from 'chai';
import {Tree, treeGroupBy} from '../src/tree-group.js';
interface TestItem {
id: number;
path?: string[];
}
describe("tree-group", function () {
it("should create a tree", function () {
describe('tree-group', function () {
it('should create a tree', function () {
const items: Array<TestItem> = [
{
id: 1,
path: ["a", "b", "c"],
path: ['a', 'b', 'c'],
},
{
id: 2,
path: ["a", "b", "d"],
path: ['a', 'b', 'd'],
},
];
const tree = treeGroupBy(items, (item) => item.path ?? []);
const tree = treeGroupBy(items, item => item.path ?? []);
const expectedTree: Tree<TestItem> = {
a: {
b: {
c: { _: [items[0]] },
d: { _: [items[1]] },
c: {_: [items[0]]},
d: {_: [items[1]]},
} as Tree<TestItem>,
} as Tree<TestItem>,
} as Tree<TestItem>;
@@ -47,23 +47,23 @@ describe("tree-group", function () {
expect(tree).to.deep.equal(expectedTree);
});
it("should also sort empty paths", () => {
it('should also sort empty paths', () => {
const items: Array<TestItem> = [
{
id: 1,
path: ["a", "b", "c"],
path: ['a', 'b', 'c'],
},
{
id: 2,
},
];
const tree = treeGroupBy(items, (item) => item.path ?? []);
const tree = treeGroupBy(items, item => item.path ?? []);
const expectedTree: Tree<TestItem> = {
a: {
b: {
c: { _: [items[0]] },
c: {_: [items[0]]},
} as Tree<TestItem>,
} as Tree<TestItem>,
_: [items[1]],