mediawiki-extensions-Visual.../tests/ve2/dm/ve.dm.Converter.test.js
Trevor Parscal 911ee3229a Test getDomFromData using getDataFromDom's tests
Move the test cases for getDataFromDom out into ve.dm.example and use them to test getDomFromData as well

Change-Id: Ib33854a7a1e8cb6a8ebf2c5b88cd5c17e25644b2
2012-06-07 22:10:53 -07:00

50 lines
1.2 KiB
JavaScript

module( 've.dm.Converter' );
/* Tests */
test( 'getDataElementFromDomElement', function() {
for ( var msg in ve.dm.example.conversions ) {
var conversion = ve.dm.example.conversions[msg];
deepEqual(
ve.dm.converter.getDataElementFromDomElement( conversion.domElement ),
conversion.dataElement,
msg
);
}
} );
test( 'getDomElementFromDataElement', function() {
for ( var msg in ve.dm.example.conversions ) {
var conversion = ve.dm.example.conversions[msg];
deepEqual(
ve.example.getDomElementSummary(
ve.dm.converter.getDomElementFromDataElement( conversion.dataElement )
),
ve.example.getDomElementSummary( conversion.domElement ),
msg
);
}
} );
test( 'getDataFromDom', function() {
var cases = ve.dm.example.domToDataCases;
for ( var msg in cases ) {
deepEqual(
ve.dm.converter.getDataFromDom( $( '<div></div>' ).html( cases[msg].html )[0] ),
cases[msg].data,
msg
);
}
} );
test( 'getDomFromData', function() {
var cases = ve.dm.example.domToDataCases;
for ( var msg in cases ) {
deepEqual(
ve.example.getDomElementSummary( ve.dm.converter.getDomFromData( cases[msg].data ) ),
ve.example.getDomElementSummary( $( '<div></div>' ).html( cases[msg].html )[0] ),
msg
);
}
});