From cd2f33612624cacffec138797f3fc0f4ecb46cca Mon Sep 17 00:00:00 2001 From: spalger Date: Tue, 16 May 2017 18:32:12 -0700 Subject: [PATCH] [test/common] put server config into common --- .../lib/__tests__/ensure_es_version.js | 4 +- .../lib/__tests__/health_check.js | 6 +-- src/test_utils/kbn_server.js | 4 +- src/ui/public/utils/__tests__/scanner.js | 4 +- tasks/config/esvm.js | 11 ++-- tasks/config/run.js | 21 ++++---- test/api_integration/config.js | 4 +- test/common/config.js | 7 +++ test/es_test_server_url_parts.js | 10 ++++ test/functional/config.js | 34 ++++++++++-- test/functional/page_objects/common_page.js | 2 +- test/kibana_test_server_url_parts.js | 10 ++++ test/server_config.js | 52 ------------------- 13 files changed, 84 insertions(+), 85 deletions(-) create mode 100644 test/es_test_server_url_parts.js create mode 100644 test/kibana_test_server_url_parts.js delete mode 100644 test/server_config.js diff --git a/src/core_plugins/elasticsearch/lib/__tests__/ensure_es_version.js b/src/core_plugins/elasticsearch/lib/__tests__/ensure_es_version.js index 3dbdf28bf747b1a..e626bfc6feb93df 100644 --- a/src/core_plugins/elasticsearch/lib/__tests__/ensure_es_version.js +++ b/src/core_plugins/elasticsearch/lib/__tests__/ensure_es_version.js @@ -4,7 +4,7 @@ import sinon from 'sinon'; import expect from 'expect.js'; import url from 'url'; -import serverConfig from '../../../../../test/server_config'; +import { esTestServerUrlParts } from '../../../../../test/es_test_server_url_parts'; import { ensureEsVersion } from '../ensure_es_version'; describe('plugins/elasticsearch', () => { @@ -22,7 +22,7 @@ describe('plugins/elasticsearch', () => { status: { red: sinon.stub() }, - url: url.format(serverConfig.servers.elasticsearch) + url: url.format(esTestServerUrlParts) } } }; diff --git a/src/core_plugins/elasticsearch/lib/__tests__/health_check.js b/src/core_plugins/elasticsearch/lib/__tests__/health_check.js index d14d4103bda6197..36108487bc08c93 100644 --- a/src/core_plugins/elasticsearch/lib/__tests__/health_check.js +++ b/src/core_plugins/elasticsearch/lib/__tests__/health_check.js @@ -8,10 +8,10 @@ const NoConnections = require('elasticsearch').errors.NoConnections; import mappings from './fixtures/mappings'; import healthCheck from '../health_check'; import kibanaVersion from '../kibana_version'; -import serverConfig from '../../../../../test/server_config'; +import { esTestServerUrlParts } from '../../../../../test/es_test_server_url_parts'; -const esPort = serverConfig.servers.elasticsearch.port; -const esUrl = url.format(serverConfig.servers.elasticsearch); +const esPort = esTestServerUrlParts.port; +const esUrl = url.format(esTestServerUrlParts); describe('plugins/elasticsearch', () => { describe('lib/health_check', function () { diff --git a/src/test_utils/kbn_server.js b/src/test_utils/kbn_server.js index 969381436c18a79..095ae9f167dbd1d 100644 --- a/src/test_utils/kbn_server.js +++ b/src/test_utils/kbn_server.js @@ -2,7 +2,7 @@ import url from 'url'; import { defaultsDeep, set } from 'lodash'; import { header as basicAuthHeader } from './base_auth'; import { kibanaUser, kibanaServer } from '../../test/shield'; -import serverConfig from '../../test/server_config'; +import { esTestServerUrlParts } from '../../test/es_test_server_url_parts'; import KbnServer from '../../src/server/kbn_server'; const SERVER_DEFAULTS = { @@ -20,7 +20,7 @@ const SERVER_DEFAULTS = { enabled: false }, elasticsearch: { - url: url.format(serverConfig.servers.elasticsearch), + url: url.format(esTestServerUrlParts), username: kibanaServer.username, password: kibanaServer.password } diff --git a/src/ui/public/utils/__tests__/scanner.js b/src/ui/public/utils/__tests__/scanner.js index 9e317f1510ed6db..f41a64f19763e79 100644 --- a/src/ui/public/utils/__tests__/scanner.js +++ b/src/ui/public/utils/__tests__/scanner.js @@ -6,7 +6,7 @@ import ngMock from 'ng_mock'; import sinon from 'sinon'; import url from 'url'; -import serverConfig from '../../../../../test/server_config'; +import { esTestServerUrlParts } from '../../../../../test/es_test_server_url_parts'; describe('Scanner', function () { let es; @@ -14,7 +14,7 @@ describe('Scanner', function () { beforeEach(ngMock.module('kibana')); beforeEach(ngMock.inject(function (esFactory) { es = esFactory({ - host: url.format(serverConfig.servers.elasticsearch), + host: url.format(esTestServerUrlParts), defer: function () { return Bluebird.defer(); } diff --git a/tasks/config/esvm.js b/tasks/config/esvm.js index 9cd40e4ac1d4944..8af2ed379927e40 100644 --- a/tasks/config/esvm.js +++ b/tasks/config/esvm.js @@ -1,4 +1,5 @@ -import serverConfig from '../../test/server_config'; +import { esTestServerUrlParts } from '../../test/es_test_server_url_parts'; + module.exports = function (grunt) { const resolve = require('path').resolve; const directory = resolve(__dirname, '../../esvm'); @@ -92,7 +93,7 @@ module.exports = function (grunt) { purge: true, config: { http: { - port: serverConfig.servers.elasticsearch.port + port: esTestServerUrlParts.port }, cluster: { name: 'esvm-test' @@ -101,7 +102,7 @@ module.exports = function (grunt) { zen: { ping: { unicast: { - hosts: [ `localhost:${serverConfig.servers.elasticsearch.port}` ] + hosts: [ `localhost:${esTestServerUrlParts.port}` ] } } } @@ -116,7 +117,7 @@ module.exports = function (grunt) { purge: true, config: { http: { - port: serverConfig.servers.elasticsearch.port + port: esTestServerUrlParts.port }, cluster: { name: 'esvm-ui' @@ -125,7 +126,7 @@ module.exports = function (grunt) { zen: { ping: { unicast: { - hosts: [ `localhost:${serverConfig.servers.elasticsearch.port}` ] + hosts: [ `localhost:${esTestServerUrlParts.port}` ] } } } diff --git a/tasks/config/run.js b/tasks/config/run.js index 562fc9cafa76e64..61687800258f180 100644 --- a/tasks/config/run.js +++ b/tasks/config/run.js @@ -1,14 +1,13 @@ import { format } from 'url'; -import { resolve } from 'path'; +import { esTestServerUrlParts } from '../../test/es_test_server_url_parts'; +import { kibanaTestServerUrlParts } from '../../test/kibana_test_server_url_parts'; module.exports = function (grunt) { const platform = require('os').platform(); - const root = p => resolve(__dirname, '../../', p); const binScript = /^win/.test(platform) ? '.\\bin\\kibana.bat' : './bin/kibana'; const buildScript = /^win/.test(platform) ? '.\\build\\kibana\\bin\\kibana.bat' : './build/kibana/bin/kibana'; const pkgVersion = grunt.config.get('pkg.version'); const releaseBinScript = `./build/kibana-${pkgVersion}-linux-x86_64/bin/kibana`; - const uiConfig = require(root('test/server_config')); const stdDevArgs = [ '--env.name=development', @@ -56,8 +55,8 @@ module.exports = function (grunt) { args: [ ...stdDevArgs, '--optimize.enabled=false', - '--elasticsearch.url=' + format(uiConfig.servers.elasticsearch), - '--server.port=' + uiConfig.servers.kibana.port, + '--elasticsearch.url=' + format(esTestServerUrlParts), + '--server.port=' + kibanaTestServerUrlParts.port, '--server.xsrf.disableProtection=true', ...kbnServerFlags, ] @@ -73,8 +72,8 @@ module.exports = function (grunt) { cmd: binScript, args: [ ...stdDevArgs, - '--server.port=' + uiConfig.servers.kibana.port, - '--elasticsearch.url=' + format(uiConfig.servers.elasticsearch), + '--server.port=' + kibanaTestServerUrlParts.port, + '--elasticsearch.url=' + format(esTestServerUrlParts), ...kbnServerFlags, ] }, @@ -89,8 +88,8 @@ module.exports = function (grunt) { cmd: releaseBinScript, args: [ ...stdDevArgs, - '--server.port=' + uiConfig.servers.kibana.port, - '--elasticsearch.url=' + format(uiConfig.servers.elasticsearch), + '--server.port=' + kibanaTestServerUrlParts.port, + '--elasticsearch.url=' + format(esTestServerUrlParts), ...kbnServerFlags, ] }, @@ -105,8 +104,8 @@ module.exports = function (grunt) { cmd: binScript, args: [ ...stdDevArgs, - '--server.port=' + uiConfig.servers.kibana.port, - '--elasticsearch.url=' + format(uiConfig.servers.elasticsearch), + '--server.port=' + kibanaTestServerUrlParts.port, + '--elasticsearch.url=' + format(esTestServerUrlParts), '--dev', '--no-base-path', '--no-ssl', diff --git a/test/api_integration/config.js b/test/api_integration/config.js index 57ee074c33e96b9..3636a95bde57c18 100644 --- a/test/api_integration/config.js +++ b/test/api_integration/config.js @@ -4,8 +4,6 @@ import { SupertestProvider, } from './services'; -import { servers } from '../server_config'; - export default async function ({ readConfigFile }) { const commonConfig = await readConfigFile(require.resolve('../common/config')); @@ -18,7 +16,7 @@ export default async function ({ readConfigFile }) { esArchiver: commonConfig.get('services.esArchiver'), supertest: SupertestProvider, }, - servers, + servers: commonConfig.get('servers'), esArchiver: { directory: resolve(__dirname, './fixtures/es_archives') }, diff --git a/test/common/config.js b/test/common/config.js index 67fed351018158b..6fd6bcf0614058b 100644 --- a/test/common/config.js +++ b/test/common/config.js @@ -4,8 +4,15 @@ import { EsArchiverProvider, } from './services'; +import { esTestServerUrlParts } from '../es_test_server_url_parts'; +import { kibanaTestServerUrlParts } from '../kibana_test_server_url_parts'; + export default function () { return { + servers: { + kibana: kibanaTestServerUrlParts, + elasticsearch: esTestServerUrlParts, + }, services: { kibanaServer: KibanaServerProvider, es: EsProvider, diff --git a/test/es_test_server_url_parts.js b/test/es_test_server_url_parts.js new file mode 100644 index 000000000000000..626fd348c9b58bf --- /dev/null +++ b/test/es_test_server_url_parts.js @@ -0,0 +1,10 @@ +const shield = require('./shield'); + +export const esTestServerUrlParts = { + protocol: process.env.TEST_ES_PROTOCOL || 'http', + hostname: process.env.TEST_ES_HOSTNAME || 'localhost', + port: parseInt(process.env.TEST_ES_PORT, 10) || 9220, + auth: shield.admin.username + ':' + shield.admin.password, + username: shield.admin.username, + password: shield.admin.password, +}; diff --git a/test/functional/config.js b/test/functional/config.js index 08ae89072f2e5a7..63eb3c80a456e48 100644 --- a/test/functional/config.js +++ b/test/functional/config.js @@ -24,8 +24,6 @@ import { ScreenshotsProvider, } from './services'; -import { servers, apps } from '../server_config'; - export default async function ({ readConfigFile }) { const commonConfig = await readConfigFile(require.resolve('../common/config')); @@ -65,8 +63,36 @@ export default async function ({ readConfigFile }) { docTable: DocTableProvider, screenshots: ScreenshotsProvider, }, - servers, - apps, + servers: commonConfig.get('servers'), + apps: { + status_page: { + pathname: '/status', + }, + discover: { + pathname: '/app/kibana', + hash: '/discover', + }, + context: { + pathname: '/app/kibana', + hash: '/context', + }, + visualize: { + pathname: '/app/kibana', + hash: '/visualize', + }, + dashboard: { + pathname: '/app/kibana', + hash: '/dashboards', + }, + settings: { + pathname: '/app/kibana', + hash: '/management', + }, + console: { + pathname: '/app/kibana', + hash: '/dev_tools/console', + }, + }, esArchiver: { directory: resolve(__dirname, './fixtures/es_archives') }, diff --git a/test/functional/page_objects/common_page.js b/test/functional/page_objects/common_page.js index febd0e5ee105e38..d7541323d10e0e3 100644 --- a/test/functional/page_objects/common_page.js +++ b/test/functional/page_objects/common_page.js @@ -24,7 +24,7 @@ export function CommonPageProvider({ getService, getPageObjects }) { } /** - * @param {string} appName As defined in the apps objects in test/server_config.js + * @param {string} appName As defined in the apps config * @param {string} subUrl The route after the hash (#) */ navigateToUrl(appName, subUrl) { diff --git a/test/kibana_test_server_url_parts.js b/test/kibana_test_server_url_parts.js new file mode 100644 index 000000000000000..04cecea023ffefd --- /dev/null +++ b/test/kibana_test_server_url_parts.js @@ -0,0 +1,10 @@ +const shield = require('./shield'); + +export const kibanaTestServerUrlParts = { + protocol: process.env.TEST_KIBANA_PROTOCOL || 'http', + hostname: process.env.TEST_KIBANA_HOSTNAME || 'localhost', + port: parseInt(process.env.TEST_KIBANA_PORT, 10) || 5620, + auth: shield.kibanaUser.username + ':' + shield.kibanaUser.password, + username: shield.kibanaUser.username, + password: shield.kibanaUser.password, +}; diff --git a/test/server_config.js b/test/server_config.js deleted file mode 100644 index c8863102b3de114..000000000000000 --- a/test/server_config.js +++ /dev/null @@ -1,52 +0,0 @@ -const shield = require('./shield'); -const kibanaURL = '/app/kibana'; - -module.exports = { - servers: { - kibana: { - protocol: process.env.TEST_KIBANA_PROTOCOL || 'http', - hostname: process.env.TEST_KIBANA_HOSTNAME || 'localhost', - port: parseInt(process.env.TEST_KIBANA_PORT, 10) || 5620, - auth: shield.kibanaUser.username + ':' + shield.kibanaUser.password, - username: shield.kibanaUser.username, - password: shield.kibanaUser.password - }, - elasticsearch: { - protocol: process.env.TEST_ES_PROTOCOL || 'http', - hostname: process.env.TEST_ES_HOSTNAME || 'localhost', - port: parseInt(process.env.TEST_ES_PORT, 10) || 9220, - auth: shield.admin.username + ':' + shield.admin.password, - username: shield.admin.username, - password: shield.admin.password - } - }, - apps: { - status_page: { - pathname: '/status' - }, - discover: { - pathname: kibanaURL, - hash: '/discover', - }, - context: { - pathname: kibanaURL, - hash: '/context', - }, - visualize: { - pathname: kibanaURL, - hash: '/visualize', - }, - dashboard: { - pathname: kibanaURL, - hash: '/dashboards', - }, - settings: { - pathname: kibanaURL, - hash: '/management' - }, - console: { - pathname: kibanaURL, - hash: '/dev_tools/console', - } - } -};