diff --git a/app/resources/js/components/deals/DealDetailBody.vue b/app/resources/js/components/deals/DealDetailBody.vue
index 373e828f..dec04b43 100644
--- a/app/resources/js/components/deals/DealDetailBody.vue
+++ b/app/resources/js/components/deals/DealDetailBody.vue
@@ -133,7 +133,7 @@ async function saveComment() {
}
}
-// Загрузка при появлении/смене сделки (панель монтируется только при deal != null).
+// Загрузка при появлении/смене сделки. Компонент смонтирован всегда — тело (
) рендерится только при deal != null.
watch(
() => [props.deal?.id, props.tenantId] as const,
() => {
diff --git a/app/tests/Frontend/DealDetailDrawer.spec.ts b/app/tests/Frontend/DealDetailDrawer.spec.ts
index a51d8e6c..127d6500 100644
--- a/app/tests/Frontend/DealDetailDrawer.spec.ts
+++ b/app/tests/Frontend/DealDetailDrawer.spec.ts
@@ -12,11 +12,12 @@ const deal: MockDeal = {
};
function mountDrawer(props: Record) {
- setActivePinia(createPinia());
+ const pinia = createPinia();
+ setActivePinia(pinia);
return mount(DealDetailDrawer, {
props: { open: true, deal, ...props },
global: {
- plugins: [vuetify, createPinia()],
+ plugins: [vuetify, pinia],
stubs: {
DealDetailBody: true,
VNavigationDrawer: {
diff --git a/app/tests/Frontend/DealDetailDrawerApi.spec.ts b/app/tests/Frontend/DealDetailDrawerApi.spec.ts
index 4aad5365..9b32bd35 100644
--- a/app/tests/Frontend/DealDetailDrawerApi.spec.ts
+++ b/app/tests/Frontend/DealDetailDrawerApi.spec.ts
@@ -107,12 +107,6 @@ describe('DealDetailBody ↔ GET /api/deals/{id} integration', () => {
expect(items).toHaveLength(0);
});
- it('без tenantId → getDeal не вызывается (body загружается по deal/tenantId)', async () => {
- factory({});
- await flushPromises();
- expect(dealsApi.getDeal).not.toHaveBeenCalled();
- });
-
it('saveComment вызывает updateDeal + toast success + reload events', async () => {
const apiResponse: GetDealResponse = {
deal: {