UNPKG

@amplience/dc-cli

Version:
76 lines (75 loc) 2.83 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.MockContentHub = void 0; const ApiClient_1 = require("../ch-api/api/services/ApiClient"); const Asset_1 = require("../ch-api/model/Asset"); class MockContentHub { constructor() { this.settings = { get: () => { if (MockContentHub.throwOnGetSettings) { throw new Error('Simulated settings error.'); } if (MockContentHub.returnNullEndpoint) { return Promise.resolve({ di: { endpoints: [], defaultEndpoint: null } }); } else { return Promise.resolve({ di: { endpoints: [ { id: 'test-endpoint', path: 'test-endpoint-path', dynamicHost: 'test-endpoint-dynamicHost' } ], defaultEndpoint: 'test-endpoint' } }); } } }; this.assets = { list: (query) => { MockContentHub.requests.push(query); if (MockContentHub.throwOnAssetList) { throw new Error('Simulated asset list error.'); } let list; if (MockContentHub.missingAssetList) { list = new Asset_1.AssetsList({ data: [], count: 0 }); } else { const nameStart = query.q.indexOf('/'); const nameEnd = query.q.lastIndexOf('/'); const name = query.q.substring(nameStart + 1, nameEnd); const names = name.split('|'); list = new Asset_1.AssetsList({ data: names.map(name => ({ id: name, name })), count: names.length }); } list.setClient(this.client); return Promise.resolve(list); } }; this.client = new ApiClient_1.DefaultApiClient('', null, null); } } exports.MockContentHub = MockContentHub; MockContentHub.throwOnGetSettings = false; MockContentHub.returnNullEndpoint = false; MockContentHub.throwOnAssetList = false; MockContentHub.missingAssetList = false; MockContentHub.requests = [];