tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

summarizer-create-available.tentative.https.window.js (3615B)


      1 // META: title=Summarizer Create Available
      2 // META: script=/resources/testdriver.js
      3 // META: script=../resources/util.js
      4 // META: timeout=long
      5 
      6 'use strict';
      7 
      8 promise_test(async () => {
      9  const summarizer = await createSummarizer();
     10  assert_true(summarizer instanceof Summarizer);
     11 
     12  assert_equals(typeof summarizer.summarize, 'function');
     13  assert_equals(typeof summarizer.summarizeStreaming, 'function');
     14  assert_equals(typeof summarizer.measureInputUsage, 'function');
     15  assert_equals(typeof summarizer.destroy, 'function');
     16 
     17  assert_equals(typeof summarizer.expectedContextLanguages, 'object');
     18  assert_equals(typeof summarizer.expectedInputLanguages, 'object');
     19  assert_equals(typeof summarizer.inputQuota, 'number');
     20  assert_equals(typeof summarizer.outputLanguage, 'object');
     21  assert_equals(typeof summarizer.sharedContext, 'string');
     22 
     23  assert_equals(typeof summarizer.type, 'string');
     24  assert_equals(typeof summarizer.format, 'string');
     25  assert_equals(typeof summarizer.length, 'string');
     26 
     27  assert_equals(summarizer.type, 'key-points');
     28  assert_equals(summarizer.format, 'markdown');
     29  assert_equals(summarizer.length, 'short');
     30 }, 'Summarizer.create() returns a valid object with default options');
     31 
     32 promise_test(async () => {
     33  const summarizer = await testMonitor(createSummarizer);
     34  assert_equals(typeof summarizer, 'object');
     35 }, 'Summarizer.create() notifies its monitor on downloadprogress');
     36 
     37 promise_test(async t => {
     38  await testCreateMonitorWithAbort(t, Summarizer.create);
     39 }, 'Progress events are not emitted after aborted');
     40 
     41 promise_test(async () => {
     42  const sharedContext = 'This is a shared context string';
     43  const summarizer = await createSummarizer({sharedContext: sharedContext});
     44  assert_equals(summarizer.sharedContext, sharedContext);
     45 }, 'Summarizer.sharedContext');
     46 
     47 promise_test(async () => {
     48  const summarizer = await createSummarizer({type: 'headline'});
     49  assert_equals(summarizer.type, 'headline');
     50 }, 'Summarizer.type');
     51 
     52 promise_test(async () => {
     53  const summarizer = await createSummarizer({format: 'plain-text'});
     54  assert_equals(summarizer.format, 'plain-text');
     55 }, 'Summarizer.format');
     56 
     57 promise_test(async () => {
     58  const summarizer = await createSummarizer({length: 'medium'});
     59  assert_equals(summarizer.length, 'medium');
     60 }, 'Summarizer.length');
     61 
     62 promise_test(async () => {
     63  const summarizer = await createSummarizer({expectedInputLanguages: ['en']});
     64  assert_array_equals(summarizer.expectedInputLanguages, ['en']);
     65 }, 'Summarizer.expectedInputLanguages');
     66 
     67 promise_test(async () => {
     68  const summarizer = await createSummarizer({expectedContextLanguages: ['en']});
     69  assert_array_equals(summarizer.expectedContextLanguages, ['en']);
     70 }, 'Summarizer.expectedContextLanguages');
     71 
     72 promise_test(async () => {
     73  const summarizer = await createSummarizer({outputLanguage: 'en'});
     74  assert_equals(summarizer.outputLanguage, 'en');
     75 }, 'Summarizer.outputLanguage');
     76 
     77 promise_test(async (t) => {
     78  return promise_rejects_js(
     79      t, RangeError,
     80      createSummarizer({expectedInputLanguages: ['en-abc-invalid']}));
     81 }, 'Creating Summarizer with malformed language string');
     82 
     83 promise_test(async (t) => {
     84  let summarizer = await createSummarizer({expectedInputLanguages: ['EN']});
     85  assert_true(!!summarizer);
     86 }, 'Summarizer.create() canonicalizes language tags');
     87 
     88 promise_test(async () => {
     89  const summarizer = await createSummarizer();
     90  assert_equals(summarizer.expectedInputLanguages, null);
     91  assert_equals(summarizer.expectedContextLanguages, null);
     92  assert_equals(summarizer.outputLanguage, null);
     93 }, 'Summarizer optional attributes return null');