UNPKG

@dasch-swiss/dsp-js

Version:

JavaScript library that handles API requests to Knora

111 lines 4.73 kB
import { KnoraApiConfig } from "./knora-api-config"; describe("Test class KnoraApiConfig", function () { describe("Test method constructor()", function () { it("should verify parameters", function () { var params = [ { apiProtocol: "http", apiHost: "localhost" }, { apiProtocol: "http", apiHost: "localhost", apiPort: 80 }, { apiProtocol: "https", apiHost: "localhost" }, { apiProtocol: "https", apiHost: "localhost", apiPort: 443 }, { apiProtocol: "http", apiHost: "localhost", apiPort: 1234, apiPath: "/api", jsonWebToken: "GAGA", }, { apiProtocol: "http", apiHost: "localhost", apiPort: 1234, apiPath: "/api", jsonWebToken: "GAGA", logErrors: false, }, { apiProtocol: "http", apiHost: "localhost", apiPort: 1234, apiPath: "/api", jsonWebToken: "GAGA", logErrors: true, } ]; params.forEach(function (_a) { var apiProtocol = _a.apiProtocol, apiHost = _a.apiHost, apiPort = _a.apiPort, apiPath = _a.apiPath, jsonWebToken = _a.jsonWebToken, logErrors = _a.logErrors; var config = new KnoraApiConfig(apiProtocol, apiHost, apiPort, apiPath, jsonWebToken, logErrors); expect(config).toEqual(jasmine.any(KnoraApiConfig)); expect(config.apiProtocol).toEqual(apiProtocol); expect(config.apiHost).toEqual(apiHost); if (apiProtocol === KnoraApiConfig.PROTOCOL_HTTP && apiPort === KnoraApiConfig.DEFAULT_PORT_HTTP) { expect(config.apiPort).toEqual(null); } else if (apiProtocol === KnoraApiConfig.PROTOCOL_HTTPS && apiPort === KnoraApiConfig.DEFAULT_PORT_HTTPS) { expect(config.apiPort).toEqual(null); } else { expect(config.apiPort).toEqual(apiPort === undefined ? null : apiPort); } expect(config.apiPath).toEqual(apiPath === undefined ? "" : apiPath); expect(config.jsonWebToken).toEqual(jsonWebToken === undefined ? "" : jsonWebToken); expect(config.logErrors).toEqual(logErrors === undefined ? false : logErrors); }); }); }); describe("Test property apiUrl", function () { it("should return correct value", function () { var data = [ { param: { apiProtocol: "http", apiHost: "localhost" }, result: "http://localhost" }, { param: { apiProtocol: "http", apiHost: "localhost", apiPort: 80 }, result: "http://localhost" }, { param: { apiProtocol: "https", apiHost: "localhost" }, result: "https://localhost" }, { param: { apiProtocol: "https", apiHost: "localhost", apiPort: 443 }, result: "https://localhost" }, { param: { apiProtocol: "https", apiHost: "domain.com", apiPort: 1234 }, result: "https://domain.com:1234" }, { param: { apiProtocol: "https", apiHost: "domain.com", apiPort: 1234, apiPath: "/api" }, result: "https://domain.com:1234/api" }, { param: { apiProtocol: "https", apiHost: "domain.com", apiPort: 1234, apiPath: "/api" }, result: "https://domain.com:1234/api" } ]; data.forEach(function (_a) { var param = _a.param, result = _a.result; var config = new KnoraApiConfig(param.apiProtocol, param.apiHost, param.apiPort, param.apiPath); expect(config.apiUrl).toBe(result); }); }); }); }); //# sourceMappingURL=knora-api-config.spec.js.map