2013-03-20 22:35:05 +00:00
|
|
|
/*!
|
|
|
|
* VisualEditor MetaLinearData tests.
|
|
|
|
*
|
|
|
|
* @copyright 2011-2013 VisualEditor Team and others; see AUTHORS.txt
|
|
|
|
* @license The MIT License (MIT); see LICENSE.txt
|
|
|
|
*/
|
|
|
|
|
|
|
|
QUnit.module( 've.dm.MetaLinearData' );
|
|
|
|
|
|
|
|
/* Tests */
|
|
|
|
|
|
|
|
QUnit.test( 'basic usage', 6, function ( assert ) {
|
|
|
|
var store = new ve.dm.IndexValueStore(),
|
2013-07-28 20:51:32 +00:00
|
|
|
data = new ve.dm.MetaLinearData( store, ve.copy( ve.dm.example.withMetaMetaData ) );
|
2013-03-20 22:35:05 +00:00
|
|
|
|
|
|
|
assert.equal( data.getData(), data.data, 'getData: with no arguments returns data by reference' );
|
2013-06-05 17:22:01 +00:00
|
|
|
assert.deepEqualWithDomElements( data.getData(), ve.dm.example.withMetaMetaData, 'getData: full array matches source data' );
|
|
|
|
assert.deepEqualWithDomElements( data.getData( 0 ), data.data[0],
|
2013-03-20 22:35:05 +00:00
|
|
|
'getData: get with one index returns array of meta elements at specified offset'
|
|
|
|
);
|
2013-06-05 17:22:01 +00:00
|
|
|
assert.deepEqualWithDomElements( data.getData( 11, 3 ), data.data[11][3],
|
2013-03-20 22:35:05 +00:00
|
|
|
'getData: get with two indexes returns data at specified offset'
|
|
|
|
);
|
|
|
|
|
|
|
|
assert.equal( data.getDataLength( 11 ), data.data[11].length, 'getDataLength: equal to array length at offset' );
|
|
|
|
assert.equal( data.getTotalDataLength(), 9, 'getTotalDataLength: equal to total number of meta items' );
|
|
|
|
} );
|