| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- import { stringifyVsCodeLmModelSelector, SELECTOR_SEPARATOR } from '../vsCodeSelectorUtils';
- import { LanguageModelChatSelector } from 'vscode';
- describe('vsCodeSelectorUtils', () => {
- describe('stringifyVsCodeLmModelSelector', () => {
- it('should join all defined selector properties with separator', () => {
- const selector: LanguageModelChatSelector = {
- vendor: 'test-vendor',
- family: 'test-family',
- version: 'v1',
- id: 'test-id'
- };
- const result = stringifyVsCodeLmModelSelector(selector);
- expect(result).toBe('test-vendor/test-family/v1/test-id');
- });
- it('should skip undefined properties', () => {
- const selector: LanguageModelChatSelector = {
- vendor: 'test-vendor',
- family: 'test-family'
- };
- const result = stringifyVsCodeLmModelSelector(selector);
- expect(result).toBe('test-vendor/test-family');
- });
- it('should handle empty selector', () => {
- const selector: LanguageModelChatSelector = {};
- const result = stringifyVsCodeLmModelSelector(selector);
- expect(result).toBe('');
- });
- it('should handle selector with only one property', () => {
- const selector: LanguageModelChatSelector = {
- vendor: 'test-vendor'
- };
- const result = stringifyVsCodeLmModelSelector(selector);
- expect(result).toBe('test-vendor');
- });
- });
- });
|