mermaid
Version:
Markdownish syntax for generating flowcharts
29 lines • 5.81 kB
JSON
[
{
"tags": [],
"description": {
"full": "Created by knut on 14-11-26.",
"summary": "Created by knut on 14-11-26.",
"body": ""
},
"isPrivate": false,
"ignore": false
},
{
"tags": [],
"description": {
"full": "Created by knut on 14-11-23.",
"summary": "Created by knut on 14-11-23.",
"body": ""
},
"isPrivate": false,
"ignore": false,
"code": "var rewire = require(\"rewire\");\nvar utils = require(\"./utils\");\n\ndescribe('when using main and ',function() {\n describe('when detecting chart type ',function() {\n var main;\n beforeEach(function () {\n var MockBrowser = require('mock-browser').mocks.MockBrowser;\n var mock = new MockBrowser();\n\n // and in the run-code inside some object\n document = mock.getDocument();\n\n\n });\n xit('should have a version', function () {\n div = document.createElement('div');\n mermaid_config ={startOnLoad : false};\n main = rewire('./main');\n expect(main.version()).toBe('0.2.10');\n });\n it('should not call start anything with an empty document', function () {\n\n mermaid_config ={startOnLoad : false};\n main = rewire('./main');\n\n spyOn(utils,'detectType');\n expect(utils.detectType).not.toHaveBeenCalled();\n });\n it('should start something with a mermaid document', function () {\n mermaid_config ={startOnLoad : false};\n main = rewire('./main');\n console.log('here');\n document.body.innerHTML = '<div class=\"mermaid\">graph TD;\\na;</div>';\n spyOn(utils,'detectType');\n mermaid.init();\n expect(utils.detectType).toHaveBeenCalled();\n });\n\n });\n\n describe('when calling addEdges ',function() {\n var main;\n var graph = require('./graphDb');\n var flow = require('./parser/flow');\n\n beforeEach(function () {\n mermaid_config ={startOnLoad : false};\n var MockBrowser = require('mock-browser').mocks.MockBrowser;\n var mock = new MockBrowser();\n flow.parser.yy =graph;\n graph.clear();\n document = mock.getDocument();\n main = rewire('./main');\n });\n it('it should handle edges with text', function () {\n var res = flow.parser.parse('graph TD;A-->|text ex|B;');\n var vert = flow.parser.yy.getVertices();\n var edges = flow.parser.yy.getEdges();\n\n var mockG = {\n setEdge:function(start, end,options,name){\n expect(start).toBe('A');\n expect(end).toBe('B');\n expect(options.arrowhead).toBe('normal');\n expect(options.label.match('text ex')).toBeTruthy();\n }\n };\n\n main.addEdges(edges,mockG);\n });\n\n it('should handle edges without text', function () {\n var res = flow.parser.parse('graph TD;A-->B;');\n var vert = flow.parser.yy.getVertices();\n var edges = flow.parser.yy.getEdges();\n\n var mockG = {\n setEdge:function(start, end,options,name){\n expect(start).toBe('A');\n expect(end).toBe('B');\n expect(options.arrowhead).toBe('normal');\n }\n };\n\n main.addEdges(edges,mockG);\n });\n\n\n it('should handle open-ended edges', function () {\n var res = flow.parser.parse('graph TD;A---B;');\n var vert = flow.parser.yy.getVertices();\n var edges = flow.parser.yy.getEdges();\n\n var mockG = {\n setEdge:function(start, end,options,name){\n expect(start).toBe('A');\n expect(end).toBe('B');\n expect(options.arrowhead).toBe('none');\n }\n };\n\n main.addEdges(edges,mockG);\n });\n\n it('should handle edges with styles defined', function () {\n var res = flow.parser.parse('graph TD;A---B; linkStyle 0 stroke:val1,stroke-width:val2;');\n var vert = flow.parser.yy.getVertices();\n var edges = flow.parser.yy.getEdges();\n\n var mockG = {\n setEdge:function(start, end,options,name){\n expect(start).toBe('A');\n expect(end).toBe('B');\n expect(options.arrowhead).toBe('none');\n expect(options.style).toBe('stroke:val1;stroke-width:val2;');\n }\n };\n\n main.addEdges(edges,mockG);\n });\n it('should handle edges with text and styles defined', function () {\n var res = flow.parser.parse('graph TD;A---|the text|B; linkStyle 0 stroke:val1,stroke-width:val2;');\n var vert = flow.parser.yy.getVertices();\n var edges = flow.parser.yy.getEdges();\n\n var mockG = {\n setEdge:function(start, end,options,name){\n expect(start).toBe('A');\n expect(end).toBe('B');\n expect(options.arrowhead).toBe('none');\n expect(options.label.match('the text')).toBeTruthy();\n expect(options.style).toBe('stroke:val1;stroke-width:val2;');\n }\n };\n\n main.addEdges(edges,mockG);\n });\n });\n});",
"ctx": {
"type": "declaration",
"name": "rewire",
"value": "require(\"rewire\")",
"string": "rewire"
}
}
]