From fc52f263be4da2bb722c65e54cd8a153a7d34751 Mon Sep 17 00:00:00 2001 From: Joey Parrish Date: Thu, 13 Dec 2018 09:35:43 -0800 Subject: [PATCH] Work around offline integration test failure This adds a workaround for a Chrome bug so that the test can be unquarantined. Change-Id: I3b076af346db008f3b59e7897c79e78f29fc72df --- test/offline/offline_integration.js | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/test/offline/offline_integration.js b/test/offline/offline_integration.js index 5b617a245..4ea52fbe3 100644 --- a/test/offline/offline_integration.js +++ b/test/offline/offline_integration.js @@ -86,13 +86,7 @@ describe('Offline', /** @suppress {accessControls} */ function() { }); // TODO: Add a PlayReady version once Edge supports offline. - // TODO: Still failing in Chrome canary 73 on 2018-12-12. - // Some combination of these bugs is preventing this test from working: - // http://crbug.com/690583 - // http://crbug.com/887535 - // http://crbug.com/887635 - // http://crbug.com/883895 - quarantinedIt( + drmIt( 'stores, plays, and deletes protected content with a persistent license', async function() { if (!supportsStorage()) { @@ -113,6 +107,13 @@ describe('Offline', /** @suppress {accessControls} */ function() { storage.configure({usePersistentLicense: true}); let content = await storage.store('test:sintel-enc'); + // Work around http://crbug.com/887535 in which load cannot happen right + // after close. Experimentally, we seem to need a ~1s delay, so we're + // using a 3s delay to ensure it doesn't flake. Without this, we get + // error 6005 (FAILED_TO_CREATE_SESSION) with system code 70. + // TODO: Remove when Chrome is fixed + await shaka.test.Util.delay(3); + let contentUri = content.offlineUri; goog.asserts.assert( contentUri, 'Stored content should have an offline uri.');