mediawiki-extensions-Visual.../tests/ve2/ve.Node.test.js
Trevor Parscal b004b22241 Added tests for all exceptions
We are now checking for the exception messages as well.

Change-Id: I3a306ce9fe82afe6fd1e46a2e4da4d0a70952688
2012-04-19 18:05:48 -07:00

52 lines
1.2 KiB
JavaScript

module( 've.Node' );
/* Stubs */
ve.NodeStub = function() {
// Inheritance
ve.Node.call( this, 'stub' );
};
ve.extendClass( ve.NodeStub, ve.Node );
/* Tests */
test( 'prototype.canHaveChildren', 1, function() {
raises(
function() {
var node = new ve.NodeStub();
// Abstract method, must be overridden, throws exception when called
node.canHaveChildren();
},
/^ve.Node.canHaveChildren not implemented in this subclass: /,
'throws exception when called'
);
} );
test( 'prototype.canHaveGrandchildren', 1, function() {
raises(
function() {
var node = new ve.NodeStub();
// Abstract method, must be overridden, throws exception when called
node.canHaveGrandchildren();
},
/^ve.Node.canHaveGrandchildren not implemented in this subclass: /,
'throws exception when called'
);
} );
test( 'prototype.getType', 1, function() {
var node = new ve.NodeStub();
strictEqual( node.getType(), 'stub' );
} );
test( 'prototype.getParent', 1, function() {
var node = new ve.dm.NodeStub();
strictEqual( node.getParent(), null );
} );
test( 'prototype.getRoot', 1, function() {
var node = new ve.dm.NodeStub();
strictEqual( node.getRoot(), node );
} );