eHealthAfrica/direct-delivery-dashboard

View on GitHub
gulp/e2e-tests.js

Summary

Maintainability
A
0 mins
Test Coverage
'use strict'

var path = require('path')
var gulp = require('gulp')
var conf = require('./conf')

var browserSync = require('browser-sync')

var $ = require('gulp-load-plugins')()

// Downloads the selenium webdriver
gulp.task('webdriver-update', $.protractor.webdriver_update)

gulp.task('webdriver-standalone', $.protractor.webdriver_standalone)

function runProtractor (done) {
  var params = process.argv
  var args = params.length > 3 ? [params[3], params[4]] : []

  gulp.src(path.join(conf.paths.e2e, '/**/*.js'))
    .pipe($.protractor.protractor({
      configFile: 'protractor.conf.js',
      args: args
    }))
    .on('error', function (err) {
      // Make sure failed tests cause gulp to exit non-zero
      throw err
    })
    .on('end', function () {
      // Close browser sync server
      browserSync.exit()
      done()
    })
}

gulp.task('protractor', ['protractor:src'])
gulp.task('protractor:src', ['serve:e2e', 'webdriver-update'], runProtractor)
gulp.task('protractor:dist', ['serve:e2e-dist', 'webdriver-update'], runProtractor)