Skip to main content

TestHarness

Provides a set of methods you can use in your unit/component tests to simulate a user interacting with a UI rendered by VisuallyJs.

Methods

addGroup()

addGroup(data): Group

Add a Group to the model. A convenience wrapper around the same method on the underlying model.

Parameters

data

ObjectData

Data for the Group.

Returns

Group


addNode()

addNode(data): Node

Add a Node to the model. A convenience wrapper around the same method on the underlying model.

Parameters

data

ObjectData

Data for the Node.

Returns

Node


clear()

clear(): VisuallyJsModel

Shortcut to the underlying clear method of the model.

Returns

VisuallyJsModel


clickOnCanvas()

clickOnCanvas(clickCount, button): void

Simulates a click on the canvas

Parameters

clickCount

number = 1

How any clicks to simulate. Defaults to 1.

button

number = 1

Which button to simulate. Defaults to 1 - the left button. 2 is right button.

Returns

void


clickOnCanvasAt()

clickOnCanvasAt(x, y, button): void

Simulates a click on the canvas at the given x,y

Parameters

x

number

X location to click at

y

number

Y location to click at

button

number = 1

Which button to simulate. Defaults to 1 - the left button. 2 is right button.

Returns

void


clickOnEdge()

clickOnEdge(edgeId): void

Clicks on the given edge

Parameters

edgeId

string

ID of the edge to click on

Returns

void


clickOnElement()

clickOnElement(el): void

Clicks on a DOM element

Parameters

el

BrowserElement

Returns

void


clickOnElementInsideVertex()

clickOnElementInsideVertex(nodeOrGroupId, selector): void

Clicks on an element inside the node/group with the given ID.

Parameters

nodeOrGroupId

string

ID of the node/group to click on.

selector

string

CSS selector identifying the child element to click on.

Returns

void


clickOnGroup()

clickOnGroup(groupId): void

Clicks on the group with the given ID.

Parameters

groupId

string

ID of the group to click on.

Returns

void


clickOnNode()

clickOnNode(nodeId): void

Clicks on the node with the given ID.

Parameters

nodeId

string

ID of the group to click on.

Returns

void


clickOnOverlay()

clickOnOverlay(edgeId, overlayId): void

Clicks on the overlay with the given ID, on the given Edge.

Parameters

edgeId

string

ID of the Edge

overlayId

string

ID of the overlay to click on.

Returns

void


clickOnPort()

clickOnPort(nodeId, portId): void

Clicks on the port with the given ID on the node with given node id.

Parameters

nodeId

string

ID of the node containing the port

portId

string

ID of the port to click on.

Returns

void


clickOnVertex()

clickOnVertex(nodeOrGroupId): void

Clicks on the node/group with the given ID.

Parameters

nodeOrGroupId

string

ID of the node/group to click on.

Returns

void


connect()

connect(source, target, data?, reason?): Edge

Connect the given source and target via a call on the model, ie. without using the mouse. If you want to simulate mouse activity being used to establish an edge, use dragConnection.

Parameters

source

Node/Port/Group id, node/port/group, or DOM element.

string | Node | Group | Port | BrowserElement

target

Node/Port/Group id, node/port/group, or DOM element.

string | Node | Group | Port | BrowserElement

data?

ObjectData

Optional data for the edge.

reason?

ConnectReason

Returns

Edge

an Edge.


contextmenuOnEdge()

contextmenuOnEdge(edgeId): void

Trigger a right click event on the edge with the given id.

Parameters

edgeId

string

Returns

void


contextmenuOnVertex()

contextmenuOnVertex(nodeOrGroupId, locationOnTarget?): void

Simulates a right-click event on the node/group with the given id

Parameters

nodeOrGroupId

string

ID of the node/group to simulate right-click on.

locationOnTarget?

PointXY

Returns

void


dblClickOnEdge()

dblClickOnEdge(edgeId): void

Double clicks on the given edge

Parameters

edgeId

string

ID of the edge

Returns

void


dblClickOnElementInsideVertex()

dblClickOnElementInsideVertex(nodeOrGroupId, selector): void

Double clicks on an element inside the node/group with the given ID.

Parameters

nodeOrGroupId

string

ID of the node/group to double click on.

selector

string

CSS selector identifying the child element to click on.

Returns

void


dblClickOnVertex()

dblClickOnVertex(nodeOrGroupId): void

Double clicks on the node/group with the given ID.

