mediawiki-extensions-Visual.../modules/ve/test/dm/lineardata/ve.dm.MetaLinearData.test.js
Timo Tijhof 44623c9b2a ve.copy: Remove obsolete copyArray and copyObject
These have been pointing to the same method for a while now,
we can safely remove these obsolete aliases and just use it
as generic copy.

* Each file touched by my editor had its new line at EOF fixed
  where absent
* Don't copy an otherwise unused empty object
  (ve.dm.Converter)
* Use common ve#copy syntax instead to create a link
  (ve.dm.Document, ve.dm.example)
* Remove redundant conditionals for isArray/copyArray/copyObject
  (ve.dm.example)

Change-Id: If560e658dc1fb59bf01f702c97e3e82a50a8a255
2013-07-30 01:44:22 +02:00

28 lines
1.1 KiB
JavaScript

/*!
* 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(),
data = new ve.dm.MetaLinearData( store, ve.copy( ve.dm.example.withMetaMetaData ) );
assert.equal( data.getData(), data.data, 'getData: with no arguments returns data by reference' );
assert.deepEqualWithDomElements( data.getData(), ve.dm.example.withMetaMetaData, 'getData: full array matches source data' );
assert.deepEqualWithDomElements( data.getData( 0 ), data.data[0],
'getData: get with one index returns array of meta elements at specified offset'
);
assert.deepEqualWithDomElements( data.getData( 11, 3 ), data.data[11][3],
'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' );
} );