@finos/legend-graph 32.6.1 → 32.6.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/graph/BasicModel.d.ts.map +1 -1
- package/lib/graph/BasicModel.js +1 -0
- package/lib/graph/BasicModel.js.map +1 -1
- package/lib/graph/Core_HashUtils.d.ts +7 -0
- package/lib/graph/Core_HashUtils.d.ts.map +1 -1
- package/lib/graph/Core_HashUtils.js +7 -0
- package/lib/graph/Core_HashUtils.js.map +1 -1
- package/lib/graph/MetaModelConst.d.ts +9 -1
- package/lib/graph/MetaModelConst.d.ts.map +1 -1
- package/lib/graph/MetaModelConst.js +9 -0
- package/lib/graph/MetaModelConst.js.map +1 -1
- package/lib/graph/metamodel/pure/data/DataResolver.d.ts +32 -0
- package/lib/graph/metamodel/pure/data/DataResolver.d.ts.map +1 -0
- package/lib/graph/metamodel/pure/data/DataResolver.js +40 -0
- package/lib/graph/metamodel/pure/data/DataResolver.js.map +1 -0
- package/lib/graph/metamodel/pure/data/EmbeddedData.d.ts +1 -1
- package/lib/graph/metamodel/pure/data/EmbeddedData.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/data/EmbeddedData.js +2 -2
- package/lib/graph/metamodel/pure/data/EmbeddedData.js.map +1 -1
- package/lib/graph/metamodel/pure/dataProduct/DataProduct.d.ts +6 -1
- package/lib/graph/metamodel/pure/dataProduct/DataProduct.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/dataProduct/DataProduct.js +3 -0
- package/lib/graph/metamodel/pure/dataProduct/DataProduct.js.map +1 -1
- package/lib/graph/metamodel/pure/dataProduct/test/DataProductAccessPointTest.d.ts +22 -0
- package/lib/graph/metamodel/pure/dataProduct/test/DataProductAccessPointTest.d.ts.map +1 -0
- package/lib/graph/metamodel/pure/dataProduct/test/DataProductAccessPointTest.js +31 -0
- package/lib/graph/metamodel/pure/dataProduct/test/DataProductAccessPointTest.js.map +1 -0
- package/lib/graph/metamodel/pure/dataProduct/test/DataProductTestSuite.d.ts +23 -0
- package/lib/graph/metamodel/pure/dataProduct/test/DataProductTestSuite.d.ts.map +1 -0
- package/lib/graph/metamodel/pure/dataProduct/test/DataProductTestSuite.js +31 -0
- package/lib/graph/metamodel/pure/dataProduct/test/DataProductTestSuite.js.map +1 -0
- package/lib/graph/metamodel/pure/packageableElements/relation/Accessor.d.ts +9 -2
- package/lib/graph/metamodel/pure/packageableElements/relation/Accessor.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/packageableElements/relation/Accessor.js +18 -1
- package/lib/graph/metamodel/pure/packageableElements/relation/Accessor.js.map +1 -1
- package/lib/graph/metamodel/pure/test/assertion/EqualToRelation.d.ts +23 -0
- package/lib/graph/metamodel/pure/test/assertion/EqualToRelation.d.ts.map +1 -0
- package/lib/graph/metamodel/pure/test/assertion/EqualToRelation.js +32 -0
- package/lib/graph/metamodel/pure/test/assertion/EqualToRelation.js.map +1 -0
- package/lib/graph/metamodel/pure/test/assertion/TestAssertion.d.ts +2 -0
- package/lib/graph/metamodel/pure/test/assertion/TestAssertion.d.ts.map +1 -1
- package/lib/graph/metamodel/pure/test/assertion/TestAssertion.js.map +1 -1
- package/lib/graph/metamodel/pure/test/assertion/status/EqualToRelationAssertFail.d.ts +21 -0
- package/lib/graph/metamodel/pure/test/assertion/status/EqualToRelationAssertFail.d.ts.map +1 -0
- package/lib/graph/metamodel/pure/test/assertion/status/EqualToRelationAssertFail.js +21 -0
- package/lib/graph/metamodel/pure/test/assertion/status/EqualToRelationAssertFail.js.map +1 -0
- package/lib/graph-manager/AbstractPureGraphManager.d.ts +8 -2
- package/lib/graph-manager/AbstractPureGraphManager.d.ts.map +1 -1
- package/lib/graph-manager/AbstractPureGraphManager.js.map +1 -1
- package/lib/graph-manager/action/changeDetection/DataProductObserveHelper.d.ts +7 -2
- package/lib/graph-manager/action/changeDetection/DataProductObserveHelper.d.ts.map +1 -1
- package/lib/graph-manager/action/changeDetection/DataProductObserveHelper.js +38 -4
- package/lib/graph-manager/action/changeDetection/DataProductObserveHelper.js.map +1 -1
- package/lib/graph-manager/action/changeDetection/PackageableElementObserver.js +1 -1
- package/lib/graph-manager/action/changeDetection/PackageableElementObserver.js.map +1 -1
- package/lib/graph-manager/action/changeDetection/Testable_ObserverHelper.d.ts +2 -0
- package/lib/graph-manager/action/changeDetection/Testable_ObserverHelper.d.ts.map +1 -1
- package/lib/graph-manager/action/changeDetection/Testable_ObserverHelper.js +15 -0
- package/lib/graph-manager/action/changeDetection/Testable_ObserverHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.d.ts +8 -2
- package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.js +58 -5
- package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/helpers/V1_AccessorHelper.d.ts +23 -1
- package/lib/graph-manager/protocol/pure/v1/helpers/V1_AccessorHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/helpers/V1_AccessorHelper.js +163 -5
- package/lib/graph-manager/protocol/pure/v1/helpers/V1_AccessorHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/data/V1_DataResolver.d.ts +31 -0
- package/lib/graph-manager/protocol/pure/v1/model/data/V1_DataResolver.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/model/data/V1_DataResolver.js +40 -0
- package/lib/graph-manager/protocol/pure/v1/model/data/V1_DataResolver.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/model/data/V1_EmbeddedData.d.ts +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/data/V1_EmbeddedData.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/data/V1_EmbeddedData.js +2 -2
- package/lib/graph-manager/protocol/pure/v1/model/data/V1_EmbeddedData.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/V1_DataProduct.d.ts +2 -0
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/V1_DataProduct.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/V1_DataProduct.js +2 -0
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/V1_DataProduct.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/test/V1_AccessPointTest.d.ts +22 -0
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/test/V1_AccessPointTest.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/test/V1_AccessPointTest.js +31 -0
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/test/V1_AccessPointTest.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/test/V1_DataProductTestSuite.d.ts +23 -0
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/test/V1_DataProductTestSuite.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/test/V1_DataProductTestSuite.js +31 -0
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/test/V1_DataProductTestSuite.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/ingest/V1_IngestDefinition.d.ts +19 -0
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/ingest/V1_IngestDefinition.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/ingest/V1_IngestDefinition.js +20 -0
- package/lib/graph-manager/protocol/pure/v1/model/packageableElements/ingest/V1_IngestDefinition.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/test/assertion/V1_EqualToRelation.d.ts +23 -0
- package/lib/graph-manager/protocol/pure/v1/model/test/assertion/V1_EqualToRelation.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/model/test/assertion/V1_EqualToRelation.js +32 -0
- package/lib/graph-manager/protocol/pure/v1/model/test/assertion/V1_EqualToRelation.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/model/test/assertion/V1_TestAssertion.d.ts +2 -0
- package/lib/graph-manager/protocol/pure/v1/model/test/assertion/V1_TestAssertion.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/test/assertion/V1_TestAssertion.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/model/test/assertion/status/V1_EqualToRelationAssertFail.d.ts +23 -0
- package/lib/graph-manager/protocol/pure/v1/model/test/assertion/status/V1_EqualToRelationAssertFail.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/model/test/assertion/status/V1_EqualToRelationAssertFail.js +32 -0
- package/lib/graph-manager/protocol/pure/v1/model/test/assertion/status/V1_EqualToRelationAssertFail.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataProductTransformer.d.ts +6 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataProductTransformer.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataProductTransformer.js +31 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataProductTransformer.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataResolverTransformer.d.ts +20 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataResolverTransformer.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataResolverTransformer.js +35 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataResolverTransformer.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_TestTransformer.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_TestTransformer.js +20 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_TestTransformer.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.js +4 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_DataProductBuilder.d.ts +3 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_DataProductBuilder.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_DataProductBuilder.js +29 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_DataProductBuilder.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_DataResolverBuilderHelper.d.ts +20 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_DataResolverBuilderHelper.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_DataResolverBuilderHelper.js +34 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_DataResolverBuilderHelper.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_TestBuilderHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_TestBuilderHelper.js +21 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_TestBuilderHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_TestResultBuilderHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_TestResultBuilderHelper.js +23 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_TestResultBuilderHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.js +17 -3
- package/lib/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataElementSerializationHelper.js +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataElementSerializationHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataProductSerializationHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataProductSerializationHelper.js +25 -3
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataProductSerializationHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataResolverSerializationHelper.d.ts +21 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataResolverSerializationHelper.d.ts.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataResolverSerializationHelper.js +59 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataResolverSerializationHelper.js.map +1 -0
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_IngestSerializationHelper.d.ts +3 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_IngestSerializationHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_IngestSerializationHelper.js +36 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_IngestSerializationHelper.js.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_TestSerializationHelper.d.ts +4 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_TestSerializationHelper.d.ts.map +1 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_TestSerializationHelper.js +27 -1
- package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_TestSerializationHelper.js.map +1 -1
- package/lib/index.d.ts +15 -5
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +15 -5
- package/lib/index.js.map +1 -1
- package/lib/package.json +1 -1
- package/package.json +3 -3
- package/src/graph/BasicModel.ts +1 -0
- package/src/graph/Core_HashUtils.ts +7 -0
- package/src/graph/MetaModelConst.ts +10 -0
- package/src/graph/metamodel/pure/data/DataResolver.ts +49 -0
- package/src/graph/metamodel/pure/data/EmbeddedData.ts +2 -2
- package/src/graph/metamodel/pure/dataProduct/DataProduct.ts +7 -1
- package/src/graph/metamodel/pure/dataProduct/test/DataProductAccessPointTest.ts +33 -0
- package/src/graph/metamodel/pure/dataProduct/test/DataProductTestSuite.ts +34 -0
- package/src/graph/metamodel/pure/packageableElements/relation/Accessor.ts +21 -3
- package/src/graph/metamodel/pure/test/assertion/EqualToRelation.ts +36 -0
- package/src/graph/metamodel/pure/test/assertion/TestAssertion.ts +2 -0
- package/src/graph/metamodel/pure/test/assertion/status/EqualToRelationAssertFail.ts +22 -0
- package/src/graph-manager/AbstractPureGraphManager.ts +29 -3
- package/src/graph-manager/action/changeDetection/DataProductObserveHelper.ts +58 -4
- package/src/graph-manager/action/changeDetection/PackageableElementObserver.ts +1 -1
- package/src/graph-manager/action/changeDetection/Testable_ObserverHelper.ts +17 -0
- package/src/graph-manager/protocol/pure/v1/V1_PureGraphManager.ts +104 -5
- package/src/graph-manager/protocol/pure/v1/helpers/V1_AccessorHelper.ts +352 -5
- package/src/graph-manager/protocol/pure/v1/model/data/V1_DataResolver.ts +51 -0
- package/src/graph-manager/protocol/pure/v1/model/data/V1_EmbeddedData.ts +2 -2
- package/src/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/V1_DataProduct.ts +3 -0
- package/src/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/test/V1_AccessPointTest.ts +33 -0
- package/src/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/test/V1_DataProductTestSuite.ts +34 -0
- package/src/graph-manager/protocol/pure/v1/model/packageableElements/ingest/V1_IngestDefinition.ts +24 -0
- package/src/graph-manager/protocol/pure/v1/model/test/assertion/V1_EqualToRelation.ts +39 -0
- package/src/graph-manager/protocol/pure/v1/model/test/assertion/V1_TestAssertion.ts +2 -0
- package/src/graph-manager/protocol/pure/v1/model/test/assertion/status/V1_EqualToRelationAssertFail.ts +37 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataProductTransformer.ts +47 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataResolverTransformer.ts +55 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_TestTransformer.ts +25 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/V1_ElementSecondPassBuilder.ts +6 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_DataProductBuilder.ts +46 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_DataResolverBuilderHelper.ts +54 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_TestBuilderHelper.ts +28 -1
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_TestResultBuilderHelper.ts +40 -1
- package/src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationBuilderHelper.ts +48 -4
- package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataElementSerializationHelper.ts +1 -1
- package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataProductSerializationHelper.ts +64 -8
- package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataResolverSerializationHelper.ts +97 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_IngestSerializationHelper.ts +64 -0
- package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_TestSerializationHelper.ts +35 -1
- package/src/index.ts +26 -1
- package/tsconfig.json +13 -0
|
@@ -127,7 +127,14 @@ import {
|
|
|
127
127
|
V1_IngestDefinitionAccessor,
|
|
128
128
|
V1_DataProductAccessor,
|
|
129
129
|
} from '../../../../model/valueSpecification/raw/classInstance/relation/V1_RelationStoreAccessor.js';
|
|
130
|
-
import {
|
|
130
|
+
import {
|
|
131
|
+
AccessorInstanceValue,
|
|
132
|
+
DataProductAccessor,
|
|
133
|
+
} from '../../../../../../../../graph/metamodel/pure/packageableElements/relation/Accessor.js';
|
|
134
|
+
import {
|
|
135
|
+
DataProduct,
|
|
136
|
+
LakehouseAccessPoint,
|
|
137
|
+
} from '../../../../../../../../graph/metamodel/pure/dataProduct/DataProduct.js';
|
|
131
138
|
import { V1_createAccessorFromPackageableElement } from '../../../../helpers/V1_AccessorHelper.js';
|
|
132
139
|
import { Database } from '../../../../../../../../graph/metamodel/pure/packageableElements/store/relational/model/Database.js';
|
|
133
140
|
import { IngestDefinition } from '../../../../../../../../graph/metamodel/pure/packageableElements/ingest/IngestDefinition.js';
|
|
@@ -597,10 +604,47 @@ export class V1_ValueSpecificationBuilder
|
|
|
597
604
|
valueSpecification.value,
|
|
598
605
|
V1_DataProductAccessor,
|
|
599
606
|
);
|
|
600
|
-
const
|
|
601
|
-
|
|
602
|
-
`Can't build
|
|
607
|
+
const dataProductPath = guaranteeNonNullable(
|
|
608
|
+
protocol.path[0],
|
|
609
|
+
`Can't build data product accessor: missing data product path`,
|
|
610
|
+
);
|
|
611
|
+
const accessPointId = guaranteeNonNullable(
|
|
612
|
+
protocol.path[1],
|
|
613
|
+
`Can't build data product accessor for data product '${dataProductPath}': missing access point id`,
|
|
614
|
+
);
|
|
615
|
+
const dataProduct = guaranteeType(
|
|
616
|
+
this.context.resolveElement(dataProductPath, false).value,
|
|
617
|
+
DataProduct,
|
|
618
|
+
`Can't build data product accessor: element '${dataProductPath}' is not a data product`,
|
|
619
|
+
);
|
|
620
|
+
const accessPoint = dataProduct.accessPointGroups
|
|
621
|
+
.flatMap((group) => group.accessPoints)
|
|
622
|
+
.find(
|
|
623
|
+
(ap): ap is LakehouseAccessPoint =>
|
|
624
|
+
ap instanceof LakehouseAccessPoint && ap.id === accessPointId,
|
|
625
|
+
);
|
|
626
|
+
if (!accessPoint) {
|
|
627
|
+
throw new UnsupportedOperationError(
|
|
628
|
+
`Can't build data product accessor: lakehouse access point '${accessPointId}' not found in data product '${dataProductPath}'`,
|
|
629
|
+
);
|
|
630
|
+
}
|
|
631
|
+
const relationType = guaranteeNonNullable(
|
|
632
|
+
accessPoint.__internal__RelationType,
|
|
633
|
+
`Can't build data product accessor for '${dataProductPath}.${accessPointId}': relation type has not been resolved on the access point`,
|
|
634
|
+
);
|
|
635
|
+
const accessor = new DataProductAccessor(
|
|
636
|
+
dataProductPath,
|
|
637
|
+
accessPoint.__owner.id,
|
|
638
|
+
accessPointId,
|
|
639
|
+
relationType,
|
|
640
|
+
dataProduct,
|
|
641
|
+
);
|
|
642
|
+
const accessorInstanceValue = new AccessorInstanceValue();
|
|
643
|
+
accessorInstanceValue.values = [accessor];
|
|
644
|
+
accessorInstanceValue.genericType = GenericTypeExplicitReference.create(
|
|
645
|
+
new GenericType(accessor.relationType),
|
|
603
646
|
);
|
|
647
|
+
return accessorInstanceValue;
|
|
604
648
|
}
|
|
605
649
|
default: {
|
|
606
650
|
const builders = this.context.extensions.plugins.flatMap(
|
|
@@ -145,8 +145,8 @@ export const V1_relationRowTestDataModelSchema = createModelSchema(
|
|
|
145
145
|
export const V1_relationElementModelSchema = createModelSchema(
|
|
146
146
|
V1_RelationElement,
|
|
147
147
|
{
|
|
148
|
-
paths: list(primitive()),
|
|
149
148
|
columns: list(primitive()),
|
|
149
|
+
paths: list(primitive()),
|
|
150
150
|
rows: list(usingModelSchema(V1_relationRowTestDataModelSchema)),
|
|
151
151
|
},
|
|
152
152
|
);
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
import {
|
|
18
18
|
createModelSchema,
|
|
19
|
+
custom,
|
|
19
20
|
deserialize,
|
|
20
21
|
list,
|
|
21
22
|
optional,
|
|
@@ -83,6 +84,17 @@ import {
|
|
|
83
84
|
import type { PureProtocolProcessorPlugin } from '../../../../PureProtocolProcessorPlugin.js';
|
|
84
85
|
import { V1_AppDirNodeModelSchema } from './lakehouse/V1_CoreEntitlementsSerializationHelper.js';
|
|
85
86
|
import type { V1_EmbeddedData } from '../../../model/data/V1_EmbeddedData.js';
|
|
87
|
+
import { V1_AccessPointTest } from '../../../model/packageableElements/dataProduct/test/V1_AccessPointTest.js';
|
|
88
|
+
import { V1_DataProductTestSuite } from '../../../model/packageableElements/dataProduct/test/V1_DataProductTestSuite.js';
|
|
89
|
+
import {
|
|
90
|
+
V1_deserializeTestAssertion,
|
|
91
|
+
V1_serializeTestAssertion,
|
|
92
|
+
} from './V1_TestSerializationHelper.js';
|
|
93
|
+
import type { V1_DataResolver } from '../../../model/data/V1_DataResolver.js';
|
|
94
|
+
import {
|
|
95
|
+
V1_deserializeDataResolver,
|
|
96
|
+
V1_serializeDataResolver,
|
|
97
|
+
} from './V1_DataResolverSerializationHelper.js';
|
|
86
98
|
|
|
87
99
|
export enum V1_AccessPointType {
|
|
88
100
|
LAKEHOUSE = 'lakehouseAccessPoint',
|
|
@@ -110,6 +122,41 @@ export enum V1_DataProductIconLibraryId {
|
|
|
110
122
|
REACT_ICONS = 'react-icons',
|
|
111
123
|
}
|
|
112
124
|
|
|
125
|
+
const V1_accessPointTestModelSchema = createModelSchema(V1_AccessPointTest, {
|
|
126
|
+
_type: usingConstantValueSchema('accessPointTest'),
|
|
127
|
+
accessPointId: primitive(),
|
|
128
|
+
assertions: list(
|
|
129
|
+
custom(
|
|
130
|
+
(val) => V1_serializeTestAssertion(val),
|
|
131
|
+
(val) => V1_deserializeTestAssertion(val),
|
|
132
|
+
),
|
|
133
|
+
),
|
|
134
|
+
doc: optional(primitive()),
|
|
135
|
+
id: primitive(),
|
|
136
|
+
});
|
|
137
|
+
|
|
138
|
+
const V1_dataProductTestSuiteModelSchema = (
|
|
139
|
+
plugins: PureProtocolProcessorPlugin[],
|
|
140
|
+
): ModelSchema<V1_DataProductTestSuite> =>
|
|
141
|
+
createModelSchema(V1_DataProductTestSuite, {
|
|
142
|
+
doc: optional(primitive()),
|
|
143
|
+
id: primitive(),
|
|
144
|
+
testData: customList(
|
|
145
|
+
(value: V1_DataResolver) => V1_serializeDataResolver(value, plugins),
|
|
146
|
+
(value) => V1_deserializeDataResolver(value, plugins),
|
|
147
|
+
{
|
|
148
|
+
INTERNAL__forceReturnEmptyInTest: true,
|
|
149
|
+
},
|
|
150
|
+
),
|
|
151
|
+
tests: list(
|
|
152
|
+
custom(
|
|
153
|
+
(val) =>
|
|
154
|
+
serialize(V1_accessPointTestModelSchema, val as V1_AccessPointTest),
|
|
155
|
+
(val) => deserialize(V1_accessPointTestModelSchema, val),
|
|
156
|
+
),
|
|
157
|
+
),
|
|
158
|
+
});
|
|
159
|
+
|
|
113
160
|
export const V1_lakehouseAccessPointModelSchema = createModelSchema(
|
|
114
161
|
V1_LakehouseAccessPoint,
|
|
115
162
|
{
|
|
@@ -498,11 +545,6 @@ export const V1_dataProductModelSchema = (
|
|
|
498
545
|
V1_deserializeAccessPointGroup,
|
|
499
546
|
),
|
|
500
547
|
description: optional(primitive()),
|
|
501
|
-
sampleValues: optionalCustomList(
|
|
502
|
-
(data: V1_EmbeddedData) => V1_serializeEmbeddedDataType(data, plugins),
|
|
503
|
-
(data) => V1_deserializeEmbeddedDataType(data, plugins),
|
|
504
|
-
{ INTERNAL__forceReturnEmptyInTest: true },
|
|
505
|
-
),
|
|
506
548
|
icon: optionalCustom(
|
|
507
549
|
V1_serializeDataProductIcon,
|
|
508
550
|
V1_deserializeDataProductIcon,
|
|
@@ -519,9 +561,10 @@ export const V1_dataProductModelSchema = (
|
|
|
519
561
|
V1_deserializeDataProductOwner,
|
|
520
562
|
),
|
|
521
563
|
package: primitive(),
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
564
|
+
sampleValues: optionalCustomList(
|
|
565
|
+
(data: V1_EmbeddedData) => V1_serializeEmbeddedDataType(data, plugins),
|
|
566
|
+
(data) => V1_deserializeEmbeddedDataType(data, plugins),
|
|
567
|
+
{ INTERNAL__forceReturnEmptyInTest: true },
|
|
525
568
|
),
|
|
526
569
|
stereotypes: customListWithSchema(V1_stereotypePtrModelSchema, {
|
|
527
570
|
INTERNAL__forceReturnEmptyInTest: true,
|
|
@@ -530,7 +573,20 @@ export const V1_dataProductModelSchema = (
|
|
|
530
573
|
taggedValues: customListWithSchema(V1_taggedValueModelSchema, {
|
|
531
574
|
INTERNAL__forceReturnEmptyInTest: true,
|
|
532
575
|
}),
|
|
576
|
+
testSuites: customList(
|
|
577
|
+
(value: V1_DataProductTestSuite) =>
|
|
578
|
+
serialize(V1_dataProductTestSuiteModelSchema(plugins), value),
|
|
579
|
+
(value) =>
|
|
580
|
+
deserialize(V1_dataProductTestSuiteModelSchema(plugins), value),
|
|
581
|
+
{
|
|
582
|
+
INTERNAL__forceReturnEmptyInTest: true,
|
|
583
|
+
},
|
|
584
|
+
),
|
|
533
585
|
title: optional(primitive()),
|
|
586
|
+
type: optionalCustom(
|
|
587
|
+
V1_serializeDataProductType,
|
|
588
|
+
V1_deserializeDataProductType,
|
|
589
|
+
),
|
|
534
590
|
});
|
|
535
591
|
|
|
536
592
|
export const V1_MAPPING_INCLUDE_DATAPRODUCT_TYPE = 'mappingIncludeDataProduct';
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2020-present, Goldman Sachs
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import {
|
|
18
|
+
UnsupportedOperationError,
|
|
19
|
+
type PlainObject,
|
|
20
|
+
} from '@finos/legend-shared';
|
|
21
|
+
import { serialize, deserialize } from 'serializr';
|
|
22
|
+
import {
|
|
23
|
+
V1_BaseDataResolver,
|
|
24
|
+
V1_ReferenceDataResolver,
|
|
25
|
+
type V1_DataResolver,
|
|
26
|
+
} from '../../../model/data/V1_DataResolver.js';
|
|
27
|
+
import type { V1_EmbeddedData } from '../../../model/data/V1_EmbeddedData.js';
|
|
28
|
+
import type { PureProtocolProcessorPlugin } from '../../../../PureProtocolProcessorPlugin.js';
|
|
29
|
+
import {
|
|
30
|
+
V1_deserializeEmbeddedDataType,
|
|
31
|
+
V1_serializeEmbeddedDataType,
|
|
32
|
+
} from './V1_DataElementSerializationHelper.js';
|
|
33
|
+
import { V1_packageableElementPointerModelSchema } from './V1_CoreSerializationHelper.js';
|
|
34
|
+
|
|
35
|
+
enum V1_DataResolverType {
|
|
36
|
+
BASE_DATA_RESOLVER = 'baseDataResolver',
|
|
37
|
+
REFERENCE_DATA_RESOLVER = 'referenceDataResolver',
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export const V1_serializeDataResolver = (
|
|
41
|
+
protocol: V1_DataResolver,
|
|
42
|
+
plugins: PureProtocolProcessorPlugin[],
|
|
43
|
+
): PlainObject<V1_DataResolver> => {
|
|
44
|
+
if (protocol instanceof V1_BaseDataResolver) {
|
|
45
|
+
return {
|
|
46
|
+
_type: V1_DataResolverType.BASE_DATA_RESOLVER,
|
|
47
|
+
data: V1_serializeEmbeddedDataType(protocol.data, plugins),
|
|
48
|
+
elementPointer: serialize(
|
|
49
|
+
V1_packageableElementPointerModelSchema,
|
|
50
|
+
protocol.elementPointer,
|
|
51
|
+
),
|
|
52
|
+
};
|
|
53
|
+
} else if (protocol instanceof V1_ReferenceDataResolver) {
|
|
54
|
+
return {
|
|
55
|
+
_type: V1_DataResolverType.REFERENCE_DATA_RESOLVER,
|
|
56
|
+
elementPointer: serialize(
|
|
57
|
+
V1_packageableElementPointerModelSchema,
|
|
58
|
+
protocol.elementPointer,
|
|
59
|
+
),
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
throw new UnsupportedOperationError(
|
|
63
|
+
`Unable to serialize data resolver of type '${protocol.constructor.name}'`,
|
|
64
|
+
);
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
export const V1_deserializeDataResolver = (
|
|
68
|
+
json: PlainObject<V1_DataResolver>,
|
|
69
|
+
plugins: PureProtocolProcessorPlugin[],
|
|
70
|
+
): V1_DataResolver => {
|
|
71
|
+
switch (json._type) {
|
|
72
|
+
case V1_DataResolverType.BASE_DATA_RESOLVER: {
|
|
73
|
+
const resolver = new V1_BaseDataResolver();
|
|
74
|
+
resolver.elementPointer = deserialize(
|
|
75
|
+
V1_packageableElementPointerModelSchema,
|
|
76
|
+
json.elementPointer as PlainObject,
|
|
77
|
+
);
|
|
78
|
+
resolver.data = V1_deserializeEmbeddedDataType(
|
|
79
|
+
json.data as PlainObject<V1_EmbeddedData>,
|
|
80
|
+
plugins,
|
|
81
|
+
);
|
|
82
|
+
return resolver;
|
|
83
|
+
}
|
|
84
|
+
case V1_DataResolverType.REFERENCE_DATA_RESOLVER: {
|
|
85
|
+
const resolver = new V1_ReferenceDataResolver();
|
|
86
|
+
resolver.elementPointer = deserialize(
|
|
87
|
+
V1_packageableElementPointerModelSchema,
|
|
88
|
+
json.elementPointer as PlainObject,
|
|
89
|
+
);
|
|
90
|
+
return resolver;
|
|
91
|
+
}
|
|
92
|
+
default:
|
|
93
|
+
throw new UnsupportedOperationError(
|
|
94
|
+
`Unable to deserialize data resolver of type '${json._type}'`,
|
|
95
|
+
);
|
|
96
|
+
}
|
|
97
|
+
};
|
|
@@ -26,6 +26,11 @@ import {
|
|
|
26
26
|
V1_IngestDatasetSource,
|
|
27
27
|
V1_IngestDefinition,
|
|
28
28
|
V1_IngestDefinitionContent,
|
|
29
|
+
type V1_WriteMode,
|
|
30
|
+
V1_WriteModeType,
|
|
31
|
+
V1_AppendOnly,
|
|
32
|
+
V1_BatchMilestoned,
|
|
33
|
+
V1_BatchMilestonedBusinessTemporal,
|
|
29
34
|
} from '../../../model/packageableElements/ingest/V1_IngestDefinition.js';
|
|
30
35
|
import type { V1_PackageableElement } from '../../../model/packageableElements/V1_PackageableElement.js';
|
|
31
36
|
import type { V1_AppDirNode } from '../../../lakehouse/entitlements/V1_CoreEntitlements.js';
|
|
@@ -195,16 +200,75 @@ const V1_IngestDatasetSourceModelSchema = createModelSchema(
|
|
|
195
200
|
},
|
|
196
201
|
);
|
|
197
202
|
|
|
203
|
+
const V1_AppendOnlyModelSchema = createModelSchema(V1_AppendOnly, {
|
|
204
|
+
_type: usingConstantValueSchema(V1_WriteModeType.APPEND_ONLY),
|
|
205
|
+
});
|
|
206
|
+
|
|
207
|
+
const V1_BatchMilestonedModelSchema = createModelSchema(V1_BatchMilestoned, {
|
|
208
|
+
_type: usingConstantValueSchema(V1_WriteModeType.BATCH_MILESTONED),
|
|
209
|
+
});
|
|
210
|
+
|
|
211
|
+
const V1_BatchMilestonedBusinessTemporalModelSchema = createModelSchema(
|
|
212
|
+
V1_BatchMilestonedBusinessTemporal,
|
|
213
|
+
{
|
|
214
|
+
_type: usingConstantValueSchema(
|
|
215
|
+
V1_WriteModeType.BATCH_MILESTONED_BUSINESS_TEMPORAL,
|
|
216
|
+
),
|
|
217
|
+
},
|
|
218
|
+
);
|
|
219
|
+
|
|
220
|
+
export const V1_deserializeWriteMode = (
|
|
221
|
+
json: PlainObject<V1_WriteMode>,
|
|
222
|
+
): V1_WriteMode => {
|
|
223
|
+
switch (json._type) {
|
|
224
|
+
case V1_WriteModeType.APPEND_ONLY:
|
|
225
|
+
return deserialize(V1_AppendOnlyModelSchema, json);
|
|
226
|
+
case V1_WriteModeType.BATCH_MILESTONED:
|
|
227
|
+
return deserialize(V1_BatchMilestonedModelSchema, json);
|
|
228
|
+
case V1_WriteModeType.BATCH_MILESTONED_BUSINESS_TEMPORAL:
|
|
229
|
+
return deserialize(V1_BatchMilestonedBusinessTemporalModelSchema, json);
|
|
230
|
+
default:
|
|
231
|
+
throw new UnsupportedOperationError(
|
|
232
|
+
`Unknown write mode type: ${json._type}`,
|
|
233
|
+
);
|
|
234
|
+
}
|
|
235
|
+
};
|
|
236
|
+
|
|
237
|
+
export const V1_serializeWriteMode = (
|
|
238
|
+
protocol: V1_WriteMode,
|
|
239
|
+
): PlainObject<V1_WriteMode> => {
|
|
240
|
+
if (protocol instanceof V1_AppendOnly) {
|
|
241
|
+
return serialize(V1_AppendOnlyModelSchema, protocol);
|
|
242
|
+
} else if (protocol instanceof V1_BatchMilestoned) {
|
|
243
|
+
return serialize(V1_BatchMilestonedModelSchema, protocol);
|
|
244
|
+
} else if (protocol instanceof V1_BatchMilestonedBusinessTemporal) {
|
|
245
|
+
return serialize(V1_BatchMilestonedBusinessTemporalModelSchema, protocol);
|
|
246
|
+
}
|
|
247
|
+
throw new UnsupportedOperationError(`Unknown write mode type`, protocol);
|
|
248
|
+
};
|
|
249
|
+
|
|
198
250
|
export const V1_IngestDatasetModelSchema = createModelSchema(V1_IngestDataset, {
|
|
199
251
|
name: primitive(),
|
|
200
252
|
primaryKey: list(primitive()),
|
|
201
253
|
source: usingModelSchema(V1_IngestDatasetSourceModelSchema),
|
|
254
|
+
writeMode: optional(
|
|
255
|
+
custom(
|
|
256
|
+
(val) => (val ? V1_serializeWriteMode(val) : undefined),
|
|
257
|
+
(val) => (val ? V1_deserializeWriteMode(val) : undefined),
|
|
258
|
+
),
|
|
259
|
+
),
|
|
202
260
|
});
|
|
203
261
|
|
|
204
262
|
export const V1_IngestDefinitionContentModelSchema = createModelSchema(
|
|
205
263
|
V1_IngestDefinitionContent,
|
|
206
264
|
{
|
|
207
265
|
datasets: optional(list(usingModelSchema(V1_IngestDatasetModelSchema))),
|
|
266
|
+
writeMode: optional(
|
|
267
|
+
custom(
|
|
268
|
+
(val) => (val ? V1_serializeWriteMode(val) : undefined),
|
|
269
|
+
(val) => (val ? V1_deserializeWriteMode(val) : undefined),
|
|
270
|
+
),
|
|
271
|
+
),
|
|
208
272
|
},
|
|
209
273
|
);
|
|
210
274
|
|
|
@@ -44,8 +44,10 @@ import { V1_AssertFail } from '../../../model/test/assertion/status/V1_AssertFai
|
|
|
44
44
|
import type { V1_AssertionStatus } from '../../../model/test/assertion/status/V1_AssertionStatus.js';
|
|
45
45
|
import { V1_AssertPass } from '../../../model/test/assertion/status/V1_AssertPass.js';
|
|
46
46
|
import { V1_EqualToJsonAssertFail } from '../../../model/test/assertion/status/V1_EqualToJsonAssertFail.js';
|
|
47
|
+
import { V1_EqualToRelationAssertFail } from '../../../model/test/assertion/status/V1_EqualToRelationAssertFail.js';
|
|
47
48
|
import { V1_EqualTo } from '../../../model/test/assertion/V1_EqualTo.js';
|
|
48
49
|
import { V1_EqualToJson } from '../../../model/test/assertion/V1_EqualToJson.js';
|
|
50
|
+
import { V1_EqualToRelation } from '../../../model/test/assertion/V1_EqualToRelation.js';
|
|
49
51
|
import { V1_EqualToTDS } from '../../../model/test/assertion/V1_EqualToTDS.js';
|
|
50
52
|
import type { V1_TestAssertion } from '../../../model/test/assertion/V1_TestAssertion.js';
|
|
51
53
|
import {
|
|
@@ -56,7 +58,10 @@ import {
|
|
|
56
58
|
import type { V1_AtomicTest } from '../../../model/test/V1_AtomicTest.js';
|
|
57
59
|
import type { V1_TestSuite } from '../../../model/test/V1_TestSuite.js';
|
|
58
60
|
import { V1_UniqueTestId } from '../../../model/test/V1_UniqueTestId.js';
|
|
59
|
-
import {
|
|
61
|
+
import {
|
|
62
|
+
V1_externalFormatDataModelSchema,
|
|
63
|
+
V1_relationElementModelSchema,
|
|
64
|
+
} from './V1_DataElementSerializationHelper.js';
|
|
60
65
|
import {
|
|
61
66
|
V1_mappingTestSuiteModelSchema,
|
|
62
67
|
V1_mappingTestModelSchema,
|
|
@@ -81,12 +86,14 @@ enum V1_AssertionStatusType {
|
|
|
81
86
|
ASSERT_FAIL = 'assertFail',
|
|
82
87
|
ASSERT_PASS = 'assertPass',
|
|
83
88
|
EQUAL_TO_JSON_ASSERT_FAIL = 'equalToJsonAssertFail',
|
|
89
|
+
EQUAL_TO_RELATION_ASSERT_FAIL = 'equalToRelationAssertFail',
|
|
84
90
|
}
|
|
85
91
|
|
|
86
92
|
export enum V1_TestAssertionType {
|
|
87
93
|
EQUAL_TO = 'equalTo',
|
|
88
94
|
EQUAL_TO_JSON = 'equalToJson',
|
|
89
95
|
EQUAL_TO_TDS = 'equalToTDS',
|
|
96
|
+
EQUAL_TO_RELATION = 'equalToRelation',
|
|
90
97
|
}
|
|
91
98
|
|
|
92
99
|
enum V1_TestResultType {
|
|
@@ -136,11 +143,26 @@ export const V1_equalToJsonAssertFailModelSchema = createModelSchema(
|
|
|
136
143
|
},
|
|
137
144
|
);
|
|
138
145
|
|
|
146
|
+
export const V1_equalToRelationAssertFailModelSchema = createModelSchema(
|
|
147
|
+
V1_EqualToRelationAssertFail,
|
|
148
|
+
{
|
|
149
|
+
_type: usingConstantValueSchema(
|
|
150
|
+
V1_AssertionStatusType.EQUAL_TO_RELATION_ASSERT_FAIL,
|
|
151
|
+
),
|
|
152
|
+
actual: primitive(),
|
|
153
|
+
expected: primitive(),
|
|
154
|
+
id: primitive(),
|
|
155
|
+
message: primitive(),
|
|
156
|
+
},
|
|
157
|
+
);
|
|
158
|
+
|
|
139
159
|
const V1_serializeAssertionStatus = (
|
|
140
160
|
protocol: V1_AssertionStatus,
|
|
141
161
|
): PlainObject<V1_AssertionStatus> => {
|
|
142
162
|
if (protocol instanceof V1_EqualToJsonAssertFail) {
|
|
143
163
|
return serialize(V1_equalToJsonAssertFailModelSchema, protocol);
|
|
164
|
+
} else if (protocol instanceof V1_EqualToRelationAssertFail) {
|
|
165
|
+
return serialize(V1_equalToRelationAssertFailModelSchema, protocol);
|
|
144
166
|
} else if (protocol instanceof V1_AssertFail) {
|
|
145
167
|
return serialize(V1_assertFailModelSchema, protocol);
|
|
146
168
|
} else if (protocol instanceof V1_AssertPass) {
|
|
@@ -162,6 +184,8 @@ const V1_deserializeAssertionStatus = (
|
|
|
162
184
|
return deserialize(V1_assertPassModelSchema, json);
|
|
163
185
|
case V1_AssertionStatusType.EQUAL_TO_JSON_ASSERT_FAIL:
|
|
164
186
|
return deserialize(V1_equalToJsonAssertFailModelSchema, json);
|
|
187
|
+
case V1_AssertionStatusType.EQUAL_TO_RELATION_ASSERT_FAIL:
|
|
188
|
+
return deserialize(V1_equalToRelationAssertFailModelSchema, json);
|
|
165
189
|
default:
|
|
166
190
|
throw new UnsupportedOperationError(
|
|
167
191
|
`Can't deserialize assertion status of type '${json._type}'`,
|
|
@@ -187,6 +211,12 @@ const V1_equalToTDSModelSchema = createModelSchema(V1_EqualToTDS, {
|
|
|
187
211
|
id: primitive(),
|
|
188
212
|
});
|
|
189
213
|
|
|
214
|
+
const V1_equalToRelationModelSchema = createModelSchema(V1_EqualToRelation, {
|
|
215
|
+
_type: usingConstantValueSchema(V1_TestAssertionType.EQUAL_TO_RELATION),
|
|
216
|
+
expected: usingModelSchema(V1_relationElementModelSchema),
|
|
217
|
+
id: primitive(),
|
|
218
|
+
});
|
|
219
|
+
|
|
190
220
|
export const V1_testErrorModelSchema = createModelSchema(V1_TestError, {
|
|
191
221
|
atomicTestId: primitive(),
|
|
192
222
|
error: primitive(),
|
|
@@ -347,6 +377,8 @@ export const V1_serializeTestAssertion = (
|
|
|
347
377
|
return serialize(V1_equalToJsonModelSchema, protocol);
|
|
348
378
|
} else if (protocol instanceof V1_EqualToTDS) {
|
|
349
379
|
return serialize(V1_equalToTDSModelSchema, protocol);
|
|
380
|
+
} else if (protocol instanceof V1_EqualToRelation) {
|
|
381
|
+
return serialize(V1_equalToRelationModelSchema, protocol);
|
|
350
382
|
}
|
|
351
383
|
throw new UnsupportedOperationError(
|
|
352
384
|
`Can't serialize test assertion`,
|
|
@@ -364,6 +396,8 @@ export const V1_deserializeTestAssertion = (
|
|
|
364
396
|
return deserialize(V1_equalToJsonModelSchema, json);
|
|
365
397
|
case V1_TestAssertionType.EQUAL_TO_TDS:
|
|
366
398
|
return deserialize(V1_equalToTDSModelSchema, json);
|
|
399
|
+
case V1_TestAssertionType.EQUAL_TO_RELATION:
|
|
400
|
+
return deserialize(V1_equalToRelationModelSchema, json);
|
|
367
401
|
default:
|
|
368
402
|
throw new UnsupportedOperationError(
|
|
369
403
|
`Can't deserialize test assertion of type '${json._type}'`,
|
package/src/index.ts
CHANGED
|
@@ -101,6 +101,11 @@ export {
|
|
|
101
101
|
V1_IngestDatasetSource,
|
|
102
102
|
V1_IngestDataset,
|
|
103
103
|
V1_IngestDefinitionContent,
|
|
104
|
+
V1_WriteMode,
|
|
105
|
+
V1_WriteModeType,
|
|
106
|
+
V1_AppendOnly,
|
|
107
|
+
V1_BatchMilestoned,
|
|
108
|
+
V1_BatchMilestonedBusinessTemporal,
|
|
104
109
|
} from './graph-manager/protocol/pure/v1/model/packageableElements/ingest/V1_IngestDefinition.js';
|
|
105
110
|
export {
|
|
106
111
|
Ownership,
|
|
@@ -216,6 +221,9 @@ export {
|
|
|
216
221
|
V1_AppDirOwner,
|
|
217
222
|
V1_DataProductOwnerType,
|
|
218
223
|
} from './graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/V1_DataProduct.js';
|
|
224
|
+
export * from './graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/test/V1_AccessPointTest.js';
|
|
225
|
+
export * from './graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/test/V1_DataProductTestSuite.js';
|
|
226
|
+
export * from './graph-manager/protocol/pure/v1/model/data/V1_DataResolver.js';
|
|
219
227
|
export {
|
|
220
228
|
V1_ExecuteInput,
|
|
221
229
|
V1_TestDataGenerationExecutionInput,
|
|
@@ -302,8 +310,10 @@ export { V1_RelationalDatabaseConnection } from './graph-manager/protocol/pure/v
|
|
|
302
310
|
export { V1_DuckDBDatasourceSpecification } from './graph-manager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.js';
|
|
303
311
|
export { V1_TestAuthenticationStrategy } from './graph-manager/protocol/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.js';
|
|
304
312
|
export {
|
|
313
|
+
V1_Accessor,
|
|
305
314
|
V1_RelationStoreAccessor,
|
|
306
315
|
V1_DataProductAccessor,
|
|
316
|
+
V1_IngestDefinitionAccessor,
|
|
307
317
|
V1_SQLAccessor,
|
|
308
318
|
} from './graph-manager/protocol/pure/v1/model/valueSpecification/raw/classInstance/relation/V1_RelationStoreAccessor.js';
|
|
309
319
|
export { V1_PackageableConnection } from './graph-manager/protocol/pure/v1/model/packageableElements/connection/V1_PackageableConnection.js';
|
|
@@ -385,6 +395,8 @@ export {
|
|
|
385
395
|
V1_IngestDefinitionContentModelSchema,
|
|
386
396
|
V1_deserializeIngestDefinitionContent,
|
|
387
397
|
V1_serializeIngestDefinitionContent,
|
|
398
|
+
V1_deserializeWriteMode,
|
|
399
|
+
V1_serializeWriteMode,
|
|
388
400
|
} from './graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_IngestSerializationHelper.js';
|
|
389
401
|
export * from './graph-manager/protocol/pure/v1/model/lineage/V1_Lineage.js';
|
|
390
402
|
|
|
@@ -682,14 +694,18 @@ export * from './graph/metamodel/pure/test/assertion/status/AssertionStatus.js';
|
|
|
682
694
|
export * from './graph/metamodel/pure/test/assertion/status/AssertFail.js';
|
|
683
695
|
export * from './graph/metamodel/pure/test/assertion/status/AssertPass.js';
|
|
684
696
|
export * from './graph/metamodel/pure/test/assertion/status/EqualToJsonAssertFail.js';
|
|
697
|
+
export * from './graph/metamodel/pure/test/assertion/status/EqualToRelationAssertFail.js';
|
|
685
698
|
export * from './graph/metamodel/pure/test/assertion/TestAssertion.js';
|
|
686
699
|
export * from './graph/metamodel/pure/test/Test.js';
|
|
687
700
|
export * from './graph/metamodel/pure/test/assertion/EqualTo.js';
|
|
688
701
|
export * from './graph/metamodel/pure/test/assertion/EqualToJson.js';
|
|
689
702
|
export * from './graph/metamodel/pure/test/assertion/EqualToTDS.js';
|
|
703
|
+
export * from './graph/metamodel/pure/test/assertion/EqualToRelation.js';
|
|
690
704
|
export * from './graph/metamodel/pure/test/result/UniqueTestId.js';
|
|
691
705
|
export * from './graph-manager/protocol/pure/v1/model/test/V1_AtomicTest.js';
|
|
692
706
|
export * from './graph-manager/protocol/pure/v1/model/test/assertion/V1_EqualToJson.js';
|
|
707
|
+
export * from './graph-manager/protocol/pure/v1/model/test/assertion/V1_EqualToRelation.js';
|
|
708
|
+
export * from './graph-manager/protocol/pure/v1/model/test/assertion/status/V1_EqualToRelationAssertFail.js';
|
|
693
709
|
export * from './graph-manager/protocol/pure/v1/model/test/assertion/V1_TestAssertion.js';
|
|
694
710
|
export * from './graph-manager/protocol/pure/v1/model/test/assertion/status/V1_AssertionStatus.js';
|
|
695
711
|
export * from './graph-manager/extensions/Testable_PureGraphManagerPlugin_Extension.js';
|
|
@@ -753,6 +769,9 @@ export {
|
|
|
753
769
|
DataProductOwner,
|
|
754
770
|
AppDirOwner,
|
|
755
771
|
} from './graph/metamodel/pure/dataProduct/DataProduct.js';
|
|
772
|
+
export * from './graph/metamodel/pure/dataProduct/test/DataProductAccessPointTest.js';
|
|
773
|
+
export * from './graph/metamodel/pure/dataProduct/test/DataProductTestSuite.js';
|
|
774
|
+
export * from './graph/metamodel/pure/data/DataResolver.js';
|
|
756
775
|
export * from './graph-manager/action/changeDetection/DataProductObserveHelper.js';
|
|
757
776
|
|
|
758
777
|
// ------------------------------------- DSL Data --------------------------------------------
|
|
@@ -865,8 +884,14 @@ export {
|
|
|
865
884
|
RelationalStoreAccessor,
|
|
866
885
|
AccessorInstanceValue,
|
|
867
886
|
type AccessorOwner,
|
|
887
|
+
getAccessorItemLabelForElement,
|
|
868
888
|
} from './graph/metamodel/pure/packageableElements/relation/Accessor.js';
|
|
869
|
-
export {
|
|
889
|
+
export {
|
|
890
|
+
V1_createAccessorFromPackageableElement,
|
|
891
|
+
V1_resolveAccessorsFromRawLambda,
|
|
892
|
+
V1_buildRelationElementsDataFromAccessors,
|
|
893
|
+
V1_buildRelationTypeFromAccessPointImplementation,
|
|
894
|
+
} from './graph-manager/protocol/pure/v1/helpers/V1_AccessorHelper.js';
|
|
870
895
|
export { Store } from './graph/metamodel/pure/packageableElements/store/Store.js';
|
|
871
896
|
export { Database } from './graph/metamodel/pure/packageableElements/store/relational/model/Database.js';
|
|
872
897
|
export { Mapping } from './graph/metamodel/pure/packageableElements/mapping/Mapping.js';
|
package/tsconfig.json
CHANGED
|
@@ -88,11 +88,14 @@
|
|
|
88
88
|
"./src/graph/helpers/creator/STO_Relational_ModelCreatorHelper.ts",
|
|
89
89
|
"./src/graph/metamodel/pure/InferableValue.ts",
|
|
90
90
|
"./src/graph/metamodel/pure/Reference.ts",
|
|
91
|
+
"./src/graph/metamodel/pure/data/DataResolver.ts",
|
|
91
92
|
"./src/graph/metamodel/pure/data/EmbeddedData.ts",
|
|
92
93
|
"./src/graph/metamodel/pure/data/INTERNAL__UnknownEmbeddedData.ts",
|
|
93
94
|
"./src/graph/metamodel/pure/data/RelationalCSVData.ts",
|
|
94
95
|
"./src/graph/metamodel/pure/dataProduct/DataProduct.ts",
|
|
95
96
|
"./src/graph/metamodel/pure/dataProduct/MappingIncludeDataProduct.ts",
|
|
97
|
+
"./src/graph/metamodel/pure/dataProduct/test/DataProductAccessPointTest.ts",
|
|
98
|
+
"./src/graph/metamodel/pure/dataProduct/test/DataProductTestSuite.ts",
|
|
96
99
|
"./src/graph/metamodel/pure/executionPlan/ExecutionPlan.ts",
|
|
97
100
|
"./src/graph/metamodel/pure/executionPlan/nodes/AllocationExecutionNode.ts",
|
|
98
101
|
"./src/graph/metamodel/pure/executionPlan/nodes/ConstantExecutionNode.ts",
|
|
@@ -344,12 +347,14 @@
|
|
|
344
347
|
"./src/graph/metamodel/pure/test/Testable.ts",
|
|
345
348
|
"./src/graph/metamodel/pure/test/assertion/EqualTo.ts",
|
|
346
349
|
"./src/graph/metamodel/pure/test/assertion/EqualToJson.ts",
|
|
350
|
+
"./src/graph/metamodel/pure/test/assertion/EqualToRelation.ts",
|
|
347
351
|
"./src/graph/metamodel/pure/test/assertion/EqualToTDS.ts",
|
|
348
352
|
"./src/graph/metamodel/pure/test/assertion/TestAssertion.ts",
|
|
349
353
|
"./src/graph/metamodel/pure/test/assertion/status/AssertFail.ts",
|
|
350
354
|
"./src/graph/metamodel/pure/test/assertion/status/AssertPass.ts",
|
|
351
355
|
"./src/graph/metamodel/pure/test/assertion/status/AssertionStatus.ts",
|
|
352
356
|
"./src/graph/metamodel/pure/test/assertion/status/EqualToJsonAssertFail.ts",
|
|
357
|
+
"./src/graph/metamodel/pure/test/assertion/status/EqualToRelationAssertFail.ts",
|
|
353
358
|
"./src/graph/metamodel/pure/test/result/DebugTestsResult.ts",
|
|
354
359
|
"./src/graph/metamodel/pure/test/result/RunTestsTestableInput.ts",
|
|
355
360
|
"./src/graph/metamodel/pure/test/result/TestResult.ts",
|
|
@@ -540,6 +545,7 @@
|
|
|
540
545
|
"./src/graph-manager/protocol/pure/v1/model/context/V1_PureModelContextPointer.ts",
|
|
541
546
|
"./src/graph-manager/protocol/pure/v1/model/context/V1_PureModelContextText.ts",
|
|
542
547
|
"./src/graph-manager/protocol/pure/v1/model/context/V1_SDLC.ts",
|
|
548
|
+
"./src/graph-manager/protocol/pure/v1/model/data/V1_DataResolver.ts",
|
|
543
549
|
"./src/graph-manager/protocol/pure/v1/model/data/V1_EmbeddedData.ts",
|
|
544
550
|
"./src/graph-manager/protocol/pure/v1/model/data/V1_INTERNAL__UnknownEmbeddedData.ts",
|
|
545
551
|
"./src/graph-manager/protocol/pure/v1/model/data/V1_RelationalCSVData.ts",
|
|
@@ -600,6 +606,8 @@
|
|
|
600
606
|
"./src/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/V1_DataProduct.ts",
|
|
601
607
|
"./src/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/V1_MappingIncludeDataProduct.ts",
|
|
602
608
|
"./src/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/V1_Terminal.ts",
|
|
609
|
+
"./src/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/test/V1_AccessPointTest.ts",
|
|
610
|
+
"./src/graph-manager/protocol/pure/v1/model/packageableElements/dataProduct/test/V1_DataProductTestSuite.ts",
|
|
603
611
|
"./src/graph-manager/protocol/pure/v1/model/packageableElements/domain/V1_Association.ts",
|
|
604
612
|
"./src/graph-manager/protocol/pure/v1/model/packageableElements/domain/V1_Class.ts",
|
|
605
613
|
"./src/graph-manager/protocol/pure/v1/model/packageableElements/domain/V1_Constraint.ts",
|
|
@@ -758,12 +766,14 @@
|
|
|
758
766
|
"./src/graph-manager/protocol/pure/v1/model/test/V1_UniqueTestId.ts",
|
|
759
767
|
"./src/graph-manager/protocol/pure/v1/model/test/assertion/V1_EqualTo.ts",
|
|
760
768
|
"./src/graph-manager/protocol/pure/v1/model/test/assertion/V1_EqualToJson.ts",
|
|
769
|
+
"./src/graph-manager/protocol/pure/v1/model/test/assertion/V1_EqualToRelation.ts",
|
|
761
770
|
"./src/graph-manager/protocol/pure/v1/model/test/assertion/V1_EqualToTDS.ts",
|
|
762
771
|
"./src/graph-manager/protocol/pure/v1/model/test/assertion/V1_TestAssertion.ts",
|
|
763
772
|
"./src/graph-manager/protocol/pure/v1/model/test/assertion/status/V1_AssertFail.ts",
|
|
764
773
|
"./src/graph-manager/protocol/pure/v1/model/test/assertion/status/V1_AssertPass.ts",
|
|
765
774
|
"./src/graph-manager/protocol/pure/v1/model/test/assertion/status/V1_AssertionStatus.ts",
|
|
766
775
|
"./src/graph-manager/protocol/pure/v1/model/test/assertion/status/V1_EqualToJsonAssertFail.ts",
|
|
776
|
+
"./src/graph-manager/protocol/pure/v1/model/test/assertion/status/V1_EqualToRelationAssertFail.ts",
|
|
767
777
|
"./src/graph-manager/protocol/pure/v1/model/test/result/V1_TestResult.ts",
|
|
768
778
|
"./src/graph-manager/protocol/pure/v1/model/valueSpecification/V1_INTERNAL__UnknownValueSpecfication.ts",
|
|
769
779
|
"./src/graph-manager/protocol/pure/v1/model/valueSpecification/V1_ValueSpecification.ts",
|
|
@@ -821,6 +831,7 @@
|
|
|
821
831
|
"./src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DSL_ExternalFormat_Transformer.ts",
|
|
822
832
|
"./src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataElementTransformer.ts",
|
|
823
833
|
"./src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataProductTransformer.ts",
|
|
834
|
+
"./src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DataResolverTransformer.ts",
|
|
824
835
|
"./src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DatabaseTransformer.ts",
|
|
825
836
|
"./src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_DomainTransformer.ts",
|
|
826
837
|
"./src/graph-manager/protocol/pure/v1/transformation/pureGraph/from/V1_ExecutionEnvironmentTransformer.ts",
|
|
@@ -860,6 +871,7 @@
|
|
|
860
871
|
"./src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_ConnectionBuilderHelper.ts",
|
|
861
872
|
"./src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_DataElementBuilderHelper.ts",
|
|
862
873
|
"./src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_DataProductBuilder.ts",
|
|
874
|
+
"./src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_DataResolverBuilderHelper.ts",
|
|
863
875
|
"./src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_DatabaseBuilderHelper.ts",
|
|
864
876
|
"./src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.ts",
|
|
865
877
|
"./src/graph-manager/protocol/pure/v1/transformation/pureGraph/to/helpers/V1_FileGenerationBuilderHelper.ts",
|
|
@@ -891,6 +903,7 @@
|
|
|
891
903
|
"./src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DSL_ExternalFormat_ProtocolHelper.ts",
|
|
892
904
|
"./src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataElementSerializationHelper.ts",
|
|
893
905
|
"./src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataProductSerializationHelper.ts",
|
|
906
|
+
"./src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DataResolverSerializationHelper.ts",
|
|
894
907
|
"./src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DatabaseSerializationHelper.ts",
|
|
895
908
|
"./src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_DomainSerializationHelper.ts",
|
|
896
909
|
"./src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_ExecutionEnvironmentSerializationHelper.ts",
|