diff --git a/src/dot.test.js b/src/dot.test.js
index 574fe3e..303bc9f 100644
--- a/src/dot.test.js
+++ b/src/dot.test.js
@@ -241,6 +241,12 @@ describe('dot.DotGraph.toString()', () => {
expect(screen.getByTestId('dot-src').textContent).toBe(dotSrc);
});
+ it('accepts "c" as a compass point on nodes', () => {
+ let dotSrc = 'digraph {a:p1:c}';
+ render();
+ expect(screen.getByTestId('dot-src').textContent).toBe(dotSrc);
+ });
+
it('renders nodes with names equal to properties of the Javascript Object', () => {
const nodeNames = getAllPropertyNames({});
const dotSrc = `digraph {${nodeNames.join(' ')}}`;
@@ -286,6 +292,12 @@ describe('dot.DotGraph.toString()', () => {
expect(screen.getByTestId('dot-src').textContent).toBe(dotSrc);
});
+ it('renders an edge directed at the center point of two nodes', () => {
+ let dotSrc = 'digraph {a:p1:c -> b:p2:c}';
+ render();
+ expect(screen.getByTestId('dot-src').textContent).toBe(dotSrc);
+ });
+
// nodes and edges
it('renders multiple nodes and edges', () => {
diff --git a/src/dotGrammar.pegjs b/src/dotGrammar.pegjs
index 0b7d7bd..e982532 100644
--- a/src/dotGrammar.pegjs
+++ b/src/dotGrammar.pegjs
@@ -151,7 +151,7 @@ subgraph
}
compass_pt
- = 'n'/'ne'/'e'/'se'/'s'/'sw'/'w'/'nw'
+ = 'n'/'ne'/'e'/'se'/'s'/'sw'/'w'/'nw'/'c'
ID
= STRING