Skip to content

Commit

Permalink
Remove unnecessary compatibility layer
Browse files Browse the repository at this point in the history
  • Loading branch information
huchenlei committed Aug 9, 2024
1 parent c5b0327 commit 6a17e14
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 32 deletions.
12 changes: 2 additions & 10 deletions src/litegraph.js
Original file line number Diff line number Diff line change
Expand Up @@ -2226,14 +2226,7 @@ const globalExport = {};
//TODO
}
}
// Backward Compatibility for extending the functionality via prototype.
function LegacyLGraph(...args) {
return new LGraph(...args);
}
LegacyLGraph.prototype = LGraph.prototype;

globalThis.LGraph = LGraph;
globalThis.LegacyLGraph = LiteGraph.LGraph = LegacyLGraph;
globalThis.LGraph = LiteGraph.LGraph = LGraph;

//this is the class in charge of storing link information
function LLink(id, type, origin_id, origin_slot, target_id, target_slot) {
Expand Down Expand Up @@ -14455,8 +14448,7 @@ LGraphNode.prototype.executeAction = function(action)
})(globalExport)

export const LiteGraph = globalExport.LiteGraph;
export const LGraphES6 = globalExport.LGraph;
export const LGraph = globalExport.LegacyLGraph;
export const LGraph = globalExport.LGraph;
export const LLink = globalExport.LLink;
export const LGraphNode = globalExport.LGraphNode;
export const LGraphGroup = globalExport.LGraphGroup;
Expand Down
29 changes: 7 additions & 22 deletions test/LGraph.test.ts
Original file line number Diff line number Diff line change
@@ -1,39 +1,24 @@
import {
LGraphES6 as LGraph,
LGraph as LegacyLGraph,
LGraph,
LiteGraph,
} from "../dist/litegraph.es.js";

describe("LegacyLGraph Compatibility Layer", () => {
test("LegacyLGraph can be instantiated", () => {
const graph = new LegacyLGraph({extra: "TestGraph"});
test("LGraph can be instantiated", () => {
const graph = new LGraph({extra: "TestGraph"});
expect(graph).toBeInstanceOf(LGraph);
expect(graph).toBeInstanceOf(LegacyLGraph);
expect(graph.extra).toBe("TestGraph");
});

test("LegacyLGraph can be extended via prototype", () => {
LegacyLGraph.prototype.newMethod = function () {
test("LGraph can be extended via prototype", () => {
const graph = new LGraph();
LGraph.prototype.newMethod = function () {
return "New method added via prototype";
};

const graph = new LegacyLGraph();
expect(graph.newMethod()).toBe("New method added via prototype");
});

test("Extensions to LegacyLGraph affect LGraph instances", () => {
LegacyLGraph.prototype.anotherMethod = function () {
return "Another method";
};

const legacyGraph = new LegacyLGraph();
const normalGraph = new LGraph();

expect(legacyGraph.anotherMethod()).toBe("Another method");
expect(normalGraph.anotherMethod()).toBe("Another method");
});

test("LegacyLGraph is correctly assigned to LiteGraph", () => {
expect(LiteGraph.LGraph).toBe(LegacyLGraph);
expect(LiteGraph.LGraph).toBe(LGraph);
});
});

0 comments on commit 6a17e14

Please sign in to comment.