Skip to content

Commit 6a25930

Browse files
MichaelZp0Michael Zappe
andauthored
Catch new exception (Azure#22973)
* Catch new exception * Formatting Co-authored-by: Michael Zappe <michaelzappe@microsoft.com>
1 parent 108b295 commit 6a25930

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed

sdk/remoterendering/mixed-reality-remote-rendering/test/public/remoteRenderingClient.spec.ts

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -220,6 +220,53 @@ describe("RemoteRendering functional tests", () => {
220220
assert.isTrue(didThrowExpected);
221221
});
222222

223+
it("will fail in the correct way on missing asset", async () => {
224+
const storageContainerUrl =
225+
"https://" +
226+
assertEnvironmentVariable("REMOTERENDERING_ARR_STORAGE_ACCOUNT_NAME") +
227+
".blob.core.windows.net/" +
228+
assertEnvironmentVariable("REMOTERENDERING_ARR_BLOB_CONTAINER_NAME");
229+
230+
const inputSettings: AssetConversionInputSettings = {
231+
storageContainerUrl,
232+
storageContainerReadListSas: assertEnvironmentVariable("REMOTERENDERING_ARR_SAS_TOKEN"),
233+
relativeInputAssetPath: "boxWhichDoesNotExist.fbx",
234+
blobPrefix: "Input",
235+
};
236+
const outputSettings: AssetConversionOutputSettings = {
237+
storageContainerUrl,
238+
storageContainerWriteSas: assertEnvironmentVariable("REMOTERENDERING_ARR_SAS_TOKEN"),
239+
blobPrefix: "Output",
240+
};
241+
const conversionSettings: AssetConversionSettings = { inputSettings, outputSettings };
242+
243+
const conversionId: string = recorder.variable(
244+
"conversionId",
245+
`conversionId-${Math.floor(Math.random() * 10000)}`
246+
);
247+
248+
const conversionPoller: AssetConversionPollerLike = await client.beginConversion(
249+
conversionId,
250+
conversionSettings,
251+
pollerSettings
252+
);
253+
254+
const assetConversion: AssetConversion = await client.getConversion(conversionId);
255+
assert.equal(assetConversion.conversionId, conversionId);
256+
257+
const newPoller = await client.beginConversion({ resumeFrom: conversionPoller.toString() });
258+
assert.equal(newPoller.getOperationState().latestResponse.conversionId, conversionId);
259+
260+
try {
261+
await conversionPoller.pollUntilDone();
262+
assert.isTrue(false, "Previous call should have thrown an exception.");
263+
} catch (e: any) {
264+
// Invalid input provided. Check logs in output container for details.
265+
assert.isTrue(e.message.toLowerCase().includes("invalid input"));
266+
assert.isTrue(e.message.toLowerCase().includes("logs"));
267+
}
268+
});
269+
223270
it("can start a session", async () => {
224271
const sessionSettings: RenderingSessionSettings = {
225272
maxLeaseTimeInMinutes: 4,

0 commit comments

Comments
 (0)