"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const language_switch_assistant_1 = require("../language-switch-assistant");
describe('LanguageSwitchAssistant', () => {
    let assistant;
    beforeEach(() => {
        assistant = new language_switch_assistant_1.LanguageSwitchAssistant();
    });
    test('returns guide for typescript→python', () => {
        const guide = assistant.getGuide('typescript', 'python');
        expect(guide).not.toBeNull();
        expect(guide.gotchas.length).toBeGreaterThan(0);
    });
    test('returns guide for typescript→rust', () => {
        const guide = assistant.getGuide('typescript', 'rust');
        expect(guide).not.toBeNull();
    });
    test('returns null for unknown transition', () => {
        expect(assistant.getGuide('haskell', 'cobol')).toBeNull();
    });
    test('getAvailableTransitions returns list', () => {
        const transitions = assistant.getAvailableTransitions();
        expect(transitions.length).toBeGreaterThan(0);
    });
    test('translates style patterns', () => {
        const translated = assistant.translateStyle('const x = 1;', 'typescript', 'python');
        expect(translated).not.toContain('const');
    });
    test('getStyleTips returns tips', () => {
        const tips = assistant.getStyleTips('typescript', 'python');
        expect(tips.length).toBeGreaterThan(0);
    });
});
//# sourceMappingURL=language-switch-assistant.test.js.map