/*! * @license * Copyright 2019 Alfresco Software, Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ var url = require('url-join'); var TestConfig = require('../test.config'); var APIUtils = function () { /** * Return Basic authorization * * @param user * @param password * @returns Basic authorization */ this.getAuthorization = function (user, password) { return 'Basic ' + Buffer.from(user + ':' + password).toString('base64'); }; /**
 * Return any application base URL
 * ://:/
 * * @param application - any application declared in config file: main or adf
 * @param urlComponentsParam - Object with details required to define the baseURL
 * {
 * protocol: "http",
 * hostname: "localhost",
 * port: "8080"
 * }
 * If urlComponents empty {}, the default test configuration values are set
 */ this.getBaseURL = function (application, urlComponentsParam) { var urlComponents = {}; urlComponents.hostname = TestConfig[application].host; urlComponents.port = TestConfig[application].port; urlComponents.path = TestConfig[application].apiContextRoot; Object.assign(urlComponents, urlComponentsParam); return url(urlComponents.hostname + (urlComponents.port !== "" ? ":" + urlComponents.port : ""), urlComponents.path); }; }; module.exports = APIUtils;