@itwin/insights-client
Version:
Insights client for the iTwin platform
74 lines • 4.39 kB
JavaScript
/*---------------------------------------------------------------------------------------------
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
* See LICENSE.md in the project root for license terms and full copyright notice.
*--------------------------------------------------------------------------------------------*/
import { testUtilTypes } from "./imodels-client-test-utils/TestUtilTypes";
import { cleanupDirectory, createDirectory, createGuidValue } from "./imodels-client-test-utils/CommonTestUtils";
import { TestAuthorizationProvider } from "./imodels-client-test-utils/test-context-providers/auth/TestAuthorizationProvider";
import { ReusableTestIModelProvider } from "./imodels-client-test-utils/test-context-providers/imodel/ReusableTestIModelProvider";
import { TestITwinProvider } from "./imodels-client-test-utils/test-context-providers/itwin/TestITwinProvider";
import { TestConstants } from "./Constants";
import { getTestDIContainer } from "./TestDiContainerProvider";
import { ODataClient } from "../../reporting/clients/ODataClient";
import { ReportsClient } from "../../reporting/clients/ReportsClient";
import { EC3ConfigurationsClient } from "../../carbon-calculation/clients/EC3ConfigurationsClient";
import { EC3JobsClient } from "../../carbon-calculation/clients/EC3JobsClient";
import { AggregationsClient } from "../../reporting/clients/AggregationsClient";
import { MappingsClient } from "../../grouping-and-mapping/clients/MappingsClient";
import { GroupsClient } from "../../grouping-and-mapping/clients/GroupsClient";
import { PropertiesClient } from "../../grouping-and-mapping/clients/PropertiesClient";
import { CDMClient } from "../../grouping-and-mapping/clients/CDMClient";
import { ExtractionClient } from "../../grouping-and-mapping/clients/ExtractionClient";
import { AuditTrailClient } from "../../grouping-and-mapping/clients/AuditTrailClient";
import { NamedGroupsClient } from "../../named-groups/clients/NamedGroupsClient";
let testRunId;
export function getTestRunId() {
if (!testRunId) {
testRunId = createGuidValue();
}
return testRunId;
}
export let accessToken;
export let testIModel;
export let iTwinId;
export let reportsClient;
export let configurationsClient;
export let jobsClient;
export let extractionClient;
export let mappingsClient;
export let groupsClient;
export let namedGroupsClient;
export let propertiesClient;
export let oDataClient;
export let aggregationsClient;
export let cdmClient;
export let auditTrailClient;
export async function mochaGlobalSetup() {
createDirectory(TestConstants.testDownloadDirectoryPath);
cleanupDirectory(TestConstants.testDownloadDirectoryPath);
const container = getTestDIContainer();
const authorizationProvider = container.get(TestAuthorizationProvider);
const authorization = authorizationProvider.getAdmin1Authorization();
accessToken = `Bearer ${(await authorization()).token}`;
const testITwinProvider = container.get(TestITwinProvider);
iTwinId = await testITwinProvider.getOrCreate();
const reusableTestIModelProvider = container.get(ReusableTestIModelProvider);
testIModel = await reusableTestIModelProvider.getOrCreate();
const config = container.get(testUtilTypes.baseIntegrationTestsConfig);
reportsClient = new ReportsClient(config.apis.reporting.baseUrl);
configurationsClient = new EC3ConfigurationsClient(config.apis.carbonCalculation.baseUrl);
jobsClient = new EC3JobsClient(config.apis.carbonCalculation.baseUrl);
extractionClient = new ExtractionClient(config.apis.groupingAndMapping.baseUrl);
mappingsClient = new MappingsClient(config.apis.groupingAndMapping.baseUrl);
groupsClient = new GroupsClient(config.apis.groupingAndMapping.baseUrl);
namedGroupsClient = new NamedGroupsClient(config.apis.namedGroups.baseUrl);
propertiesClient = new PropertiesClient(config.apis.groupingAndMapping.baseUrl);
cdmClient = new CDMClient(config.apis.groupingAndMapping.baseUrl);
auditTrailClient = new AuditTrailClient(config.apis.groupingAndMapping.baseUrl);
oDataClient = new ODataClient(config.apis.reporting.baseUrl);
aggregationsClient = new AggregationsClient(config.apis.reporting.baseUrl);
}
export async function mochaGlobalTeardown() {
cleanupDirectory(TestConstants.testDownloadDirectoryPath);
}
//# sourceMappingURL=GlobalSetup.js.map