DSDSWeb/static/js/Cesium-1.53/Specs/Core/subdivideArraySpec.js

44 lines
1.3 KiB
JavaScript
Raw Normal View History

2024-07-11 18:02:47 +08:00
defineSuite([
'Core/subdivideArray'
], function(
subdivideArray) {
'use strict';
it('Splits evenly divided arrays', function() {
var values = [1, 2, 3, 4];
var splitValues = subdivideArray(values, 4);
expect(splitValues.length).toEqual(4);
expect(splitValues[0]).toEqual([1]);
expect(splitValues[1]).toEqual([2]);
expect(splitValues[2]).toEqual([3]);
expect(splitValues[3]).toEqual([4]);
});
it('Splits unevenly divided arrays', function() {
var values = [1, 2, 3, 4, 5, 6];
var splitValues = subdivideArray(values, 4);
expect(splitValues.length).toEqual(4);
expect(splitValues[0]).toEqual([1, 2]);
expect(splitValues[1]).toEqual([3, 4]);
expect(splitValues[2]).toEqual([5]);
expect(splitValues[3]).toEqual([6]);
});
it('Works with empty arrays', function() {
var splitValues = subdivideArray([], 4);
expect(splitValues.length).toEqual(0);
});
it('Throws with undefined array', function() {
expect(function() {
subdivideArray(undefined, 8);
}).toThrowDeveloperError();
});
it('Throws with invalid number of arrays', function() {
expect(function() {
subdivideArray([], -1);
}).toThrowDeveloperError();
});
});