Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(670)

Unified Diff: chrome/test/data/extensions/api_test/mime_handler_view/index.js

Issue 2409073002: Use mojo from the PDF extension instead of using an extension API.
Patch Set: Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/resources/pdf/browser_api.js ('k') | extensions/common/api/BUILD.gn » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/test/data/extensions/api_test/mime_handler_view/index.js
diff --git a/chrome/test/data/extensions/api_test/mime_handler_view/index.js b/chrome/test/data/extensions/api_test/mime_handler_view/index.js
index b3187d2aded3d5e4cc5f9386ad4cddfed43e3122..e53465d96ae748f86ddc188ec6fd22b13cd525bb 100644
--- a/chrome/test/data/extensions/api_test/mime_handler_view/index.js
+++ b/chrome/test/data/extensions/api_test/mime_handler_view/index.js
@@ -15,6 +15,17 @@ function queueMessage(event) {
window.addEventListener('message', queueMessage, false);
+let mimeHandlerPromise = (async function() {
+ let [frameInterfaces, mojom, connectionModule] = await Promise.all([
+ chrome.mojoPrivate.requireAsync('content/public/renderer/frame_interfaces'),
+ chrome.mojoPrivate.requireAsync('extensions/common/api/mime_handler.mojom'),
+ chrome.mojoPrivate.requireAsync('mojo/public/js/connection'),
+ ]);
+ return connectionModule.bindHandleToProxy(
+ frameInterfaces.getInterface(mojom.MimeHandlerService.name),
+ mojom.MimeHandlerService);
+})();
+
var streamDetails;
function fetchUrl(url) {
@@ -84,14 +95,15 @@ var tests = [
Promise.all([printMessageArrived, contentRead]).then(chrome.test.succeed);
},
- function testAbort() {
+ async function testAbort() {
checkStreamDetails('testAbort.csv', false);
- chrome.mimeHandlerPrivate.abortStream(function() {
- fetchUrl(streamDetails.streamUrl).then(function(response) {
- chrome.test.assertEq(404, response.status);
- chrome.test.assertEq('', response.data);
- chrome.test.succeed();
- });
+
+ let mimeHandlerInterface = await mimeHandlerPromise;
+ await mimeHandlerInterface.abortStream();
+ fetchUrl(streamDetails.streamUrl).then(function(response) {
+ chrome.test.assertEq(404, response.status);
+ chrome.test.assertEq('', response.data);
+ chrome.test.succeed();
});
},
@@ -152,7 +164,25 @@ for (let i = 0; i < tests.length; i++) {
testsByName[tests[i].name] = tests[i];
}
-chrome.mimeHandlerPrivate.getStreamInfo(function(streamInfo) {
+function constructStreamInfoDict_(streamInfo) {
+ var headers = {};
+ for (var header of streamInfo.response_headers) {
+ headers[header[0]] = header[1];
+ }
+ return {
+ mimeType: streamInfo.mime_type,
+ originalUrl: streamInfo.original_url,
+ streamUrl: streamInfo.stream_url,
+ tabId: streamInfo.tab_id,
+ embedded: !!streamInfo.embedded,
+ responseHeaders: headers,
+ };
+}
+
+(async function() {
+ let mimeHandlerInterface = await mimeHandlerPromise;
+ let streamInfo = constructStreamInfoDict_(
+ (await mimeHandlerInterface.getStreamInfo()).stream_info);
if (!streamInfo)
return;
@@ -175,4 +205,4 @@ chrome.mimeHandlerPrivate.getStreamInfo(function(streamInfo) {
else
chrome.test.runTests([testsByName['testDataUrl']]);
}
-});
+})();
« no previous file with comments | « chrome/browser/resources/pdf/browser_api.js ('k') | extensions/common/api/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698