HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux wordpress-ubuntu-s-2vcpu-4gb-fra1-01 5.4.0-169-generic #187-Ubuntu SMP Thu Nov 23 14:52:28 UTC 2023 x86_64
User: root (0)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/zaklada/html/node_modules/cover/test/interface.js
var assert = require('assert');
var runforcover = require('../');

exports.coverageInterface = function() {
  assert.ok(runforcover.cover);

  var originalRequire = require.extensions['.js'];

  var coverage = runforcover.cover();

  assert.notEqual(originalRequire, require.extensions['.js']);

  var file = require('./src/coverage');

  coverage(function(coverageData) {
    assert.equal(Object.keys(coverageData).length, 1);
    assert.equal(Object.keys(coverageData)[0], __dirname + '/src/coverage.js');

    var fileCoverageData = coverageData[Object.keys(coverageData)[0]]; 

    assert.ok(fileCoverageData.stats);
    assert.ok(fileCoverageData.missing);

    var stats = fileCoverageData.stats();

    assert.ok(stats.percentage !== undefined);
    assert.ok(stats.lines !== undefined);
    assert.ok(stats.missing !== undefined);
    assert.ok(stats.seen !== undefined);

    assert.equal(stats.lines.length, 3);
    assert.equal(stats.lines[0].source(), '  if(a > 0) {');
    assert.equal(stats.lines[1].source(), '    return a + 1;');
    assert.equal(stats.lines[2].source(), '    return a - 1;');

    file.something(1);
    stats = fileCoverageData.stats();

    assert.equal(stats.lines.length, 1);
    assert.equal(stats.lines[0].source(), '    return a - 1;');

    file.something(-1);
    stats = fileCoverageData.stats();

    assert.equal(stats.lines.length, 0);

    coverage.release();
    assert.equal(require.extensions['.js'], originalRequire); 
  });
};