Son CV dans un terminal web en Javascript! https://terminal-cv.gregandev.fr
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
terminal-cv/node_modules/@parcel/graph/test/ContentGraph.test.js

43 lines
1.2 KiB

// @flow strict-local
import assert from 'assert';
import ContentGraph from '../src/ContentGraph';
describe('ContentGraph', () => {
it('should addNodeByContentKey if no node exists with the content key', () => {
let graph = new ContentGraph();
const node = {};
const nodeId1 = graph.addNodeByContentKey('contentKey', node);
assert.deepEqual(graph.getNode(nodeId1), node);
assert(graph.hasContentKey('contentKey'));
assert.deepEqual(graph.getNodeByContentKey('contentKey'), node);
});
it('should throw if a node with the content key already exists', () => {
let graph = new ContentGraph();
graph.addNodeByContentKey('contentKey', {});
assert.throws(() => {
graph.addNodeByContentKey('contentKey', {});
}, /already has content key/);
});
it('should remove the content key from graph when node is removed', () => {
let graph = new ContentGraph();
const node1 = {};
const nodeId1 = graph.addNodeByContentKey('contentKey', node1);
assert.equal(graph.getNode(nodeId1), node1);
assert(graph.hasContentKey('contentKey'));
graph.removeNode(nodeId1);
assert(!graph.hasContentKey('contentKey'));
});
});