Skip to content

Commit

Permalink
Merge pull request #11646 from CesiumGS/no-small-terrain
Browse files Browse the repository at this point in the history
Replace use of smallTerrain in specs and smokescreen tests
  • Loading branch information
mramato committed Nov 22, 2023
2 parents fd91a2b + 892efa3 commit 4ca0ad7
Show file tree
Hide file tree
Showing 7 changed files with 85 additions and 15 deletions.
Binary file not shown.
6 changes: 2 additions & 4 deletions Specs/test.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,13 @@

const assert = require("node:assert");
const {
CesiumTerrainProvider,
Cartographic,
createWorldTerrainAsync,
sampleTerrain,
} = require("cesium");

async function test() {
const provider = await CesiumTerrainProvider.fromUrl(
"https://s3.amazonaws.com/cesiumjs/smallTerrain"
);
const provider = await createWorldTerrainAsync();
const results = await sampleTerrain(provider, 11, [
Cartographic.fromDegrees(86.925145, 27.988257),
Cartographic.fromDegrees(87.0, 28.0),
Expand Down
6 changes: 2 additions & 4 deletions Specs/test.mjs
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
import { Cartographic, CesiumTerrainProvider, sampleTerrain } from "cesium";
import { Cartographic, createWorldTerrainAsync, sampleTerrain } from "cesium";
import assert from "node:assert";

// NodeJS smoke screen test

async function test() {
const provider = await CesiumTerrainProvider.fromUrl(
"https://s3.amazonaws.com/cesiumjs/smallTerrain"
);
const provider = await createWorldTerrainAsync();
const results = await sampleTerrain(provider, 11, [
Cartographic.fromDegrees(86.925145, 27.988257),
Cartographic.fromDegrees(87.0, 28.0),
Expand Down
4 changes: 2 additions & 2 deletions packages/engine/Specs/Core/sampleTerrainMostDetailedSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,9 @@ describe("Core/sampleTerrainMostDetailed", function () {
expect(positions[1].height).toBeLessThan(10000);
});

it("should throw querying heights from Small Terrain", async function () {
it("should throw querying heights from terrain without availability", async function () {
const terrainProvider = await CesiumTerrainProvider.fromUrl(
"https://s3.amazonaws.com/cesiumjs/smallTerrain"
"Data/CesiumTerrainTileJson/StandardHeightmap.tile.json"
);

const positions = [
Expand Down
42 changes: 40 additions & 2 deletions packages/engine/Specs/Core/sampleTerrainSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,11 @@ describe("Core/sampleTerrain", function () {
worldTerrain = await createWorldTerrainAsync();
});

afterEach(function () {
Resource._Implementations.loadWithXhr =
Resource._DefaultImplementations.loadWithXhr;
});

it("queries heights", function () {
const positions = [
Cartographic.fromDegrees(86.925145, 27.988257),
Expand All @@ -32,9 +37,42 @@ describe("Core/sampleTerrain", function () {
});
});

it("queries heights from Small Terrain", async function () {
it("queries heights from terrain without availability", async function () {
// Mock terrain tile loading
Resource._Implementations.loadWithXhr = function (
url,
responseType,
method,
data,
headers,
deferred,
overrideMimeType
) {
if (defined(url.match(/\/\d+\/\d+\/\d+\.terrain/))) {
Resource._DefaultImplementations.loadWithXhr(
"Data/CesiumTerrainTileJson/11_3027_1342.terrain",
responseType,
method,
data,
headers,
deferred
);
return;
}

Resource._DefaultImplementations.loadWithXhr(
url,
responseType,
method,
data,
headers,
deferred,
overrideMimeType
);
};

const terrainProvider = await CesiumTerrainProvider.fromUrl(
"https://s3.amazonaws.com/cesiumjs/smallTerrain"
"Data/CesiumTerrainTileJson/StandardHeightmap.tile.json"
);

const positions = [
Expand Down
38 changes: 37 additions & 1 deletion packages/engine/Specs/Scene/GlobeSurfaceTileProviderSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import {
GeographicProjection,
HeadingPitchRoll,
Rectangle,
Resource,
WebMercatorProjection,
ContextLimits,
RenderState,
Expand Down Expand Up @@ -104,6 +105,8 @@ describe(
afterEach(function () {
scene.imageryLayers.removeAll();
scene.primitives.removeAll();
Resource._Implementations.loadWithXhr =
Resource._DefaultImplementations.loadWithXhr;
});

it("conforms to QuadtreeTileProvider interface", function () {
Expand Down Expand Up @@ -902,8 +905,41 @@ describe(
scene.imageryLayers.addImageryProvider(provider);

const terrainCredit = new Credit("terrain credit");

// Mock terrain tile loading
Resource._Implementations.loadWithXhr = function (
url,
responseType,
method,
data,
headers,
deferred,
overrideMimeType
) {
if (defined(url.match(/\/\d+\/\d+\/\d+\.terrain/))) {
Resource._DefaultImplementations.loadWithXhr(
"Data/CesiumTerrainTileJson/tile.32bitIndices.terrain",
responseType,
method,
data,
headers,
deferred
);
return;
}

Resource._DefaultImplementations.loadWithXhr(
url,
responseType,
method,
data,
headers,
deferred,
overrideMimeType
);
};
scene.terrainProvider = await CesiumTerrainProvider.fromUrl(
"https://s3.amazonaws.com/cesiumjs/smallTerrain",
"Data/CesiumTerrainTileJson/QuantizedMesh.tile.json",
{
credit: terrainCredit,
}
Expand Down
4 changes: 2 additions & 2 deletions packages/engine/Specs/test.mjs
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { Cartographic, CesiumTerrainProvider, sampleTerrain } from "@cesium/engine";
import { Cartographic, createWorldTerrainAsync, sampleTerrain } from "@cesium/engine";
import assert from "node:assert";

// NodeJS smoke screen test
async function test() {
const provider = await CesiumTerrainProvider.fromUrl("https://s3.amazonaws.com/cesiumjs/smallTerrain");
const provider = await createWorldTerrainAsync();
const results = await sampleTerrain(provider, 11, [
Cartographic.fromDegrees(86.925145, 27.988257),
Cartographic.fromDegrees(87.0, 28.0),
Expand Down

0 comments on commit 4ca0ad7

Please sign in to comment.