"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const assert = require("assert");
const mynah_ui_1 = require("@aws/mynah-ui");
const pairProgramming_1 = require("./pairProgramming");
describe('pairProgramming', () => {
    describe('programmerModeCard', () => {
        it('has correct properties', () => {
            assert.equal(pairProgramming_1.programmerModeCard.type, mynah_ui_1.ChatItemType.ANSWER);
            assert.equal(pairProgramming_1.programmerModeCard.title, 'NEW FEATURE');
            assert.equal(pairProgramming_1.programmerModeCard.messageId, 'programmerModeCardId');
            assert.equal(pairProgramming_1.programmerModeCard.fullWidth, true);
            assert.equal(pairProgramming_1.programmerModeCard.canBeDismissed, true);
            assert.ok(pairProgramming_1.programmerModeCard.body?.includes('Amazon Q can now help'));
            assert.equal(pairProgramming_1.programmerModeCard.header?.icon, 'code-block');
            assert.equal(pairProgramming_1.programmerModeCard.header?.iconStatus, 'primary');
        });
    });
    describe('pairProgrammingPromptInput', () => {
        it('has correct properties', () => {
            assert.equal(pairProgramming_1.pairProgrammingPromptInput.type, 'switch');
            assert.equal(pairProgramming_1.pairProgrammingPromptInput.id, 'pair-programmer-mode');
            assert.equal(pairProgramming_1.pairProgrammingPromptInput.tooltip, 'Turn OFF agentic coding');
            if (pairProgramming_1.pairProgrammingPromptInput.type === 'switch') {
                // Type guard for switch type
                assert.equal(pairProgramming_1.pairProgrammingPromptInput.alternateTooltip, 'Turn ON agentic coding');
            }
            assert.equal(pairProgramming_1.pairProgrammingPromptInput.value, 'true');
            assert.equal(pairProgramming_1.pairProgrammingPromptInput.icon, 'code-block');
        });
    });
    describe('pairProgrammingModeOn', () => {
        it('has correct properties', () => {
            assert.equal(pairProgramming_1.pairProgrammingModeOn.type, mynah_ui_1.ChatItemType.DIRECTIVE);
            assert.equal(pairProgramming_1.pairProgrammingModeOn.contentHorizontalAlignment, 'center');
            assert.equal(pairProgramming_1.pairProgrammingModeOn.fullWidth, true);
            assert.equal(pairProgramming_1.pairProgrammingModeOn.body, 'Agentic coding - ON');
        });
    });
    describe('pairProgrammingModeOff', () => {
        it('has correct properties', () => {
            assert.equal(pairProgramming_1.pairProgrammingModeOff.type, mynah_ui_1.ChatItemType.DIRECTIVE);
            assert.equal(pairProgramming_1.pairProgrammingModeOff.contentHorizontalAlignment, 'center');
            assert.equal(pairProgramming_1.pairProgrammingModeOff.fullWidth, true);
            assert.equal(pairProgramming_1.pairProgrammingModeOff.body, 'Agentic coding - OFF');
        });
    });
});
//# sourceMappingURL=pairProgramming.test.js.map