diff --git a/dev/tests/js/jasmine/spec_runner/index.js b/dev/tests/js/jasmine/spec_runner/index.js index ce57b6c354cb9..d8329bb35178f 100644 --- a/dev/tests/js/jasmine/spec_runner/index.js +++ b/dev/tests/js/jasmine/spec_runner/index.js @@ -13,38 +13,14 @@ function init(grunt, options) { stripJsonComments = require('strip-json-comments'), path = require('path'), config, - themes; - + themes, + file; + config = grunt.file.read(__dirname + '/settings.json'); config = stripJsonComments(config); config = JSON.parse(config); - //themes = require(path.resolve(process.cwd(), config.themes)); - //TODO: MAGETWO-39843 - themes = { - blank: { - area: 'frontend', - name: 'Magento/blank', - locale: 'en_US', - files: [ - 'css/styles-m', - 'css/styles-l', - 'css/email', - 'css/email-inline' - ], - dsl: 'less' - }, - backend: { - area: 'adminhtml', - name: 'Magento/backend', - locale: 'en_US', - files: [ - 'css/styles-old', - 'css/styles' - ], - dsl: 'less' - } - } + themes = require(path.resolve(process.cwd(), config.themes)); if (options.theme) { themes = _.pick(themes, options.theme); @@ -54,6 +30,12 @@ function init(grunt, options) { config.themes = themes; + file = grunt.option('file'); + + if (file) { + config.singleTest = file; + } + enableTasks(grunt, config); } diff --git a/dev/tests/js/jasmine/spec_runner/tasks/jasmine.js b/dev/tests/js/jasmine/spec_runner/tasks/jasmine.js index ccd21fafe33b9..99f05198000ec 100644 --- a/dev/tests/js/jasmine/spec_runner/tasks/jasmine.js +++ b/dev/tests/js/jasmine/spec_runner/tasks/jasmine.js @@ -16,7 +16,6 @@ function init(config) { root = config.root; port = config.port; files = config.files; - host = _.template(config.host)({ port: port }); themes = config.themes; _.each(themes, function (themeData, themeName) { @@ -26,7 +25,13 @@ function init(config) { _.extend(themeData, { root: root }); + host = _.template(config.host)({ port: port++ }); render = renderTemplate.bind(null, themeData); + + if (config.singleTest) { + files.specs = [config.singleTest]; + } + specs = files.specs.map(render); specs = expand(specs).map(cutJsExtension); configs = files.requirejsConfigs.map(render);