mirror of
https://github.com/microsoft/vscode.git
synced 2026-05-08 17:19:48 +01:00
Fix LanguageModelToolResultPart2 inheritance for instanceof checks (#264362)
* Initial plan * Fix LanguageModelToolResultPart2 inheritance for instanceof checks Co-authored-by: connor4312 <2230985+connor4312@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: connor4312 <2230985+connor4312@users.noreply.github.com>
This commit is contained in:
@@ -3468,16 +3468,13 @@ export class LanguageModelToolResultPart implements vscode.LanguageModelToolResu
|
||||
}
|
||||
}
|
||||
|
||||
export class LanguageModelToolResultPart2 implements vscode.LanguageModelToolResultPart2 {
|
||||
export class LanguageModelToolResultPart2 extends LanguageModelToolResultPart implements vscode.LanguageModelToolResultPart2 {
|
||||
|
||||
callId: string;
|
||||
content: (LanguageModelTextPart | LanguageModelPromptTsxPart | LanguageModelDataPart | unknown)[];
|
||||
isError: boolean;
|
||||
declare content: (LanguageModelTextPart | LanguageModelPromptTsxPart | LanguageModelDataPart | unknown)[];
|
||||
|
||||
constructor(callId: string, content: (LanguageModelTextPart | LanguageModelPromptTsxPart | LanguageModelDataPart | unknown)[], isError?: boolean) {
|
||||
this.callId = callId;
|
||||
super(callId, content, isError);
|
||||
this.content = content;
|
||||
this.isError = isError ?? false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -783,4 +783,21 @@ suite('ExtHostTypes', function () {
|
||||
m.content = 'Hello';
|
||||
assert.deepStrictEqual(m.content, [new types.LanguageModelTextPart('Hello')]);
|
||||
});
|
||||
|
||||
test('LanguageModelToolResultPart2 instanceof LanguageModelToolResultPart', function () {
|
||||
// Test that LanguageModelToolResultPart2 extends LanguageModelToolResultPart for instanceof checks
|
||||
const part1 = new types.LanguageModelToolResultPart('call1', [new types.LanguageModelTextPart('text')]);
|
||||
const part2 = new types.LanguageModelToolResultPart2('call2', [new types.LanguageModelTextPart('text')]);
|
||||
|
||||
// Basic instanceof checks
|
||||
assert.ok(part1 instanceof types.LanguageModelToolResultPart);
|
||||
assert.ok(part2 instanceof types.LanguageModelToolResultPart, 'LanguageModelToolResultPart2 should be instanceof LanguageModelToolResultPart');
|
||||
assert.ok(part2 instanceof types.LanguageModelToolResultPart2);
|
||||
|
||||
// Verify properties are accessible
|
||||
assert.strictEqual(part1.callId, 'call1');
|
||||
assert.strictEqual(part2.callId, 'call2');
|
||||
assert.strictEqual(part1.isError, false);
|
||||
assert.strictEqual(part2.isError, false);
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user