font_access_blob.tentative.https.window.js (1291B)
1 // META: script=/resources/testdriver.js 2 // META: script=/resources/testdriver-vendor.js 3 // META: script=resources/font-asserts.js 4 // META: script=resources/font-data.js 5 // META: script=resources/font-test-utils.js 6 // META: timeout=long 7 8 'use strict'; 9 10 font_access_test(async t => { 11 const fonts = await self.queryLocalFonts(); 12 13 // Fonts we know about. Not all expected fonts are included. 14 const testData = getTestData(); 15 // Reduce down the size of results for testing purposes. 16 const filteredFonts = filterFonts(fonts, [...testData.keys()]); 17 18 for (const font of filteredFonts) { 19 const data = await font.blob(); 20 assert_not_equals(data.size, 0, 'Blob has a positive size.'); 21 assert_equals( 22 data.type, 'application/octet-stream', 23 'Returned Blob is of type octet-stream.'); 24 const buffer = await data.arrayBuffer(); 25 assert_not_equals(buffer.length, 0, 'Returned ArrayBuffer is not empty.'); 26 27 const parsedData = await parseFontData(data); 28 assert_version_info(parsedData.versionTag); 29 assert_not_equals( 30 parsedData.tables.size, 0, 'Should not have tables of size zero.'); 31 assert_font_has_tables(font.postscriptName, parsedData.tables, BASE_TABLES); 32 } 33 }, 'FontData.blob(): blob has expected format and parsable table data.');