Parameters

nodeOrGroupId

string

ID of the node/group to click on.

Returns

void


dblTapOnEdge()

dblTapOnEdge(edgeOrEdgeId): void

Double taps on the given edge

Parameters

edgeOrEdgeId

string | Edge

Returns

void


dblTapOnElementInsideVertex()

dblTapOnElementInsideVertex(nodeOrGroupId, selector): void

Double taps on an element inside the node/group with the given ID.

Parameters

nodeOrGroupId

string

ID of the node to tap on.

selector

string

CSS selector identifying the child element to click on.

Returns

void


dblTapOnGroup()

dblTapOnGroup(groupId): void

Simulates a double tap event on the group with the given id - a tap event is a mousedown followed by a mouseup whose page coordinates are identical to the mousedown event's page coordinates.

Parameters

groupId

string

ID of the node/group to double tap on.

Returns

void


dblTapOnNode()

dblTapOnNode(nodeId): void

Simulates a double tap event on the node with the given id - a tap event is a mousedown followed by a mouseup whose page coordinates are identical to the mousedown event's page coordinates.

Parameters

nodeId

string

ID of the node/group to double tap on.

Returns

void


dblTapOnVertex()

dblTapOnVertex(nodeOrGroupId): void

Simulates a double tap event on the node/group with the given id - a tap event is a mousedown followed by a mouseup whose page coordinates are identical to the mousedown event's page coordinates.

Parameters

nodeOrGroupId

string

ID of the node/group to double tap on.

Returns

void


destroy()

destroy(): void

Destroy the underlying Surface and remove the test harness container from the DOM.

Returns

void


detachEdge()

detachEdge(edge, pointToDropAt?): PointXY

Use the mouse to drag the source of the given edge and drop it on distant whitespace, causing the edge to be detached.

Parameters

edge

Edge

pointToDropAt?

PointXY

Returns

PointXY


detachEdgeByTarget()

detachEdgeByTarget(edge, pointToDropAt?): PointXY

Use the mouse to drag the target of the given edge and drop it on distant whitespace, causing the edge to be detached.

Parameters

edge

Edge

pointToDropAt?

PointXY

Returns

PointXY


dragAndAbortConnection()

dragAndAbortConnection(source): void

Drags a connection from the given source and then aborts the drag by releasing the pointer button at a distant location.

Parameters

source

string | BrowserElement

Returns

void


dragAnElementAround()

dragAnElementAround(el): void

Randomly drag a DOM element around.

Parameters

el

BrowserElement

Some DOM element. Doesn't need to be an element that represents a vertex in your model.

Returns

void

void


dragANodeAround()

dragANodeAround(obj, callbacks?): void

Randomly drag a node/group around. Can be useful to ensure the model is being updated, or you're getting callbacks you expect, etc. We use this internally when we just want a node to move and we don't care where it moves to.

Parameters

obj

Either a Node/Group, or the ID of a Node/Group, or the DOM element representing some Node/Group

string | Element | Node | Group

callbacks?

ConnectionDragEventHandlers

Optional set of event handlers to invoke during the drag.

Returns

void

void


dragConnection()

dragConnection(source, target, callbacks?, locationOnTarget?, mouseUpContinuer?): Connection<BrowserElement>

Drags a connection between two vertices. You can pass in a variety of arguments to this method for both source and target: a DOM element, a node/group/port ID, or a combination of vertex id + css selector. We use this last variant in VisuallyJs's own test suite to ensure that connections can be dragged from specific parts of some element, or that a connection source on an element does not cause the element to be dragged, etc.

Parameters

source

Either a DOM element, the ID of some node/group, or a node/group ID and an associated CSS3 selector identifying a part of the vertex's element that should be the source of the drag.

string | [string, string] | BrowserElement

target

Either a DOM element, the ID of some node/group, or a node/group ID and an associated CSS3 selector identifying a part of the vertex's element that should be the target of the drag.

string | [string, string] | BrowserElement

callbacks?

ConnectionDragEventHandlers

Optional callbacks to invoke during the connection drag

locationOnTarget?

PointXY

Optional spec for exactly where on the target element to drop the connection. Values in this object are expressed as ratios of the width/height of the element. We use this in VisuallyJs when we're testing scenarios in which a given vertex has multiple anchor locations assigned to it.

mouseUpContinuer?

Function

Returns

Connection<BrowserElement>

