From c206a94cf9b2173f191a4d5b46a9ad63e94c478c Mon Sep 17 00:00:00 2001 From: Saravanan S Date: Fri, 21 Mar 2025 14:28:07 +0530 Subject: [PATCH] fix: show save for editing tests in doc panel --- .../src/modules/documentationEditor/utils.ts | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/webview_panels/src/modules/documentationEditor/utils.ts b/webview_panels/src/modules/documentationEditor/utils.ts index 3e9227919..e0dedf76e 100644 --- a/webview_panels/src/modules/documentationEditor/utils.ts +++ b/webview_panels/src/modules/documentationEditor/utils.ts @@ -4,8 +4,11 @@ import { panelLogger } from "@modules/logger"; import { DBTDocumentation, DBTDocumentationColumn, + DbtGenericTests, DocumentationStateProps, Source, + TestMetadataAcceptedValuesKwArgs, + TestMetadataRelationshipsKwArgs, } from "./state/types"; import { GenerationDBDataProps } from "./types"; import { DataPilotChatAction } from "../dataPilot/types"; @@ -166,6 +169,30 @@ export const isStateDirty = (state: DocumentationStateProps): boolean => { if (!incomingTest) { return true; } + if (test.test_metadata?.name === DbtGenericTests.ACCEPTED_VALUES) { + if ( + ( + test.test_metadata?.kwargs as TestMetadataAcceptedValuesKwArgs + ).values?.join(",") !== + ( + incomingTest.test_metadata?.kwargs as TestMetadataAcceptedValuesKwArgs + ).values?.join(",") + ) { + return true; + } + } + if (test.test_metadata?.name === DbtGenericTests.RELATIONSHIPS) { + const currentTestsArgs = test.test_metadata + ?.kwargs as TestMetadataRelationshipsKwArgs; + const incomingTestsArgs = incomingTest.test_metadata + ?.kwargs as TestMetadataRelationshipsKwArgs; + if ( + currentTestsArgs.to !== incomingTestsArgs.to || + currentTestsArgs.field !== incomingTestsArgs.field + ) { + return true; + } + } } return false; };