7d506bb0ec
10 вопросов-ответов простым языком над контактами — самопомощь новичка до обращения в поддержку (что такое заявка, как пополнить, почему списали, что значит хватит на N дней, почему пауза и т.д.). Тексты статически в коде. Контакт и форма обращения сохранены. Тест HelpView 3/3. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
42 lines
1.7 KiB
TypeScript
42 lines
1.7 KiB
TypeScript
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
|
import { mount } from '@vue/test-utils';
|
|
import { createPinia, setActivePinia } from 'pinia';
|
|
import { createVuetify } from 'vuetify';
|
|
import HelpView from '../../resources/js/views/HelpView.vue';
|
|
|
|
vi.mock('../../resources/js/api/support');
|
|
|
|
const vuetify = createVuetify();
|
|
|
|
describe('HelpView.vue', () => {
|
|
beforeEach(() => {
|
|
setActivePinia(createPinia());
|
|
});
|
|
|
|
const factory = () =>
|
|
mount(HelpView, {
|
|
global: { plugins: [vuetify, createPinia()] },
|
|
});
|
|
|
|
// Фаза 2 (UX-аудит 25.06): на «Помощи» есть FAQ — самопомощь до обращения.
|
|
it('показывает блок «Частые вопросы» с вопросами', () => {
|
|
const w = factory();
|
|
const text = w.text();
|
|
expect(text).toContain('Частые вопросы');
|
|
expect(text).toContain('Что такое «заявка»');
|
|
expect(text).toContain('Как пополнить баланс?');
|
|
expect(text).toContain('Почему приём заявок «на паузе»?');
|
|
});
|
|
|
|
it('FAQ-панелей столько же, сколько вопросов (10)', () => {
|
|
const w = factory();
|
|
expect(w.findAll('[data-testid="faq-panels"] .v-expansion-panel').length).toBe(10);
|
|
});
|
|
|
|
it('сохраняет контакт поддержки и форму обращения', () => {
|
|
const w = factory();
|
|
expect(w.find('[data-testid="support-email"]').exists()).toBe(true);
|
|
expect(w.find('[data-testid="support-submit"]').exists()).toBe(true);
|
|
});
|
|
});
|