a Connection. You can access the underlying edge via the .edge property of the connection.


dragElementBy()

dragElementBy(el, x, y, eventHandlers?, metaKeys?): void

Drag the given DOM element by the given x/y amounts. This is PAGE coordinates.

Parameters

el

BrowserElement

DOM element to drag.

x

number

Amount to move in X axis

y

number

Amount to move in Y axis

eventHandlers?

DragEventHandlers

Optional callbacks to invoke at various points in the drag lifecycle.

metaKeys?

Record<string, boolean>

Optional map of meta keys to set on the events used to model the drag.

Returns

void


dragElementByInStages()

dragElementByInStages(el, x, y, stages?, eventHandlers?, metaKeys?): void

Drag a DOM element over a number of stages, advancing a little each time. This is PAGE coordinates.

Parameters

el

BrowserElement

DOM element to drag.

x

number

Amount to move in X axis

y

number

Amount to move in Y axis

stages?

number

How many stages to break the drag up into.

eventHandlers?

DragEventHandlers

Optional callbacks to invoke at various points in the drag lifecycle. If you provide an afterMove callback, it will be invoked after each step of the drag.

metaKeys?

Record<string, boolean>

Optional map of meta keys to set on the events used to model the drag.

Returns

void


dragElementToCanvas()

dragElementToCanvas(el, x, y): void

Drag the given element onto the canvas, optionally at a specific x,y. Use this when you want to test drag/drop from some palette.

Parameters

el

BrowserElement

Element to drop onto the canvas.

x

number

Optional, defaults to 250.

y

number

Optional, defaults to 250.

Returns

void


dragSnapConnection()

dragSnapConnection(source, target, xMargin, yMargin, callbacks?): Connection<BrowserElement>

Drag a connection in a way that activates the snap to target functionality, ie. it fires mouse events close to the target but not over it.

Parameters

source

string | [string, string] | BrowserElement

target

string | [string, string] | BrowserElement

xMargin

number

yMargin

number

callbacks?

ConnectionDragEventHandlers

Returns

Connection<BrowserElement>


dragVertexBy()

dragVertexBy(obj, x, y, eventHandlers?, metaKeys?): void

Drag the given Node/Group by the given x/y amounts. This is CANVAS coordinates.

Parameters

obj

Node/Group id, node, group or DOM element.

string | Element | Node | Group

x

number

Amount to move in X axis

y

number

Amount to move in Y axis

eventHandlers?

DragEventHandlers

Optional callbacks to invoke at various points in the drag lifecycle.

metaKeys?

Record<string, boolean>

Optional map of meta keys to set on the events used to model the drag.

Returns

void


dragVertexByInStages()

dragVertexByInStages(obj, x, y, stages?, eventHandlers?, metaKeys?): void

Drag a Node/Group over a number of stages, advancing a little each time.

Parameters

obj

Node/Group id, node, group or DOM element.

string | Node | Group | BrowserElement

x

number

Amount to move in X axis

y

number

Amount to move in Y axis

stages?

number

How many stages to break the drag up into.

eventHandlers?

DragEventHandlers

Optional callbacks to invoke at various points in the drag lifecycle. If you provide an afterMove callback, it will be invoked after each step of the drag.

metaKeys?

Record<string, boolean>

Optional map of meta keys to set on the events used to model the drag.

Returns

void


dragVertexByPageDelta()

dragVertexByPageDelta(obj, x, y, eventHandlers?, metaKeys?): void

Drag the given Node/Group by the given x/y amounts. This is PAGE coordinates.

Parameters

obj

Node/Group id, node, group or DOM element.

string | Element | Node | Group

x

number

Amount to move in X axis

y

number

Amount to move in Y axis

eventHandlers?

DragEventHandlers

Optional callbacks to invoke at various points in the drag lifecycle.

metaKeys?

Record<string, boolean>

Optional map of meta keys to set on the events used to model the drag.

Returns

void


dragVertexIntoGroup()

dragVertexIntoGroup(vertex, group): void

Drag the given vertex into the given group.

Parameters

vertex

Vertex id, Node, Group, or DOM element.

string | Element | Node | Group

group

Group id, Group, or DOM element.

string | Element | Group

Returns

void


dragVertexOutOfGroup()

dragVertexOutOfGroup(vertex, dragFarFarAway?): void

Drag the given vertex out of its current group. The element is placed [50,50] to the left and above

Parameters

vertex

