@finos/legend-studio
Version:
129 lines • 5.62 kB
TypeScript
/**
* Copyright (c) 2020-present, Goldman Sachs
*
* 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.
*/
/// <reference types="react" resolution-mode="require"/>
import { type RenderResult } from '@testing-library/react';
import { EditorStore } from '../stores/EditorStore.js';
import { type PlainObject } from '@finos/legend-shared';
import { LegendStudioPluginManager } from '../application/LegendStudioPluginManager.js';
import type { Entity } from '@finos/legend-model-storage';
import { type Project, type ProjectConfiguration, type ProjectStructureVersion, type Revision, type SDLCServerClient, type Version, type Workspace } from '@finos/legend-server-sdlc';
import { type ImportConfigurationDescription, type ImportMode, type GenerationConfigurationDescription, type GenerationMode, type GraphManagerState } from '@finos/legend-graph';
import { type DepotServerClient, type ProjectData, type ProjectVersionEntities } from '@finos/legend-server-depot';
import type { LegendStudioApplicationStore } from '../stores/LegendStudioBaseStore.js';
export declare const TEST_DATA__DefaultSDLCInfo: {
project: {
projectId: string;
description: string;
tags: never[];
name: string;
};
workspace: {
projectId: string;
userId: string;
workspaceId: string;
};
currentRevision: {
authoredAt: number;
committedAt: number;
committerName: string;
authorName: string;
message: string;
id: string;
};
projectConfig: {
projectStructureVersion: {
version: number;
extensionVersion: number;
};
projectId: string;
groupId: string;
artifactId: string;
projectDependencies: never[];
metamodelDependencies: never[];
};
latestProjectStructureVersion: {
version: number;
extensionVersion: number;
};
availableSchemaImports: {
label: string;
key: string;
modelImportMode: ImportMode;
}[];
availableCodeImports: {
label: string;
key: string;
modelImportMode: ImportMode;
}[];
availableSchemaGenerations: GenerationConfigurationDescription[];
availableCodeGenerations: {
label: string;
properties: never[];
key: string;
generationMode: GenerationMode;
}[];
};
export declare const TEST__LegendStudioBaseStoreProvider: React.FC<{
children: React.ReactNode;
}>;
export declare const TEST__provideMockedEditorStore: (customization?: {
mock?: EditorStore;
applicationStore?: LegendStudioApplicationStore;
sdlcServerClient?: SDLCServerClient;
depotServerClient?: DepotServerClient;
graphManagerState?: GraphManagerState;
pluginManager?: LegendStudioPluginManager;
}) => EditorStore;
export declare const TEST__openAndAssertPathWithElement: (path: string, renderResult: RenderResult, closePackage?: boolean) => Promise<void>;
export declare const TEST__openElementFromExplorerTree: (path: string, renderResult: RenderResult) => Promise<void>;
/**
* Setup the editor for testing, takes in a mocked editor store and data for initialization.
* This methods helps mock certain feature initialization of the editor as well as to ensure to return
* when the editor is ready.
*
* NOTE: this only provides basic initialization for the editor so that it starts up properly, for other test
* cases, such as for the SDLC flow, we might want to customize this method or have a completely different
* setup method
*/
export declare const TEST__setUpEditor: (MOCK__editorStore: EditorStore, data: {
project: PlainObject<Project>;
workspace: PlainObject<Workspace>;
curentRevision: PlainObject<Revision>;
entities: PlainObject<Entity>[];
projectVersions: PlainObject<Version>[];
projectConfiguration: PlainObject<ProjectConfiguration>;
latestProjectStructureVersion: PlainObject<ProjectStructureVersion>;
availableGenerationDescriptions: GenerationConfigurationDescription[];
availableImportDescriptions: ImportConfigurationDescription[];
projects: PlainObject<ProjectData>[];
projectData: PlainObject<ProjectData>[];
projectDependency: PlainObject<ProjectVersionEntities>[];
}) => Promise<RenderResult>;
export declare const TEST__setUpEditorWithDefaultSDLCData: (MOCK__editorStore: EditorStore, overrides?: {
project?: PlainObject<Project>;
workspace?: PlainObject<Workspace>;
curentRevision?: PlainObject<Revision>;
entities?: PlainObject<Entity>[];
projectVersions?: PlainObject<Version>[];
projectConfiguration?: PlainObject<ProjectConfiguration>;
latestProjectStructureVersion?: PlainObject<ProjectStructureVersion>;
availableGenerationDescriptions?: GenerationConfigurationDescription[];
availableImportDescriptions?: ImportConfigurationDescription[];
projects?: PlainObject<ProjectData>[];
projectData?: PlainObject<ProjectData>[];
projectDependency?: PlainObject<ProjectVersionEntities>[];
}) => Promise<RenderResult>;
//# sourceMappingURL=EditorComponentTestUtils.d.ts.map