UNPKG

testrail-modern-client

Version:
92 lines (91 loc) 4.46 kB
import { AddConfig, AddConfigGroup, Config, ConfigGroup, UpdateConfig, UpdateConfigGroup } from '../models/configurations'; import { BaseService } from './base'; /** * Service class for managing TestRail configurations and configuration groups. * Configurations are used to define different test environments or variations for test plans. */ export declare class ConfigurationService extends BaseService { /** * Returns a list of available configurations, grouped by configuration groups. * * API Path: GET index.php?/api/v2/get_configs/:project_id * * @param projectId The ID of the project * @returns An array of configuration groups, each containing a list of configurations * @throws {Error} 400 - Invalid or unknown project * @throws {Error} 403 - No access to the project */ getConfigs(projectId: number): Promise<ConfigGroup[]>; /** * Creates a new configuration group. * * API Path: POST index.php?/api/v2/add_config_group/:project_id * * @param projectId The ID of the project the configuration group should be added to * @param group The configuration group to add (requires name property) * @returns The created configuration group * @throws {Error} 400 - Invalid or unknown project * @throws {Error} 403 - No permissions to add configuration groups or no access to the project */ addConfigGroup(projectId: number, group: AddConfigGroup): Promise<ConfigGroup>; /** * Creates a new configuration within a configuration group. * * API Path: POST index.php?/api/v2/add_config/:config_group_id * * @param configGroupId The ID of the configuration group the configuration should be added to * @param config The configuration to add (requires name property) * @returns The created configuration * @throws {Error} 400 - Invalid or unknown configuration group * @throws {Error} 403 - No permissions to add configurations or no access to the project */ addConfig(configGroupId: number, config: AddConfig): Promise<Config>; /** * Updates an existing configuration group. * * API Path: POST index.php?/api/v2/update_config_group/:config_group_id * * @param configGroupId The ID of the configuration group * @param group The configuration group updates (name property) * @returns The updated configuration group * @throws {Error} 400 - Invalid or unknown configuration group * @throws {Error} 403 - No permissions to modify configuration groups or no access to the project */ updateConfigGroup(configGroupId: number, group: UpdateConfigGroup): Promise<ConfigGroup>; /** * Updates an existing configuration. * * API Path: POST index.php?/api/v2/update_config/:config_id * * @param configId The ID of the configuration * @param config The configuration updates (name property) * @returns The updated configuration * @throws {Error} 400 - Invalid or unknown configuration * @throws {Error} 403 - No permissions to modify configurations or no access to the project */ updateConfig(configId: number, config: UpdateConfig): Promise<Config>; /** * Deletes an existing configuration group and its configurations. * Warning: This operation cannot be undone and permanently deletes all configurations in this group. * Note: It does not affect closed test plans/runs, or active test plans/runs unless they are updated. * * API Path: POST index.php?/api/v2/delete_config_group/:config_group_id * * @param configGroupId The ID of the configuration group * @throws {Error} 400 - Invalid or unknown configuration group * @throws {Error} 403 - No permissions to delete configuration groups or no access to the project */ deleteConfigGroup(configGroupId: number): Promise<void>; /** * Deletes an existing configuration. * Warning: This operation cannot be undone. * Note: It does not affect closed test plans/runs, or active test plans/runs unless they are updated. * * API Path: POST index.php?/api/v2/delete_config/:config_id * * @param configId The ID of the configuration * @throws {Error} 400 - Invalid or unknown configuration * @throws {Error} 403 - No permissions to delete configurations or no access to the project */ deleteConfig(configId: number): Promise<void>; }