Vertex id, Node, Group, or DOM element

string | Element | Node | Group

dragFarFarAway?

boolean

Returns

void


dragVertexTo()

dragVertexTo(obj, x, y, eventHandlers?): void

Drag the given Node/Group to the given [x,y], which are CANVAS coordinates.

Parameters

obj

Node id, group, node, or DOM element.

string | Element | Node | Group

x

number

Location on canvas in X axis to position top left corner of the node.

y

number

Location on canvas in Y axis to position top left corner of the node.

eventHandlers?

DragEventHandlers

Returns

void


dragVertexToPageLocation()

dragVertexToPageLocation(obj, x, y, eventHandlers?): void

Drag the given Node/Group to the given [x,y], which are PAGE coordinates.

Parameters

obj

Node id, node, group, or DOM element.

string | Element | Node | Group

x

number

Location on canvas in X axis to position top left corner of the node.

y

number

Location on canvas in Y axis to position top left corner of the node.

eventHandlers?

DragEventHandlers

Returns

void


getAllEdges()

getAllEdges(): Edge[]

Gets all edges in the underlying model.

Returns

Edge[]


getDOMPosition()

getDOMPosition(v): PointXY

Gets the position in the DOM of the element representing the given Node or Group

Parameters

v

string | Node | Group

Returns

PointXY


getEdge()

getEdge(obj): Edge

Gets an Edge.

Parameters

obj

any

Edge ID, or Edge object.

Returns

Edge


getEdgeCount()

getEdgeCount(): number

Returns the count of Edges in the underlying model.

Returns

number


getGroup()

getGroup(obj): ObjectInfo<Group>

Gets a Group from the underlying model.

Parameters

obj

Group Id or DOM element representing the Group

string | Element

Returns

ObjectInfo<Group>


getModelObject()

getModelObject<T>(obj): ObjectInfo<T>

Find the corresponding model object for the given input.

Type Parameters

T

T = any

Parameters

obj

A string representing an ID, a DOM element, a connection, or an existing model object.

string | Element | Node | Edge | Group | ObjectData | Connection<Element>

Returns

ObjectInfo<T>

an object containing the given model object, plus its id, and type etc.


getNode()

getNode(obj): ObjectInfo<Node>

Gets a Node from the underlying model.

Parameters

obj

Node Id or DOM element representing the node.

string | Element

Returns

ObjectInfo<Node>


getRenderedConnection()

getRenderedConnection(edgeId): Connection<Element>

For the given edge id, find and return the underlying Connection used to render it.

Parameters

edgeId

string

An edge ID

Returns

Connection<Element>


getRenderedElement()

getRenderedElement(obj): Element

For the given argument, find and return the corresponding DOM element.

Parameters

obj

A node/group/port id, or node/group/port, or a DOM element.

string | Element | Node | Group | ObjectData

Returns

Element


getRenderedPort()

getRenderedPort(obj): Element

Gets the DOM element that was rendered for some port. May be null.

Parameters

obj

string

Port, or port ID.

Returns

Element


isAtPosition()

isAtPosition(v, x, y): boolean

Returns whether or not the DOM element representing the given vertex is at the given point p.

Parameters

v

node/group or id of node/group

string | Node | Group

x

number

x location to test

y

number

y location to test

Returns

boolean


keyEvent()

keyEvent(el, type, key, modifiers?): void

Dispatch a keyboard event of the given type on the given element, with the given key code.

Parameters

el

Element

Element to dispatch the event on.

type

string

Type of event, e.g. "keydown", "keyup", "keypress".

key

string

modifiers?

Record<string, boolean>

Optional modifiers for the event.

Returns

void


lasso()

lasso(start, end, callbacks?): void

Drag a lasso on the canvas from the given start to the given end, which should be provided in pixel values, relative to the surface canvas origin.

Parameters

start

PointXY

end

PointXY

callbacks?

ConnectionDragEventHandlers

Returns

void


lassoOnElement()

lassoOnElement(el, start, end, callbacks?): void

Drag a lasso on the given el from the given start to the given end, which should be provided in pixel values, relative to the surface canvas origin.

Parameters

el

BrowserElement

start

PointXY

end

PointXY

callbacks?

ConnectionDragEventHandlers

Returns

void


load()

load(options): VisuallyJsModel

Shortcut to the underlying load method of the model.

Parameters

options

LoadOptions

Returns

VisuallyJsModel


makeEvent()

