@nicodoggie/node-kiwi-tcms-api
Version:
Vibe-coded Node.js wrapper for Kiwi TCMS XML-RPC API. Use at your own risk.
66 lines (65 loc) • 1.93 kB
TypeScript
import { KiwiClient } from '../client';
import { TestPlan, TestPlanFilter, TestPlanWithPermalinks, FilterOutputOptions, Attachment, Tag } from '../types';
/**
* Test Plan API module
*/
export declare class TestPlanAPI {
private client;
constructor(client: KiwiClient);
/**
* Create a new test plan
*/
create(testPlanData: Partial<TestPlan>): Promise<TestPlan>;
/**
* Filter test plans
*/
filter(query?: TestPlanFilter): Promise<TestPlan[]>;
/**
* Filter test plans with output options
*/
filter(query: TestPlanFilter | undefined, options: FilterOutputOptions): Promise<TestPlan[] | TestPlanWithPermalinks[]>;
/**
* Get the URL API instance for permalink injection
* @private
*/
private getUrlApi;
/**
* Update a test plan
*/
update(testPlanId: number, updateData: Partial<TestPlan>): Promise<TestPlan>;
/**
* Add a test case to test plan
*/
addCase(testPlanId: number, testCaseId: number): Promise<void>;
/**
* Remove a test case from test plan
*/
removeCase(testPlanId: number, testCaseId: number): Promise<void>;
/**
* Update test case order in test plan
*/
updateCaseOrder(testPlanId: number, caseOrders: {
case_id: number;
sortkey: number;
}[]): Promise<void>;
/**
* Add a tag to test plan
*/
addTag(testPlanId: number, tag: string): Promise<Tag>;
/**
* Remove a tag from test plan
*/
removeTag(testPlanId: number, tag: string): Promise<void>;
/**
* Add an attachment to test plan
*/
addAttachment(testPlanId: number, filename: string, b64content: string): Promise<Attachment>;
/**
* List attachments for test plan
*/
listAttachments(testPlanId: number): Promise<Attachment[]>;
/**
* Get test plan tree structure
*/
tree(testPlanId?: number): Promise<any>;
}