You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
108 lines
2.4 KiB
JavaScript
108 lines
2.4 KiB
JavaScript
import { ComponentDatatype } from "../../Source/Cesium.js";
|
|
import { GeometryAttribute } from "../../Source/Cesium.js";
|
|
|
|
describe("Core/GeometryAttribute", function () {
|
|
it("constructor", function () {
|
|
var color = new GeometryAttribute({
|
|
componentDatatype: ComponentDatatype.UNSIGNED_BYTE,
|
|
componentsPerAttribute: 4,
|
|
normalize: true,
|
|
values: new Uint8Array([255, 0, 0, 255, 0, 255, 0, 255, 0, 0, 255, 255]),
|
|
});
|
|
|
|
expect(color.componentDatatype).toEqual(ComponentDatatype.UNSIGNED_BYTE);
|
|
expect(color.componentsPerAttribute).toEqual(4);
|
|
expect(color.normalize).toEqual(true);
|
|
expect(color.values).toEqual([
|
|
255,
|
|
0,
|
|
0,
|
|
255,
|
|
0,
|
|
255,
|
|
0,
|
|
255,
|
|
0,
|
|
0,
|
|
255,
|
|
255,
|
|
]);
|
|
});
|
|
|
|
it("constructor throws without componentDatatype", function () {
|
|
expect(function () {
|
|
return new GeometryAttribute({
|
|
componentsPerAttribute: 4,
|
|
values: new Uint8Array([
|
|
255,
|
|
0,
|
|
0,
|
|
255,
|
|
0,
|
|
255,
|
|
0,
|
|
255,
|
|
0,
|
|
0,
|
|
255,
|
|
255,
|
|
]),
|
|
});
|
|
}).toThrowDeveloperError();
|
|
});
|
|
|
|
it("constructor throws without componentsPerAttribute", function () {
|
|
expect(function () {
|
|
return new GeometryAttribute({
|
|
componentDatatype: ComponentDatatype.UNSIGNED_BYTE,
|
|
values: new Uint8Array([
|
|
255,
|
|
0,
|
|
0,
|
|
255,
|
|
0,
|
|
255,
|
|
0,
|
|
255,
|
|
0,
|
|
0,
|
|
255,
|
|
255,
|
|
]),
|
|
});
|
|
}).toThrowDeveloperError();
|
|
});
|
|
|
|
it("constructor throws when componentsPerAttribute is less than 1 or greater than 4", function () {
|
|
expect(function () {
|
|
return new GeometryAttribute({
|
|
componentDatatype: ComponentDatatype.UNSIGNED_BYTE,
|
|
componentsPerAttribute: 7,
|
|
values: new Uint8Array([
|
|
255,
|
|
0,
|
|
0,
|
|
255,
|
|
0,
|
|
255,
|
|
0,
|
|
255,
|
|
0,
|
|
0,
|
|
255,
|
|
255,
|
|
]),
|
|
});
|
|
}).toThrowDeveloperError();
|
|
});
|
|
|
|
it("constructor throws without values", function () {
|
|
expect(function () {
|
|
return new GeometryAttribute({
|
|
componentDatatype: ComponentDatatype.UNSIGNED_BYTE,
|
|
componentsPerAttribute: 4,
|
|
});
|
|
}).toThrowDeveloperError();
|
|
});
|
|
});
|