makeEvent(obj, dx, dy): SynthesizedEvent

Synthesize an event for the given object. This method is used by other parts of the test harness class and is not something a user of the API will necessarily need to make use of.

Parameters

obj

Node/Port/Group id, node/port/group, or DOM element.

string | Node | Group | Port | BrowserElement

dx

number

Optional offset from the center of the x axis of the related DOM element to position the event.

dy

number

Optional offset from the center of the y axis of the related DOM element to position the event.

Returns

SynthesizedEvent

a SynthesizedEvent


makeEventAt()

makeEventAt(x, y): SynthesizedEvent

Make an event at the given page location.

Parameters

x

number

y

number

Returns

SynthesizedEvent


mousedownOnEdge()

mousedownOnEdge(edgeId): void

Trigger a mousedown event on the edge with the given id.

Parameters

edgeId

string

Returns

void


mousedownOnElement()

mousedownOnElement(el): void

Creates a mousedown event on the given element and dispatches it.

Parameters

el

BrowserElement

Returns

void


mousemoveOnCanvasAt()

mousemoveOnCanvasAt(x, y): void

Simulates a mouse move event on the canvas at the given x,y

Parameters

x

number

y

number

Returns

void


mousemoveOnVertex()

mousemoveOnVertex(nodeOrGroupId, locationOnTarget?): void

Simulates a mousemove event on the node/group with the given id

Parameters

nodeOrGroupId

string

ID of the node/group to simulate mousemove on.

locationOnTarget?

PointXY

Returns

void


mouseoutOnEdge()

mouseoutOnEdge(edgeId): void

Trigger a mouseout event on the edge with the given id.

Parameters

edgeId

string

Returns

void


mouseoutOnVertex()

mouseoutOnVertex(nodeOrGroupId, locationOnTarget?): void

Simulates a mouseout event on the node/group with the given id

Parameters

nodeOrGroupId

string

ID of the node/group to simulate mouseout on.

locationOnTarget?

PointXY

Returns

void


mouseoverOnEdge()

mouseoverOnEdge(edgeId): void

Trigger a mouseover event on the edge with the given id.

Parameters

edgeId

string

Returns

void


mouseoverOnVertex()

mouseoverOnVertex(nodeOrGroupId, locationOnTarget?): void

Simulates a mouseover event on the node/group with the given id

Parameters

nodeOrGroupId

string

ID of the node/group to simulate mouseover on.

locationOnTarget?

PointXY

Returns

void


mouseupOnEdge()

mouseupOnEdge(edgeId): void

Trigger a mouseup event on the edge with the given id.

Parameters

edgeId

string

Returns

void


querySelector()

querySelector(selector): any

Execute querySelector(...) on the current container and return the results.

Parameters

selector

string

Returns

any

A matching DOM element, or null


querySelectorAll()

querySelectorAll(selector): any

Execute querySelectorAll(...) on the current container and return the results.

Parameters

selector

string

Returns

any

A NodeList of matching elements.


relocateEdgeSource()

relocateEdgeSource(edge, source, callbacks?, locationOnTarget?, mouseUpContinuation?): void

Drag the given edge's source relocator and drop it on some other vertex/element.

Parameters

edge

Edge

source

string | Node | Group | Port | BrowserElement

callbacks?

ConnectionDragEventHandlers

locationOnTarget?

PointXY

mouseUpContinuation?

Function

Returns

void


relocateEdgeTarget()

relocateEdgeTarget(edge, target, callbacks?, locationOnTarget?, mouseUpContinuation?): void

Drag the given edge's target relocator and drop it on some other vertex/element.

Parameters

edge

Edge

target

string | Node | Group | Port | BrowserElement

callbacks?

ConnectionDragEventHandlers

locationOnTarget?

PointXY

mouseUpContinuation?

Function

Returns

void


rightClickOnCanvas()

rightClickOnCanvas(clickCount): void

Right-clicks on the canvas.

Parameters

clickCount

number = 1

How any clicks to simulate. Defaults to 1.

Returns

void


rightClickOnVertex()

rightClickOnVertex(nodeOrGroupId): void

Right-clicks on the node/group with the given ID.

Parameters

nodeOrGroupId

string

ID of the node/group to click on.

Returns

void


startEditing()

startEditing(edge, params?): void

Start editing the given Edge. Your surface must be configured for editable edge paths for this method to have any effect.

Parameters

edge

Edge

