oss-specs/specs

View on GitHub
features-support/hooks/ci-mock.js

Summary

Maintainability
A
0 mins
Test Coverage
/**
 * Set up Mock CI server for UI tests.
 */
'use strict';

var express = require('express');
var app = express();
var process = require('process');
var server;

app.get('/api/json*', function(req, res) {
  res.setHeader('Content-Type', 'application/javascript');
  res.send('{ "jobs": [{"name":"job" }]}');
});

app.get('/job/job/lastCompletedBuild/testReport/api/json*', function (req, res) {
  res.setHeader('Content-Type', 'application/javascript');
  res.send('{ "suites": [{"cases": [{"className":"Features can be retrieved from a remote Git repositories", "name": "Features can be retrieved from a remote Git repo.", "status":"PASSED" }]}]}');
});

module.exports = function seleniumHooks() {
  var world = this;
  this.Before('@ci-mock', function(scenario, callback) {
    world.ciMockPort = process.env.CI_PORT || 5001;
    server = app.listen(world.ciMockPort, function () {
      callback();
    });
  });

  // Tidy up.
  this.After('@ci-mock', function(scenario, callback) {
    server.close();
    callback();
  });
};