github.com/Ilhicas/nomad@v1.0.4-0.20210304152020-e86851182bc3/ui/testem.js (about)

     1  'use strict';
     2  
     3  const MultiReporter = require('testem-multi-reporter');
     4  const TapReporter = require('testem/lib/reporters/tap_reporter');
     5  const XunitReporter = require('testem/lib/reporters/xunit_reporter');
     6  const fs = require('fs');
     7  
     8  const config = {
     9    test_page: 'tests/index.html?hidepassed',
    10    disable_watching: true,
    11    launch_in_ci: ['Chrome'],
    12    launch_in_dev: ['Chrome'],
    13    browser_start_timeout: 120,
    14    browser_args: {
    15      // New format in testem/master, but not in a release yet
    16      // Chrome: {
    17      //   ci: ['--headless', '--disable-gpu', '--remote-debugging-port=9222', '--window-size=1440,900'],
    18      // },
    19      Chrome: {
    20        ci: [
    21          // --no-sandbox is needed when running Chrome inside a container
    22          process.env.CI ? '--no-sandbox' : null,
    23          '--headless',
    24          '--disable-dev-shm-usage',
    25          '--disable-software-rasterizer',
    26          '--mute-audio',
    27          '--remote-debugging-port=0',
    28          '--window-size=1440,900'
    29        ].filter(Boolean)
    30      }
    31    }
    32  };
    33  
    34  if (process.env.CI) {
    35    const reporters = [{
    36      ReporterClass: TapReporter,
    37      args: [false, null, { get: () => false }]
    38    }, {
    39      ReporterClass: XunitReporter,
    40      args: [false, fs.createWriteStream('/tmp/test-reports/ui.xml'), { get: () => false }]
    41    }];
    42  
    43    const multiReporter = new MultiReporter({ reporters });
    44  
    45    config.reporter = multiReporter;
    46  }
    47  
    48  module.exports = config;