Edge to edit

params?

any

Optional editor params. The type of this object depends on the type of the edge that is to be edited.

Returns

void


stopEditing()

stopEditing(): void

Stop editing an Edge. Your surface must be configured for editable edge paths for this method to have any effect.

Returns

void


tapOnEdge()

tapOnEdge(edgeOrEdgeId): void

Taps on the given edge

Parameters

edgeOrEdgeId

Edge, or ID of the edge

string | Edge

Returns

void


tapOnElement()

tapOnElement(el): void

Taps on a DOM element (mousedown followed by mouseup)

Parameters

el

BrowserElement

Returns

void


tapOnElementInsideVertex()

tapOnElementInsideVertex(nodeOrGroupId, selector): void

Taps on a DOM element inside the node/group with the given ID.

Parameters

nodeOrGroupId

string

ID of the node/group to tap on.

selector

string

CSS selector identifying the child element to click on.

Returns

void


tapOnGroup()

tapOnGroup(groupId): void

Simulates a tap event on the group with the given id - a tap event is a mousedown followed by a mouseup whose page coordinates are identical to the mousedown event's page coordinates.

Parameters

groupId

string

ID of the group to tap on.

Returns

void


tapOnNode()

tapOnNode(nodeId): void

Simulates a tap event on the node with the given id - a tap event is a mousedown followed by a mouseup whose page coordinates are identical to the mousedown event's page coordinates.

Parameters

nodeId

string

ID of the node to tap on.

Returns

void


tapOnVertex()

tapOnVertex(nodeOrGroupId): void

Simulates a tap event on the node/group with the given id - a tap event is a mousedown followed by a mouseup whose page coordinates are identical to the mousedown event's page coordinates.

Parameters

nodeOrGroupId

string

ID of the node/group to tap on.

Returns

void


trigger()

trigger(obj, eventName, evt): void

Trigger the event with the given name on the given object. By default the event will occur in the middle of the DOM element representing the object.

Parameters

obj

Node/Port/Group id, node/port/group, or DOM element.

string | Node | Group | Port | BrowserElement

eventName

string

eg 'click', 'mouseover'

evt

any

Optional, an event you previously created via #makeEvent. Sometimes you want to control the specific location of the event.

Returns

void


triggerEvent()

triggerEvent(el, eventName, data?, x?, y?): void

Trigger the provided event on the given DOM element.

Parameters

el

HTMLElement

Element to trigger the event on

eventName

string

Name of the event to trigger

data?

Record<string, any>

Optional data to set on the created event. Any values in this object are copied into the created event via Object.assign.

x?

number

y?

number

Returns

void


triggerEventAt()

triggerEventAt(el, eventName, x, y, data?): void

Triggers the given event at the given offset from the origin of the given element.

Parameters

el

HTMLElement

eventName

string

x

number

y

number

data?

Record<string, any>

Returns

void


triggerEventOnElement()

triggerEventOnElement(el, eventName, data?, x?, y?): void

Trigger the provided event on the given DOM element.

Parameters

el

HTMLElement

Element to trigger the event on

eventName

string

Name of the event to trigger

data?

Record<string, any>

Optional data to set on the created event. Any values in this object are copied into the created event via Object.assign.

x?

number

y?

number

Returns

void

Deprecated

Use triggerEvent instead


updateEdge()

updateEdge(edge, data): void

Updates an Edge.

Parameters

edge

any

Edge, or edge ID.

data

any

Data to update the edge with.

Returns

void


updateGroup()

updateGroup(obj, data): void

Update a Group in the model. A convenience wrapper around the same method on the underlying model.

Parameters

obj

Group, or Group Id.

string | Group

data

ObjectData

Data for the Group.

Returns

void


updateNode()

updateNode(obj, data): void

Update a Node in to the model. A convenience wrapper around the same method on the underlying model.

Parameters

obj

Node, or Node Id.

string | Node

data

ObjectData

Data for the Node.

Returns

void


updateVertex()

updateVertex(obj, data): void

Update a Vertex in the model. A convenience wrapper around the same method on the underlying model.

Parameters

obj

vertex, or vertex Id.

string | Vertex

data

ObjectData

Data for the Vertex update.

Returns

void


withConsole()

withConsole(fn): void

Run a function and capture the console output. Used internally by JsPlumb's unit tests; included in the public API on the off chance it will be useful for others.

Parameters

fn

Function

Returns

void