acuminous/yadda

View on GitHub
lib/plugins/mocha/ScenarioLevelPlugin.js

Summary

Maintainability
A
0 mins
Test Coverage
F
26%
'use strict';

var $ = require('../../Array');
var Platform = require('../../Platform');
var BasePlugin = require('./BasePlugin');

module.exports.init = function (options) {
  // eslint-disable-next-line no-redeclare
  var options = options || {};
  var platform = new Platform();
  var container = options.container || platform.get_container();

  var base_plugin = BasePlugin.create(options);

  function scenarios(scenarios, iterator) {
    $(scenarios).each(function (scenario) {
      var itFn = iterator.length === 1 ? base_plugin.it_sync : base_plugin.it_async;
      itFn(scenario.title, scenario, function (context, scenario, done) {
        iterator(scenario, done);
      });
    });
  }

  container.featureFiles = container.featureFile = base_plugin.featureFiles;
  container.features = container.feature = base_plugin.features;
  container.scenarios = container.scenario = scenarios;
};