@itwin/core-backend 5.1.0-dev.59 → 5.1.0-dev.60
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/cjs/IModelIncrementalSchemaLocater.d.ts +36 -0
- package/lib/cjs/IModelIncrementalSchemaLocater.d.ts.map +1 -0
- package/lib/cjs/IModelIncrementalSchemaLocater.js +69 -0
- package/lib/cjs/IModelIncrementalSchemaLocater.js.map +1 -0
- package/lib/esm/IModelIncrementalSchemaLocater.d.ts +36 -0
- package/lib/esm/IModelIncrementalSchemaLocater.d.ts.map +1 -0
- package/lib/esm/IModelIncrementalSchemaLocater.js +65 -0
- package/lib/esm/IModelIncrementalSchemaLocater.js.map +1 -0
- package/lib/esm/test/assets/IncrementalSchemaLocater/configs/old.config.d.ts +60 -0
- package/lib/esm/test/assets/IncrementalSchemaLocater/configs/old.config.d.ts.map +1 -0
- package/lib/esm/test/assets/IncrementalSchemaLocater/configs/old.config.js +69 -0
- package/lib/esm/test/assets/IncrementalSchemaLocater/configs/old.config.js.map +1 -0
- package/lib/esm/test/assets/IncrementalSchemaLocater/configs/simple.config.d.ts +1442 -0
- package/lib/esm/test/assets/IncrementalSchemaLocater/configs/simple.config.d.ts.map +1 -0
- package/lib/esm/test/assets/IncrementalSchemaLocater/configs/simple.config.js +817 -0
- package/lib/esm/test/assets/IncrementalSchemaLocater/configs/simple.config.js.map +1 -0
- package/lib/esm/test/incrementalSchemaLocater/ECSqlQueries.test.d.ts +2 -0
- package/lib/esm/test/incrementalSchemaLocater/ECSqlQueries.test.d.ts.map +1 -0
- package/lib/esm/test/incrementalSchemaLocater/ECSqlQueries.test.js +343 -0
- package/lib/esm/test/incrementalSchemaLocater/ECSqlQueries.test.js.map +1 -0
- package/lib/esm/test/incrementalSchemaLocater/IncrementalLoading.test.d.ts +2 -0
- package/lib/esm/test/incrementalSchemaLocater/IncrementalLoading.test.d.ts.map +1 -0
- package/lib/esm/test/incrementalSchemaLocater/IncrementalLoading.test.js +207 -0
- package/lib/esm/test/incrementalSchemaLocater/IncrementalLoading.test.js.map +1 -0
- package/lib/esm/test/incrementalSchemaLocater/utils/IModelSchemaLocater.d.ts +11 -0
- package/lib/esm/test/incrementalSchemaLocater/utils/IModelSchemaLocater.d.ts.map +1 -0
- package/lib/esm/test/incrementalSchemaLocater/utils/IModelSchemaLocater.js +36 -0
- package/lib/esm/test/incrementalSchemaLocater/utils/IModelSchemaLocater.js.map +1 -0
- package/lib/esm/test/incrementalSchemaLocater/utils/IncrementalTestHelper.d.ts +17 -0
- package/lib/esm/test/incrementalSchemaLocater/utils/IncrementalTestHelper.d.ts.map +1 -0
- package/lib/esm/test/incrementalSchemaLocater/utils/IncrementalTestHelper.js +116 -0
- package/lib/esm/test/incrementalSchemaLocater/utils/IncrementalTestHelper.js.map +1 -0
- package/lib/esm/test/incrementalSchemaLocater/utils/TestSqlSchemaLocater.d.ts +9 -0
- package/lib/esm/test/incrementalSchemaLocater/utils/TestSqlSchemaLocater.d.ts.map +1 -0
- package/lib/esm/test/incrementalSchemaLocater/utils/TestSqlSchemaLocater.js +20 -0
- package/lib/esm/test/incrementalSchemaLocater/utils/TestSqlSchemaLocater.js.map +1 -0
- package/package.json +16 -11
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"simple.config.js","sourceRoot":"","sources":["../../../../../../src/test/assets/IncrementalSchemaLocater/configs/simple.config.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\nexport default {\n \"label\": \"Simple Profile iModel\",\n \"bimFile\": \"SimpleIModel.bim\",\n \"schemas\": [\n {\n \"name\": \"SimpleSchema\",\n \"references\": [\n \"BisCore\",\n \"CoreCustomAttributes\",\n \"Formats\",\n \"Units\"\n ],\n \"itemCount\": 30,\n \"checkStubs\": [\n {\n \"item\": \"SimpleSchema.UnitSystem_Test\",\n \"properties\": {\n \"schemaItemType\": \"UnitSystem\",\n \"label\": \"Test\",\n \"description\": \"UnitSystem Test\"\n }\n },\n {\n \"item\": \"SimpleSchema.Phenomenon_Test\",\n \"properties\": {\n \"schemaItemType\": \"Phenomenon\",\n \"label\": \"Test\",\n \"description\": \"Phenomenon Test\",\n \"definition\": \"TEST\"\n }\n },\n {\n \"item\": \"SimpleSchema.Category_Test\",\n \"properties\": {\n \"schemaItemType\": \"PropertyCategory\",\n \"label\": \"Test\",\n \"description\": \"PropertyCategory Test\",\n \"priority\": 1000\n }\n },\n {\n \"item\": \"SimpleSchema.Enumeration_Integer\",\n \"properties\": {\n \"schemaItemType\": \"Enumeration\",\n \"label\": \"Test\",\n \"description\": \"Enumeration Integer\",\n \"type\": \"int\",\n \"isStrict\": true,\n \"enumerators\": [\n {\n \"name\": \"Enumerator0\",\n \"value\": 0,\n \"label\": \"0\",\n \"description\": \"Enumerator 0\"\n },\n {\n \"name\": \"Enumerator1\",\n \"value\": 1,\n \"label\": \"1\",\n \"description\": \"Enumerator 1\"\n }\n ]\n }\n },\n {\n \"item\": \"SimpleSchema.Enumeration_String\",\n \"properties\": {\n \"schemaItemType\": \"Enumeration\",\n \"label\": \"Test\",\n \"description\": \"Enumeration String\",\n \"type\": \"string\",\n \"isStrict\": false,\n \"enumerators\": [\n {\n \"name\": \"Enumerator0\",\n \"value\": \"0\"\n },\n {\n \"name\": \"Enumerator1\",\n \"value\": \"1\"\n }\n ]\n }\n },\n {\n \"item\": \"SimpleSchema.Unit_Test1\",\n \"properties\": {\n \"schemaItemType\": \"Unit\",\n \"label\": \"Test1\",\n \"description\": \"Unit Test1\",\n \"phenomenon\": \"SimpleSchema.Phenomenon_Test\",\n \"unitSystem\": \"SimpleSchema.UnitSystem_Test\",\n \"definition\": \"TEST1\",\n \"numerator\": 10.0\n }\n },\n {\n \"item\": \"SimpleSchema.Unit_Test2\",\n \"properties\": {\n \"schemaItemType\": \"Unit\",\n \"label\": \"Test2\",\n \"description\": \"Unit Test2\",\n \"phenomenon\": \"Units.TEMPERATURE\", \n \"unitSystem\": \"Units.USCUSTOM\",\n \"definition\": \"TEST2\",\n \"numerator\": 5.0,\n \"denominator\": 3.0,\n \"offset\": 0.01325\n }\n },\n {\n \"item\": \"SimpleSchema.InvertedUnit_Test1\",\n \"properties\": {\n \"schemaItemType\": \"InvertedUnit\",\n \"label\": \"Test1\",\n \"description\": \"InvertedUnit Test1\",\n \"invertsUnit\": \"SimpleSchema.Unit_Test1\",\n \"unitSystem\": \"SimpleSchema.UnitSystem_Test\"\n }\n },\n {\n \"item\": \"SimpleSchema.InvertedUnit_Test2\",\n \"properties\": {\n \"schemaItemType\": \"InvertedUnit\",\n \"label\": \"Test2\",\n \"description\": \"InvertedUnit Test2\",\n \"invertsUnit\": \"Units.FT_PER_FT\",\n \"unitSystem\": \"Units.USCUSTOM\"\n }\n },\n {\n \"item\": \"SimpleSchema.Constant_Test1\",\n \"properties\": {\n \"schemaItemType\": \"Constant\",\n \"label\": \"Test1\",\n \"description\": \"Constant Test1\",\n \"phenomenon\": \"SimpleSchema.Phenomenon_Test\",\n \"definition\": \"TEST1\",\n \"numerator\": 1.0e3\n }\n },\n {\n \"item\": \"SimpleSchema.Constant_Test2\",\n \"properties\": {\n \"schemaItemType\": \"Constant\",\n \"label\": \"Test2\",\n \"description\": \"Constant Test2\",\n \"phenomenon\": \"Units.ANGLE\",\n \"definition\": \"TEST2\",\n \"numerator\": 180.0,\n \"denominator\": 0.5\n }\n },\n {\n \"item\": \"SimpleSchema.Format_Station\",\n \"properties\": {\n \"schemaItemType\": \"Format\",\n \"label\": \"Test\",\n \"description\": \"Format Station\",\n \"type\": \"Station\",\n \"precision\": 2,\n \"formatTraits\": [\n \"TrailZeroes\",\n \"KeepSingleZero\",\n \"KeepDecimalPoint\"\n ],\n \"thousandSeparator\": \" \",\n \"decimalSeparator\": \",\",\n \"stationSeparator\": \"+\",\n \"stationOffsetSize\": 3,\n \"minWidth\": 3\n }\n },\n {\n \"item\": \"SimpleSchema.Format_Scientific\",\n \"properties\": {\n \"schemaItemType\": \"Format\",\n \"label\": \"Test\",\n \"description\": \"Format Scientific\",\n \"type\": \"Scientific\",\n \"scientificType\": \"Normalized\",\n \"precision\": 6,\n \"formatTraits\": [\n \"KeepSingleZero\"\n ],\n \"decimalSeparator\": \",\",\n \"thousandSeparator\": \" \"\n }\n },\n {\n \"item\": \"SimpleSchema.Format_Decimal\",\n \"properties\": {\n \"schemaItemType\": \"Format\",\n \"label\": \"Test\",\n \"description\": \"Format Decimal\",\n \"type\": \"Decimal\",\n \"precision\": 4,\n \"showSignOption\": \"NoSign\",\n \"formatTraits\": [\n \"KeepSingleZero\",\n \"KeepDecimalPoint\"\n ],\n \"thousandSeparator\": \" \",\n \"decimalSeparator\": \",\",\n \"minWidth\": 3,\n \"roundFactor\": 0.1\n }\n },\n {\n \"item\": \"SimpleSchema.Format_Fractional\",\n \"properties\": {\n \"schemaItemType\": \"Format\",\n \"label\": \"Test\",\n \"description\": \"Format Fractional\",\n \"type\": \"Fractional\",\n \"precision\": 8,\n \"formatTraits\": [\n \"KeepSingleZero\",\n \"ShowUnitLabel\"\n ],\n \"uomSeparator\": \"\"\n }\n },\n {\n \"item\": \"SimpleSchema.KindOfQuantity_Test1\",\n \"properties\": {\n \"schemaItemType\": \"KindOfQuantity\",\n \"label\": \"Test1\",\n \"description\": \"KindOfQuantity Test1\"\n }\n },\n {\n \"item\": \"SimpleSchema.KindOfQuantity_Test2\",\n \"properties\": {\n \"schemaItemType\": \"KindOfQuantity\",\n \"label\": \"Test2\",\n \"description\": \"KindOfQuantity Test2\"\n }\n },\n {\n \"item\": \"SimpleSchema.StructClass_Test1\",\n \"properties\": {\n \"schemaItemType\": \"StructClass\",\n \"modifier\": \"Abstract\",\n \"label\": \"Test1\",\n \"description\": \"StructClass Test1\"\n }\n },\n {\n \"item\": \"SimpleSchema.StructClass_Test2\",\n \"properties\": {\n \"schemaItemType\": \"StructClass\",\n \"modifier\": \"Sealed\",\n \"baseClass\": \"SimpleSchema.StructClass_Test1\",\n \"label\": \"Test2\",\n \"description\": \"StructClass Test2\"\n }\n },\n {\n \"item\": \"SimpleSchema.CustomAttributeClass_Test1\",\n \"properties\": {\n \"schemaItemType\": \"CustomAttributeClass\",\n \"appliesTo\": \"AnyClass\",\n \"modifier\": \"Abstract\",\n \"label\": \"Test1\",\n \"description\": \"CustomAttributeClass Test1\"\n }\n },\n {\n \"item\": \"SimpleSchema.CustomAttributeClass_Test2\",\n \"properties\": {\n \"schemaItemType\": \"CustomAttributeClass\",\n \"appliesTo\": \"AnyProperty\",\n \"baseClass\": \"BisCore.CustomHandledProperty\",\n \"label\": \"Test2\",\n \"description\": \"CustomAttributeClass Test2\"\n }\n },\n {\n \"item\": \"SimpleSchema.CustomAttributeClass_Test3\",\n \"properties\": {\n \"schemaItemType\": \"CustomAttributeClass\",\n \"modifier\": \"Sealed\",\n \"appliesTo\": \"Any\",\n \"baseClass\": \"SimpleSchema.CustomAttributeClass_Test1\",\n \"label\": \"Test3\",\n \"description\": \"CustomAttributeClass Test3\"\n }\n },\n {\n \"item\": \"SimpleSchema.IMixin_Test1\",\n \"properties\": {\n \"schemaItemType\": \"Mixin\",\n \"appliesTo\": \"BisCore.Element\",\n \"label\": \"Test1\",\n \"description\": \"Mixin Test1\"\n }\n },\n {\n \"item\": \"SimpleSchema.IMixin_Test2\",\n \"properties\": {\n \"schemaItemType\": \"Mixin\",\n \"baseClass\": \"SimpleSchema.IMixin_Test1\",\n \"appliesTo\": \"BisCore.PhysicalElement\",\n \"label\": \"Test2\",\n \"description\": \"Mixin Test2\"\n }\n },\n {\n \"item\": \"SimpleSchema.EntityClass_Test1\",\n \"properties\": {\n \"schemaItemType\": \"EntityClass\",\n \"baseClass\": \"BisCore.PhysicalElement\",\n \"label\": \"Test1\",\n \"description\": \"EntityClass Test1\",\n \"mixins\": [\n \"SimpleSchema.IMixin_Test1\"\n ]\n }\n },\n {\n \"item\": \"SimpleSchema.EntityClass_Test2\",\n \"properties\": {\n \"schemaItemType\": \"EntityClass\",\n \"modifier\": \"Abstract\",\n \"baseClass\": \"SimpleSchema.EntityClass_Test1\",\n \"label\": \"Test2\",\n \"description\": \"EntityClass Test2\",\n \"mixins\": [\n \"SimpleSchema.IMixin_Test2\"\n ]\n }\n },\n {\n \"item\": \"SimpleSchema.EntityClass_Test3\",\n \"properties\": {\n \"schemaItemType\": \"EntityClass\",\n \"modifier\": \"Sealed\",\n \"baseClass\": \"SimpleSchema.EntityClass_Test2\",\n \"label\": \"Test3\",\n \"description\": \"EntityClass Test3\"\n }\n },\n {\n \"item\": \"SimpleSchema.EntityClass_Test3\",\n \"properties\": {\n \"schemaItemType\": \"EntityClass\",\n \"baseClass\": \"SimpleSchema.EntityClass_Test2\",\n \"label\": \"Test3\",\n \"description\": \"EntityClass Test3\"\n }\n },\n {\n \"item\": \"SimpleSchema.RelationshipClass_Test1\",\n \"properties\": {\n \"schemaItemType\": \"RelationshipClass\",\n \"modifier\": \"Sealed\",\n \"baseClass\": \"BisCore.ElementRefersToElements\",\n \"label\": \"Test1\",\n \"description\": \"RelationshipClass Test1\",\n \"strength\": \"Referencing\",\n \"strengthDirection\": \"Forward\"\n }\n },\n {\n \"item\": \"SimpleSchema.RelationshipClass_Test2\",\n \"properties\": {\n \"schemaItemType\": \"RelationshipClass\",\n \"modifier\": \"None\",\n \"baseClass\": \"BisCore.ModelModelsElement\",\n \"label\": \"Test2\",\n \"description\": \"RelationshipClass Test2\",\n \"strength\": \"Embedding\",\n \"strengthDirection\": \"Backward\"\n }\n }\n ],\n \"checkHierachy\": {\n \"derivedClass\": \"SimpleSchema.EntityClass_Test3\",\n \"baseClass\": \"SimpleSchema.IMixin_Test1\"\n },\n \"checkFullLoad\": [\n {\n \"item\": \"SimpleSchema.Format_Decimal\",\n \"properties\": {\n \"schemaItemType\": \"Format\",\n \"label\": \"Test\",\n \"description\": \"Format Decimal\",\n \"type\": \"Decimal\",\n \"precision\": 4,\n \"showSignOption\": \"NoSign\",\n \"formatTraits\": [\n \"KeepSingleZero\",\n \"KeepDecimalPoint\"\n ],\n \"thousandSeparator\": \" \",\n \"decimalSeparator\": \",\",\n \"minWidth\": 3,\n \"roundFactor\": 0.1,\n \"composite\": {\n \"spacer\": \"\",\n \"includeZero\": false,\n \"units\": [\n {\n \"name\": \"Units.G\",\n \"label\": \"g\"\n },\n {\n \"name\": \"Units.MG\",\n \"label\": \"mg\"\n }\n ]\n }\n }\n },\n {\n \"item\": \"SimpleSchema.Format_Fractional\",\n \"properties\": {\n \"schemaItemType\": \"Format\",\n \"label\": \"Test\",\n \"description\": \"Format Fractional\",\n \"type\": \"Fractional\",\n \"precision\": 8,\n \"formatTraits\": [\n \"KeepSingleZero\",\n \"ShowUnitLabel\"\n ],\n \"uomSeparator\": \"\",\n \"composite\": {\n \"spacer\": \"\",\n \"units\": [\n {\n \"name\": \"SimpleSchema.Unit_Test1\",\n \"label\": \"test\"\n }\n ]\n }\n }\n },\n {\n \"item\": \"SimpleSchema.KindOfQuantity_Test1\",\n \"properties\": {\n \"schemaItemType\": \"KindOfQuantity\",\n \"label\": \"Test1\",\n \"description\": \"KindOfQuantity Test1\",\n \"relativeError\": 0.001,\n \"persistenceUnit\": \"SimpleSchema.Unit_Test1\",\n \"presentationUnits\": [\n \"SimpleSchema.Format_Fractional(4)[SimpleSchema.Unit_Test1]\"\n ]\n }\n },\n {\n \"item\": \"SimpleSchema.KindOfQuantity_Test2\",\n \"properties\": {\n \"schemaItemType\": \"KindOfQuantity\",\n \"label\": \"Test2\",\n \"description\": \"KindOfQuantity Test2\",\n \"relativeError\": 0.0001,\n \"persistenceUnit\": \"Units.MG\",\n \"presentationUnits\": [\n \"Formats.DefaultRealU(2)[Units.MG]\",\n \"Formats.DefaultRealU(2)[Units.G]\"\n ]\n }\n },\n {\n \"item\": \"SimpleSchema.StructClass_Test1\",\n \"properties\": {\n \"schemaItemType\": \"StructClass\",\n \"modifier\": \"Abstract\",\n \"label\": \"Test1\",\n \"description\": \"StructClass Test1\",\n \"properties\": [\n {\n \"name\": \"DoubleProperty\",\n \"type\": \"PrimitiveProperty\",\n \"category\": \"SimpleSchema.Category_Test\",\n \"label\": \"Double\",\n \"description\": \"Double Property\",\n \"typeName\": \"double\"\n },\n {\n \"name\": \"Point3dProperty\",\n \"type\": \"PrimitiveProperty\",\n \"isReadOnly\": true,\n \"label\": \"Point3\",\n \"description\": \"Point3 Property\",\n \"typeName\": \"point3d\",\n \"customAttributes\": [\n {\n \"className\": \"CoreCustomAttributes.HiddenProperty\"\n },\n {\n \"className\": \"BisCore.CustomHandledProperty\"\n }\n ]\n },\n {\n \"name\": \"LongArrayProperty\",\n \"type\": \"PrimitiveArrayProperty\",\n \"minOccurs\": 0,\n \"maxOccurs\": 52,\n \"label\": \"LongArray\",\n \"description\": \"LongArray Property\",\n \"typeName\": \"long\"\n }\n ]\n }\n },\n {\n \"item\": \"SimpleSchema.StructClass_Test2\",\n \"properties\": {\n \"schemaItemType\": \"StructClass\",\n \"modifier\": \"Sealed\",\n \"baseClass\": \"SimpleSchema.StructClass_Test1\",\n \"label\": \"Test2\",\n \"description\": \"StructClass Test2\",\n \"customAttributes\": [\n {\n \"className\": \"BisCore.ClassHasHandler\"\n }\n ],\n \"properties\": [\n {\n \"name\": \"DateTimeProperty\",\n \"type\": \"PrimitiveProperty\",\n \"kindOfQuantity\": \"SimpleSchema.KindOfQuantity_Test1\",\n \"label\": \"DateTime\",\n \"description\": \"DateTime Property\",\n \"typeName\": \"dateTime\"\n },\n {\n \"name\": \"BooleanProperty\",\n \"type\": \"PrimitiveProperty\",\n \"priority\": 1001,\n \"label\": \"Boolean\",\n \"description\": \"Boolean Property\",\n \"typeName\": \"boolean\"\n },\n {\n \"name\": \"StringEnumerationArrayProperty\",\n \"type\": \"PrimitiveArrayProperty\",\n \"minOccurs\": 0,\n \"maxOccurs\": 3,\n \"label\": \"StringEnumerationArray\",\n \"description\": \"StringEnumerationArray Property\",\n \"typeName\": \"SimpleSchema.Enumeration_String\"\n }\n ]\n }\n },\n {\n \"item\": \"SimpleSchema.CustomAttributeClass_Test1\",\n \"properties\": {\n \"schemaItemType\": \"CustomAttributeClass\",\n \"appliesTo\": \"AnyClass\",\n \"modifier\": \"Abstract\",\n \"label\": \"Test1\",\n \"description\": \"CustomAttributeClass Test1\",\n \"properties\": [\n {\n \"name\": \"StringProperty\",\n \"type\": \"PrimitiveProperty\",\n \"label\": \"String\",\n \"description\": \"String Property\",\n \"extendedTypeName\": \"Json\",\n \"minLength\": 1,\n \"maxLength\": 150,\n \"typeName\": \"string\"\n },\n {\n \"name\": \"StructProperty\",\n \"type\": \"StructProperty\",\n \"label\": \"Struct\",\n \"description\": \"Struct Property\",\n \"typeName\": \"SimpleSchema.StructClass_Test2\"\n }\n ]\n }\n },\n {\n \"item\": \"SimpleSchema.CustomAttributeClass_Test2\",\n \"properties\": {\n \"schemaItemType\": \"CustomAttributeClass\",\n \"appliesTo\": \"AnyProperty\",\n \"baseClass\": \"BisCore.CustomHandledProperty\",\n \"label\": \"Test2\",\n \"description\": \"CustomAttributeClass Test2\",\n \"customAttributes\": [\n {\n \"className\": \"SimpleSchema.CustomAttributeClass_Test3\"\n }\n ],\n \"properties\": [\n {\n \"name\": \"BinaryProperty\",\n \"type\": \"PrimitiveProperty\",\n \"label\": \"Binary\",\n \"description\": \"Binary Property\",\n \"typeName\": \"binary\"\n },\n {\n \"name\": \"IntegerArrayProperty\",\n \"type\": \"PrimitiveArrayProperty\",\n \"minOccurs\": 0,\n \"maxOccurs\": 150,\n \"maxValue\": 1000,\n \"label\": \"IntegerArray\",\n \"description\": \"IntegerArray Property\",\n \"typeName\": \"int\"\n }\n ]\n }\n },\n {\n \"item\": \"SimpleSchema.CustomAttributeClass_Test3\",\n \"properties\": {\n \"schemaItemType\": \"CustomAttributeClass\",\n \"modifier\": \"Sealed\",\n \"appliesTo\": \"Any\",\n \"baseClass\": \"SimpleSchema.CustomAttributeClass_Test1\",\n \"label\": \"Test3\",\n \"description\": \"CustomAttributeClass Test3\",\n \"properties\": [\n {\n \"name\": \"IntegerProperty\",\n \"type\": \"PrimitiveProperty\",\n \"minValue\": 1,\n \"maxValue\": 101,\n \"label\": \"Integer\",\n \"description\": \"Integer Property\",\n \"typeName\": \"int\",\n \"customAttributes\": [\n {\n \"className\": \"BisCore.AutoHandledProperty\",\n \"StatementTypes\": 3\n }\n ]\n },\n {\n \"name\": \"IntegerEnumerationArray\",\n \"type\": \"PrimitiveArrayProperty\",\n \"label\": \"IntegerEnumerationArray\",\n \"description\": \"IntegerEnumerationArray Property\",\n \"minOccurs\": 0,\n \"maxOccurs\": 2147483647,\n \"typeName\": \"BisCore.SectionType\"\n }\n ]\n }\n },\n {\n \"item\": \"SimpleSchema.IMixin_Test1\",\n \"properties\": {\n \"schemaItemType\": \"Mixin\",\n \"appliesTo\": \"BisCore.Element\",\n \"label\": \"Test1\",\n \"description\": \"Mixin Test1\",\n \"properties\": [\n {\n \"name\": \"LongProperty\",\n \"type\": \"PrimitiveProperty\",\n \"category\": \"SimpleSchema.Category_Test\",\n \"label\": \"Long\",\n \"description\": \"Long Property\",\n \"typeName\": \"long\"\n },\n {\n \"name\": \"BooleanArrayProperty\",\n \"type\": \"PrimitiveArrayProperty\",\n \"minOccurs\": 1,\n \"maxOccurs\": 5,\n \"label\": \"BooleanArray\",\n \"description\": \"BooleanArray Property\",\n \"typeName\": \"boolean\"\n }\n ],\n \"customAttributes\": [\n {\n \"className\": \"SimpleSchema.CustomAttributeClass_Test3\"\n }\n ]\n }\n },\n {\n \"item\": \"SimpleSchema.IMixin_Test2\",\n \"properties\": {\n \"schemaItemType\": \"Mixin\",\n \"baseClass\": \"SimpleSchema.IMixin_Test1\",\n \"appliesTo\": \"BisCore.PhysicalElement\",\n \"label\": \"Test2\",\n \"description\": \"Mixin Test2\",\n \"properties\": [\n {\n \"name\": \"IGeometryProperty\",\n \"type\": \"PrimitiveProperty\",\n \"label\": \"IGeometry\",\n \"description\": \"IGeometry Property\",\n \"typeName\": \"Bentley.Geometry.Common.IGeometry\",\n \"customAttributes\": [\n {\n \"className\": \"CoreCustomAttributes.Deprecated\",\n \"Description\": \"Deprecated renamed property.\"\n },\n {\n \"className\": \"CoreCustomAttributes.HiddenProperty\"\n }\n ]\n },\n {\n \"name\": \"DoubleArrayProperty\",\n \"type\": \"PrimitiveArrayProperty\",\n \"minValue\": 0.1,\n \"maxValue\": 9.9,\n \"maxOccurs\": 10,\n \"minOccurs\": 2,\n \"label\": \"DoubleArray\",\n \"description\": \"DoubleArray Property\",\n \"typeName\": \"double\"\n }\n ]\n }\n },\n {\n \"item\": \"SimpleSchema.EntityClass_Test3\",\n \"properties\": {\n \"schemaItemType\": \"EntityClass\",\n \"modifier\": \"Sealed\",\n \"baseClass\": \"SimpleSchema.EntityClass_Test2\",\n \"label\": \"Test3\",\n \"description\": \"EntityClass Test3\",\n \"properties\": [\n {\n \"name\": \"StringEnumerationProperty\",\n \"type\": \"PrimitiveProperty\",\n \"label\": \"StringEnumeration\",\n \"description\": \"StringEnumeration Property\",\n \"typeName\": \"CoreCustomAttributes.ProductionStatusValue\"\n }\n ]\n }\n },\n {\n \"item\": \"SimpleSchema.RelationshipClass_Test1\",\n \"properties\": {\n \"schemaItemType\": \"RelationshipClass\",\n \"modifier\": \"Sealed\",\n \"baseClass\": \"BisCore.ElementRefersToElements\",\n \"label\": \"Test1\",\n \"description\": \"RelationshipClass Test1\",\n \"strength\": \"Referencing\",\n \"strengthDirection\": \"Forward\",\n \"customAttributes\": [\n {\n \"className\": \"CoreCustomAttributes.HiddenClass\",\n \"Show\": false\n }\n ],\n \"properties\": [\n {\n \"name\": \"Point2dArrayProperty\",\n \"type\": \"PrimitiveArrayProperty\",\n \"minOccurs\": 5,\n \"maxOccurs\": 75,\n \"label\": \"Point2dArray\",\n \"description\": \"Point2dArray Property\",\n \"typeName\": \"point2d\"\n },\n {\n \"name\": \"Point3dArrayProperty\",\n \"type\": \"PrimitiveArrayProperty\",\n \"minOccurs\": 3,\n \"maxOccurs\": 13,\n \"label\": \"Point3dArray\",\n \"description\": \"Point3dArray Property\",\n \"typeName\": \"point3d\"\n }\n ],\n \"source\": {\n \"multiplicity\": \"(0..*)\",\n \"roleLabel\": \"refers to\",\n \"polymorphic\": true,\n \"abstractConstraint\": \"BisCore.Element\",\n \"constraintClasses\": [\n \"BisCore.Element\"\n ],\n \"customAttributes\": [\n {\n \"className\": \"SimpleSchema.CustomAttributeClass_Test4\",\n \"StringProperty\": \"Source\"\n }\n ]\n },\n \"target\": {\n \"multiplicity\": \"(0..*)\",\n \"roleLabel\": \"is referenced by\",\n \"polymorphic\": true,\n \"abstractConstraint\": \"BisCore.Element\",\n \"constraintClasses\": [\n \"BisCore.Element\"\n ],\n \"customAttributes\": [\n {\n \"className\": \"SimpleSchema.CustomAttributeClass_Test4\",\n \"StringProperty\": \"Target\"\n }\n ]\n }\n }\n }\n ]\n }\n ]\n}"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ECSqlQueries.test.d.ts","sourceRoot":"","sources":["../../../../src/test/incrementalSchemaLocater/ECSqlQueries.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,343 @@
|
|
|
1
|
+
import { Schema, SchemaItemType, SchemaKey } from "@itwin/ecschema-metadata";
|
|
2
|
+
import { IncrementalTestHelper } from "./utils/IncrementalTestHelper";
|
|
3
|
+
import { expect, use } from "chai";
|
|
4
|
+
import * as deepEqualInAnyOrder from "deep-equal-in-any-order";
|
|
5
|
+
import { TestSqlSchemaLocater } from "./utils/TestSqlSchemaLocater";
|
|
6
|
+
use(deepEqualInAnyOrder);
|
|
7
|
+
function findItem(name, rowData) {
|
|
8
|
+
const item = rowData.find((i) => i.name === name);
|
|
9
|
+
if (!item)
|
|
10
|
+
throw new Error(`Could not find schema item '${name}'`);
|
|
11
|
+
return item;
|
|
12
|
+
}
|
|
13
|
+
function findProperty(name, rowData) {
|
|
14
|
+
return rowData.find((i) => i.name === name);
|
|
15
|
+
}
|
|
16
|
+
function isECClass(item) {
|
|
17
|
+
return item.schemaItemType === SchemaItemType.EntityClass || item.schemaItemType === SchemaItemType.Mixin || item.schemaItemType === SchemaItemType.RelationshipClass ||
|
|
18
|
+
item.schemaItemType === SchemaItemType.StructClass || item.schemaItemType === SchemaItemType.CustomAttributeClass;
|
|
19
|
+
}
|
|
20
|
+
function isRelationshipClass(item) {
|
|
21
|
+
return "source" in item && "target" in item;
|
|
22
|
+
}
|
|
23
|
+
describe("ECSql query tests", function () {
|
|
24
|
+
let schemaLoader;
|
|
25
|
+
function validateItem(name, itemPropObjects, schema) {
|
|
26
|
+
const actualJson = findItem(name, itemPropObjects);
|
|
27
|
+
const expectedItem = schema.getItemSync(name);
|
|
28
|
+
const expectedJson = expectedItem.toJSON();
|
|
29
|
+
// The following code exists because some data coming from the database will not match the
|
|
30
|
+
// data from the context due to default values. This is OK as long as the conditions are
|
|
31
|
+
// correct. For instance, schemaItem name will not exist in serialized JSON, but does exist
|
|
32
|
+
// coming from the DB. RelationshipConstraint's AbstractConstraint is set when only one
|
|
33
|
+
// constraint class exists coming from the database, but a serialized Relationship will not
|
|
34
|
+
// contain the abstract constraint. The one constraint is 'assumed' to be the abstract constraint.
|
|
35
|
+
expect(actualJson.name).to.equal(expectedItem?.name);
|
|
36
|
+
delete actualJson.name;
|
|
37
|
+
if (isECClass(actualJson)) {
|
|
38
|
+
if (expectedJson.schemaItemType === "Mixin") {
|
|
39
|
+
expect(actualJson.modifier).to.be.oneOf([undefined, 'Abstract']);
|
|
40
|
+
delete actualJson.modifier;
|
|
41
|
+
}
|
|
42
|
+
else if (expectedJson.modifier === undefined) {
|
|
43
|
+
expect(actualJson.modifier).to.be.oneOf([undefined, 'None']);
|
|
44
|
+
delete actualJson.modifier;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
if (isRelationshipClass(actualJson)) {
|
|
48
|
+
// abstract can be set via database, but not via context for 1 constraint class
|
|
49
|
+
// so verify constraint and conditions are correct and delete property
|
|
50
|
+
const expectedRelationship = expectedJson;
|
|
51
|
+
if (actualJson.source.abstractConstraint !== expectedRelationship.source.abstractConstraint) {
|
|
52
|
+
expect(actualJson.source.abstractConstraint).to.equal(expectedRelationship.source.constraintClasses[0]);
|
|
53
|
+
expect(actualJson.source.constraintClasses.length).to.equal(1);
|
|
54
|
+
delete actualJson.source.abstractConstraint;
|
|
55
|
+
}
|
|
56
|
+
if (actualJson.target.abstractConstraint !== expectedRelationship.target.abstractConstraint) {
|
|
57
|
+
expect(actualJson.target.abstractConstraint).to.equal(expectedRelationship.target.constraintClasses[0]);
|
|
58
|
+
expect(actualJson.target.constraintClasses.length).to.equal(1);
|
|
59
|
+
delete actualJson.target.abstractConstraint;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
if (actualJson.schemaItemType === SchemaItemType.Format) {
|
|
63
|
+
if (undefined !== actualJson.includeZero && undefined === expectedJson.includeZero) {
|
|
64
|
+
expect(actualJson.includeZero).to.equal(true);
|
|
65
|
+
delete actualJson.includeZero;
|
|
66
|
+
}
|
|
67
|
+
if (actualJson.composite && undefined !== actualJson.composite.includeZero && undefined === expectedJson.composite.includeZero) {
|
|
68
|
+
expect(actualJson.composite.includeZero).to.equal(true);
|
|
69
|
+
delete actualJson.composite.includeZero;
|
|
70
|
+
}
|
|
71
|
+
if (actualJson.composite && undefined !== actualJson.composite.spacer && undefined === expectedJson.composite.spacer) {
|
|
72
|
+
expect(actualJson.composite.spacer).to.equal(" ");
|
|
73
|
+
delete actualJson.composite.spacer;
|
|
74
|
+
}
|
|
75
|
+
if (undefined !== actualJson.decimalSeparator && undefined === expectedJson.decimalSeparator) {
|
|
76
|
+
expect(actualJson.decimalSeparator).to.equal(".");
|
|
77
|
+
delete actualJson.decimalSeparator;
|
|
78
|
+
}
|
|
79
|
+
if (undefined !== actualJson.roundFactor && undefined === expectedJson.roundFactor) {
|
|
80
|
+
expect(actualJson.roundFactor).to.equal(0);
|
|
81
|
+
delete actualJson.roundFactor;
|
|
82
|
+
}
|
|
83
|
+
if (undefined !== actualJson.showSignOption && undefined === expectedJson.showSignOption) {
|
|
84
|
+
expect(actualJson.showSignOption).to.equal("OnlyNegative");
|
|
85
|
+
delete actualJson.showSignOption;
|
|
86
|
+
}
|
|
87
|
+
if (undefined !== actualJson.thousandSeparator && undefined === expectedJson.thousandSeparator) {
|
|
88
|
+
expect(actualJson.thousandSeparator).to.equal(",");
|
|
89
|
+
delete actualJson.thousandSeparator;
|
|
90
|
+
}
|
|
91
|
+
if (undefined !== actualJson.uomSeparator && undefined === expectedJson.uomSeparator) {
|
|
92
|
+
expect(actualJson.uomSeparator).to.equal(" ");
|
|
93
|
+
delete actualJson.uomSeparator;
|
|
94
|
+
}
|
|
95
|
+
if (undefined !== actualJson.spacer && undefined === expectedJson.spacer) {
|
|
96
|
+
expect(actualJson.spacer).to.equal(" ");
|
|
97
|
+
delete actualJson.spacer;
|
|
98
|
+
}
|
|
99
|
+
if (undefined !== actualJson.formatTraits) {
|
|
100
|
+
actualJson.formatTraits = actualJson.formatTraits.map((trait) => {
|
|
101
|
+
return trait.charAt(0).toUpperCase() + trait.slice(1);
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
expect(actualJson).to.deep.equalInAnyOrder(expectedJson);
|
|
106
|
+
}
|
|
107
|
+
this.beforeEach(async () => {
|
|
108
|
+
await IncrementalTestHelper.setup();
|
|
109
|
+
schemaLoader = new TestSqlSchemaLocater(IncrementalTestHelper.iModel);
|
|
110
|
+
});
|
|
111
|
+
afterEach(async () => {
|
|
112
|
+
await IncrementalTestHelper.close();
|
|
113
|
+
});
|
|
114
|
+
it("Schema query, props parsed successfully", async function () {
|
|
115
|
+
const testKey = new SchemaKey("SchemaTest", 1, 0, 0);
|
|
116
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
117
|
+
const expectedSchema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
118
|
+
if (!expectedSchema)
|
|
119
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
120
|
+
const actualSchemaProps = await schemaLoader.getSchemaJson(testKey, IncrementalTestHelper.context);
|
|
121
|
+
const actualSchema = await Schema.fromJson(actualSchemaProps, IncrementalTestHelper.context);
|
|
122
|
+
expect(actualSchema.toJSON()).to.deep.equal(expectedSchema?.toJSON());
|
|
123
|
+
});
|
|
124
|
+
it("Property query, props parsed successfully", async function () {
|
|
125
|
+
const testKey = new SchemaKey("PropertyTest", 1, 0, 0);
|
|
126
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
127
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
128
|
+
if (!schema)
|
|
129
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
130
|
+
const classPropsObjects = await schemaLoader.getEntities(testKey.name, IncrementalTestHelper.context);
|
|
131
|
+
const entityOneProps = findItem("EntityOne", classPropsObjects);
|
|
132
|
+
const entityTwoProps = findItem("EntityTwo", classPropsObjects);
|
|
133
|
+
const expectedEntityOne = await schema.getEntityClass("EntityOne");
|
|
134
|
+
const expectedEntityTwo = await schema.getEntityClass("EntityTwo");
|
|
135
|
+
const validateProperty = (propertyName, actualItem = entityOneProps, expectedItem = expectedEntityOne) => {
|
|
136
|
+
const actualProperty = findProperty(propertyName, actualItem.properties);
|
|
137
|
+
const expectedProperty = expectedItem?.getPropertySync(propertyName);
|
|
138
|
+
// if maxOccurs is the maximum int value in the context Schema,
|
|
139
|
+
// the property from the DB will not have a value
|
|
140
|
+
if (expectedProperty.maxOccurs === 2147483647) {
|
|
141
|
+
expect(actualProperty.maxOccurs).to.be.undefined;
|
|
142
|
+
// set so comparison will pass
|
|
143
|
+
actualProperty.maxOccurs = 2147483647;
|
|
144
|
+
}
|
|
145
|
+
expect(actualProperty).to.deep.equal(expectedProperty?.toJSON());
|
|
146
|
+
};
|
|
147
|
+
// All but one testable property is in EntityOne
|
|
148
|
+
for (const property of await expectedEntityOne.getProperties(true)) {
|
|
149
|
+
validateProperty(property.name);
|
|
150
|
+
}
|
|
151
|
+
// Backward direction Navigation property is in EntityTwo
|
|
152
|
+
validateProperty("EntityTwoParent", entityTwoProps, expectedEntityTwo);
|
|
153
|
+
});
|
|
154
|
+
it("Entity query, props parsed successfully", async function () {
|
|
155
|
+
const testKey = new SchemaKey("EntityTest", 1, 0, 0);
|
|
156
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
157
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
158
|
+
if (!schema)
|
|
159
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
160
|
+
const classPropsObjects = await schemaLoader.getEntities(testKey.name, IncrementalTestHelper.context);
|
|
161
|
+
expect(classPropsObjects.length).to.be.greaterThan(0);
|
|
162
|
+
validateItem("EntityModifierNone", classPropsObjects, schema);
|
|
163
|
+
validateItem("EntityModifierAbstract", classPropsObjects, schema);
|
|
164
|
+
validateItem("EntityModifierSealed", classPropsObjects, schema);
|
|
165
|
+
});
|
|
166
|
+
it("Struct query, props parsed successfully", async function () {
|
|
167
|
+
const testKey = new SchemaKey("StructTest", 1, 0, 0);
|
|
168
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
169
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
170
|
+
if (!schema)
|
|
171
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
172
|
+
const classPropsObjects = await schemaLoader.getStructs(testKey.name, IncrementalTestHelper.context);
|
|
173
|
+
expect(classPropsObjects.length).to.be.greaterThan(0);
|
|
174
|
+
validateItem("StructModifierNone", classPropsObjects, schema);
|
|
175
|
+
validateItem("StructModifierAbstract", classPropsObjects, schema);
|
|
176
|
+
validateItem("StructModifierSealed", classPropsObjects, schema);
|
|
177
|
+
});
|
|
178
|
+
it("Mixin query, props parsed successfully", async function () {
|
|
179
|
+
const testKey = new SchemaKey("MixinTest", 1, 0, 0);
|
|
180
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
181
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
182
|
+
if (!schema)
|
|
183
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
184
|
+
const classPropsObjects = await schemaLoader.getMixins(testKey.name, IncrementalTestHelper.context);
|
|
185
|
+
expect(classPropsObjects.length).to.be.greaterThan(0);
|
|
186
|
+
validateItem("IBaseMixin", classPropsObjects, schema);
|
|
187
|
+
validateItem("ITestMixin", classPropsObjects, schema);
|
|
188
|
+
});
|
|
189
|
+
it("Relationship query, props parsed successfully", async function () {
|
|
190
|
+
const testKey = new SchemaKey("RelationshipTest", 1, 0, 0);
|
|
191
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
192
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
193
|
+
if (!schema)
|
|
194
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
195
|
+
const classPropsObjects = await schemaLoader.getRelationships(testKey.name, IncrementalTestHelper.context);
|
|
196
|
+
expect(classPropsObjects.length).to.be.greaterThan(0);
|
|
197
|
+
validateItem("OwnerOwnsVehicles", classPropsObjects, schema);
|
|
198
|
+
validateItem("OwnerOwnsCars", classPropsObjects, schema);
|
|
199
|
+
validateItem("OwnerOwnsAmericanCars", classPropsObjects, schema);
|
|
200
|
+
validateItem("PhysicalModelBreaksDownCarElement", classPropsObjects, schema);
|
|
201
|
+
});
|
|
202
|
+
it("CustomAttributeClass query, props parsed successfully", async function () {
|
|
203
|
+
const testKey = new SchemaKey("CustomAttributeClassTest", 1, 0, 0);
|
|
204
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
205
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
206
|
+
if (!schema)
|
|
207
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
208
|
+
const classPropsObjects = await schemaLoader.getCustomAttributeClasses(testKey.name, IncrementalTestHelper.context);
|
|
209
|
+
expect(classPropsObjects.length).to.be.greaterThan(0);
|
|
210
|
+
validateItem("CustomAttributeModifierNone", classPropsObjects, schema);
|
|
211
|
+
validateItem("CustomAttributeModifierSealed", classPropsObjects, schema);
|
|
212
|
+
validateItem("CustomAttributeModifierAbstract", classPropsObjects, schema);
|
|
213
|
+
});
|
|
214
|
+
it("KindOfQuantity query, props parsed successfully", async function () {
|
|
215
|
+
const testKey = new SchemaKey("KindOfQuantityTest", 1, 0, 0);
|
|
216
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
217
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
218
|
+
if (!schema)
|
|
219
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
220
|
+
const itemPropsObjects = await schemaLoader.getKindOfQuantities(testKey.name, IncrementalTestHelper.context);
|
|
221
|
+
expect(itemPropsObjects.length).to.be.greaterThan(0);
|
|
222
|
+
validateItem("ACCELERATION", itemPropsObjects, schema);
|
|
223
|
+
validateItem("ANGLE", itemPropsObjects, schema);
|
|
224
|
+
});
|
|
225
|
+
it("PropertyCategory query, props parsed successfully", async function () {
|
|
226
|
+
const testKey = new SchemaKey("PropertyCategoryTest", 1, 0, 0);
|
|
227
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
228
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
229
|
+
if (!schema)
|
|
230
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
231
|
+
const itemPropsObjects = await schemaLoader.getPropertyCategories(testKey.name, IncrementalTestHelper.context);
|
|
232
|
+
expect(itemPropsObjects.length).to.be.greaterThan(0);
|
|
233
|
+
validateItem("PropertyCategory1", itemPropsObjects, schema);
|
|
234
|
+
validateItem("PropertyCategory2", itemPropsObjects, schema);
|
|
235
|
+
});
|
|
236
|
+
it("Enumeration query, props parsed successfully", async function () {
|
|
237
|
+
const testKey = new SchemaKey("EnumerationTest", 1, 0, 0);
|
|
238
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
239
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
240
|
+
if (!schema)
|
|
241
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
242
|
+
const itemPropsObjects = await schemaLoader.getEnumerations(testKey.name, IncrementalTestHelper.context);
|
|
243
|
+
expect(itemPropsObjects.length).to.be.greaterThan(0);
|
|
244
|
+
validateItem("IntEnumeration", itemPropsObjects, schema);
|
|
245
|
+
validateItem("StringEnumeration", itemPropsObjects, schema);
|
|
246
|
+
});
|
|
247
|
+
it("Unit query, props parsed successfully", async function () {
|
|
248
|
+
const testKey = new SchemaKey("UnitTest", 1, 0, 0);
|
|
249
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
250
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
251
|
+
if (!schema)
|
|
252
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
253
|
+
const itemPropsObjects = await schemaLoader.getUnits(testKey.name, IncrementalTestHelper.context);
|
|
254
|
+
expect(itemPropsObjects.length).to.be.greaterThan(0);
|
|
255
|
+
validateItem("LITRE", itemPropsObjects, schema);
|
|
256
|
+
validateItem("GALLON", itemPropsObjects, schema);
|
|
257
|
+
validateItem("ACRE", itemPropsObjects, schema);
|
|
258
|
+
validateItem("FAHRENHEIT", itemPropsObjects, schema);
|
|
259
|
+
});
|
|
260
|
+
it("InvertedUnit query, props parsed successfully", async function () {
|
|
261
|
+
const testKey = new SchemaKey("InvertedUnitTest", 1, 0, 0);
|
|
262
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
263
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
264
|
+
if (!schema)
|
|
265
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
266
|
+
const itemPropsObjects = await schemaLoader.getInvertedUnits(testKey.name, IncrementalTestHelper.context);
|
|
267
|
+
expect(itemPropsObjects.length).to.be.greaterThan(0);
|
|
268
|
+
validateItem("FT_HORIZONTAL_PER_FT_VERTICAL", itemPropsObjects, schema);
|
|
269
|
+
});
|
|
270
|
+
it("UnitSystem query, props parsed successfully", async function () {
|
|
271
|
+
// There's a UnitSystem in there.
|
|
272
|
+
const testKey = new SchemaKey("InvertedUnitTest", 1, 0, 0);
|
|
273
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
274
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
275
|
+
if (!schema)
|
|
276
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
277
|
+
const itemPropsObjects = await schemaLoader.getUnitSystems(testKey.name, IncrementalTestHelper.context);
|
|
278
|
+
expect(itemPropsObjects.length).to.be.greaterThan(0);
|
|
279
|
+
validateItem("USCUSTOM", itemPropsObjects, schema);
|
|
280
|
+
});
|
|
281
|
+
it("Constant query, props parsed successfully", async function () {
|
|
282
|
+
// There's a UnitSystem in there.
|
|
283
|
+
const testKey = new SchemaKey("ConstantTest", 1, 0, 0);
|
|
284
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
285
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
286
|
+
if (!schema)
|
|
287
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
288
|
+
const itemPropsObjects = await schemaLoader.getConstants(testKey.name, IncrementalTestHelper.context);
|
|
289
|
+
expect(itemPropsObjects.length).to.be.greaterThan(0);
|
|
290
|
+
validateItem("KILO", itemPropsObjects, schema);
|
|
291
|
+
validateItem("HALF_PI", itemPropsObjects, schema);
|
|
292
|
+
});
|
|
293
|
+
it("Phenomenon query, props parsed successfully", async function () {
|
|
294
|
+
// There's a Phenomenon in there.
|
|
295
|
+
const testKey = new SchemaKey("ConstantTest", 1, 0, 0);
|
|
296
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
297
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
298
|
+
if (!schema)
|
|
299
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
300
|
+
const itemPropsObjects = await schemaLoader.getPhenomenon(testKey.name, IncrementalTestHelper.context);
|
|
301
|
+
expect(itemPropsObjects.length).to.be.greaterThan(0);
|
|
302
|
+
validateItem("NUMBER", itemPropsObjects, schema);
|
|
303
|
+
validateItem("LENGTH_RATIO", itemPropsObjects, schema);
|
|
304
|
+
});
|
|
305
|
+
it("Format Schema parses successfully", async function () {
|
|
306
|
+
// Using installed Formats schema
|
|
307
|
+
const testKey = new SchemaKey("Formats", 1, 0, 0);
|
|
308
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
309
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
310
|
+
if (!schema)
|
|
311
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
312
|
+
const itemPropsObjects = await schemaLoader.getFormats(testKey.name, IncrementalTestHelper.context);
|
|
313
|
+
expect(itemPropsObjects.length).to.be.greaterThan(0);
|
|
314
|
+
for (const props of itemPropsObjects) {
|
|
315
|
+
validateItem(props.name, itemPropsObjects, schema);
|
|
316
|
+
}
|
|
317
|
+
});
|
|
318
|
+
it("Comprehensive Format parses successfully", async function () {
|
|
319
|
+
const testKey = new SchemaKey("FormatTest", 1, 0, 0);
|
|
320
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
321
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
322
|
+
if (!schema)
|
|
323
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
324
|
+
const itemPropsObjects = await schemaLoader.getFormats(testKey.name, IncrementalTestHelper.context);
|
|
325
|
+
expect(itemPropsObjects.length).to.be.greaterThan(0);
|
|
326
|
+
for (const props of itemPropsObjects) {
|
|
327
|
+
validateItem(props.name, itemPropsObjects, schema);
|
|
328
|
+
}
|
|
329
|
+
});
|
|
330
|
+
it("CustomAttribute instances parse successfully", async function () {
|
|
331
|
+
const testKey = new SchemaKey("CustomAttributeInstanceTest", 1, 0, 0);
|
|
332
|
+
await IncrementalTestHelper.importSchema(testKey);
|
|
333
|
+
const schema = await IncrementalTestHelper.context.getSchema(testKey);
|
|
334
|
+
if (!schema)
|
|
335
|
+
throw new Error(`Could not find schema ${testKey.name}`);
|
|
336
|
+
const itemPropsObjects = await schemaLoader.getStructs(testKey.name, IncrementalTestHelper.context);
|
|
337
|
+
expect(itemPropsObjects.length).to.be.greaterThan(0);
|
|
338
|
+
for (const props of itemPropsObjects) {
|
|
339
|
+
validateItem(props.name, itemPropsObjects, schema);
|
|
340
|
+
}
|
|
341
|
+
});
|
|
342
|
+
});
|
|
343
|
+
//# sourceMappingURL=ECSqlQueries.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ECSqlQueries.test.js","sourceRoot":"","sources":["../../../../src/test/incrementalSchemaLocater/ECSqlQueries.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { AnyPropertyProps, AnySchemaItemProps, ClassProps, RelationshipClassProps, Schema, SchemaItemType, SchemaKey } from \"@itwin/ecschema-metadata\";\nimport { IncrementalTestHelper } from \"./utils/IncrementalTestHelper\";\nimport { expect, use } from \"chai\";\nimport * as deepEqualInAnyOrder from \"deep-equal-in-any-order\";\nimport { TestSqlSchemaLocater } from \"./utils/TestSqlSchemaLocater\";\n\nuse(deepEqualInAnyOrder);\n\nfunction findItem<T extends AnySchemaItemProps>(name: string, rowData: T[]) {\n const item = rowData.find((i: AnySchemaItemProps) => i.name === name);\n if (!item)\n throw new Error(`Could not find schema item '${name}'`);\n return item;\n}\n\nfunction findProperty<T extends AnyPropertyProps>(name: string, rowData: T[]) {\n return rowData.find((i: AnyPropertyProps) => i.name === name);\n}\n\nfunction isECClass(item: AnySchemaItemProps): item is ClassProps {\n return item.schemaItemType === SchemaItemType.EntityClass || item.schemaItemType === SchemaItemType.Mixin || item.schemaItemType === SchemaItemType.RelationshipClass ||\n item.schemaItemType === SchemaItemType.StructClass || item.schemaItemType === SchemaItemType.CustomAttributeClass;\n}\n\nfunction isRelationshipClass(item: AnySchemaItemProps): item is RelationshipClassProps {\n return \"source\" in item && \"target\" in item;\n}\n\ndescribe(\"ECSql query tests\", function () {\n let schemaLoader: TestSqlSchemaLocater;\n\n function validateItem(name: string, itemPropObjects: AnySchemaItemProps[], schema: Schema) {\n const actualJson = findItem(name, itemPropObjects);\n const expectedItem = schema.getItemSync(name);\n const expectedJson = expectedItem!.toJSON();\n\n // The following code exists because some data coming from the database will not match the\n // data from the context due to default values. This is OK as long as the conditions are\n // correct. For instance, schemaItem name will not exist in serialized JSON, but does exist\n // coming from the DB. RelationshipConstraint's AbstractConstraint is set when only one\n // constraint class exists coming from the database, but a serialized Relationship will not\n // contain the abstract constraint. The one constraint is 'assumed' to be the abstract constraint.\n\n expect(actualJson.name).to.equal(expectedItem?.name);\n delete (actualJson as any).name;\n\n if (isECClass(actualJson)) {\n if (expectedJson.schemaItemType === \"Mixin\") {\n expect(actualJson.modifier).to.be.oneOf([undefined, 'Abstract']);\n delete (actualJson as any).modifier;\n } else if ((expectedJson as ClassProps).modifier === undefined) {\n expect(actualJson.modifier).to.be.oneOf([undefined, 'None']);\n delete (actualJson as any).modifier;\n }\n }\n if (isRelationshipClass(actualJson)) {\n // abstract can be set via database, but not via context for 1 constraint class\n // so verify constraint and conditions are correct and delete property\n const expectedRelationship = expectedJson as any as RelationshipClassProps;\n if (actualJson.source.abstractConstraint !== expectedRelationship.source.abstractConstraint) {\n expect(actualJson.source.abstractConstraint).to.equal(expectedRelationship.source.constraintClasses[0]);\n expect(actualJson.source.constraintClasses.length).to.equal(1);\n delete (actualJson.source as any).abstractConstraint;\n }\n if (actualJson.target.abstractConstraint !== expectedRelationship.target.abstractConstraint) {\n expect(actualJson.target.abstractConstraint).to.equal(expectedRelationship.target.constraintClasses[0]);\n expect(actualJson.target.constraintClasses.length).to.equal(1);\n delete (actualJson.target as any).abstractConstraint;\n }\n }\n\n if (actualJson.schemaItemType === SchemaItemType.Format) {\n if (undefined !== (actualJson as any).includeZero && undefined === (expectedJson as any).includeZero) {\n expect((actualJson as any).includeZero).to.equal(true);\n delete (actualJson as any).includeZero;\n }\n if ((actualJson as any).composite && undefined !== (actualJson as any).composite.includeZero && undefined === (expectedJson as any).composite.includeZero) {\n expect((actualJson as any).composite.includeZero).to.equal(true);\n delete (actualJson as any).composite.includeZero;\n }\n if ((actualJson as any).composite && undefined !== (actualJson as any).composite.spacer && undefined === (expectedJson as any).composite.spacer) {\n expect((actualJson as any).composite.spacer).to.equal(\" \");\n delete (actualJson as any).composite.spacer;\n }\n if (undefined !== (actualJson as any).decimalSeparator && undefined === (expectedJson as any).decimalSeparator) {\n expect((actualJson as any).decimalSeparator).to.equal(\".\");\n delete (actualJson as any).decimalSeparator;\n }\n if (undefined !== (actualJson as any).roundFactor && undefined === (expectedJson as any).roundFactor) {\n expect((actualJson as any).roundFactor).to.equal(0);\n delete (actualJson as any).roundFactor;\n }\n if (undefined !== (actualJson as any).showSignOption && undefined === (expectedJson as any).showSignOption) {\n expect((actualJson as any).showSignOption).to.equal(\"OnlyNegative\");\n delete (actualJson as any).showSignOption;\n }\n if (undefined !== (actualJson as any).thousandSeparator && undefined === (expectedJson as any).thousandSeparator) {\n expect((actualJson as any).thousandSeparator).to.equal(\",\");\n delete (actualJson as any).thousandSeparator;\n }\n if (undefined !== (actualJson as any).uomSeparator && undefined === (expectedJson as any).uomSeparator) {\n expect((actualJson as any).uomSeparator).to.equal(\" \");\n delete (actualJson as any).uomSeparator;\n }\n if (undefined !== (actualJson as any).spacer && undefined === (expectedJson as any).spacer) {\n expect((actualJson as any).spacer).to.equal(\" \");\n delete (actualJson as any).spacer;\n }\n if (undefined !== (actualJson as any).formatTraits) {\n (actualJson as any).formatTraits = (actualJson as any).formatTraits.map((trait: string) => {\n return trait.charAt(0).toUpperCase() + trait.slice(1);\n });\n }\n }\n\n expect(actualJson).to.deep.equalInAnyOrder(expectedJson);\n }\n\n this.beforeEach(async () => {\n await IncrementalTestHelper.setup();\n schemaLoader = new TestSqlSchemaLocater(IncrementalTestHelper.iModel);\n });\n\n afterEach(async () => {\n await IncrementalTestHelper.close();\n });\n\n it(\"Schema query, props parsed successfully\", async function () {\n const testKey = new SchemaKey(\"SchemaTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const expectedSchema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!expectedSchema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const actualSchemaProps = await schemaLoader.getSchemaJson(testKey, IncrementalTestHelper.context);\n const actualSchema = await Schema.fromJson(actualSchemaProps!, IncrementalTestHelper.context);\n\n expect(actualSchema.toJSON()).to.deep.equal(expectedSchema?.toJSON());\n });\n\n it(\"Property query, props parsed successfully\", async function () {\n const testKey = new SchemaKey(\"PropertyTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const classPropsObjects = await schemaLoader.getEntities(testKey.name, IncrementalTestHelper.context);\n const entityOneProps = findItem(\"EntityOne\", classPropsObjects);\n const entityTwoProps = findItem(\"EntityTwo\", classPropsObjects);\n const expectedEntityOne = await schema.getEntityClass(\"EntityOne\");\n const expectedEntityTwo = await schema.getEntityClass(\"EntityTwo\");\n\n const validateProperty = (propertyName: string, actualItem = entityOneProps, expectedItem = expectedEntityOne) => {\n const actualProperty = findProperty(propertyName, actualItem.properties!);\n const expectedProperty = expectedItem?.getPropertySync(propertyName);\n // if maxOccurs is the maximum int value in the context Schema,\n // the property from the DB will not have a value\n if ((expectedProperty as any).maxOccurs === 2147483647) {\n expect((actualProperty as any).maxOccurs).to.be.undefined;\n // set so comparison will pass\n (actualProperty as any).maxOccurs = 2147483647;\n }\n\n expect(actualProperty).to.deep.equal(expectedProperty?.toJSON());\n };\n\n // All but one testable property is in EntityOne\n for (const property of await expectedEntityOne!.getProperties(true)) {\n validateProperty(property.name);\n }\n // Backward direction Navigation property is in EntityTwo\n validateProperty(\"EntityTwoParent\", entityTwoProps, expectedEntityTwo);\n\n });\n\n it(\"Entity query, props parsed successfully\", async function () {\n const testKey = new SchemaKey(\"EntityTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const classPropsObjects = await schemaLoader.getEntities(testKey.name, IncrementalTestHelper.context);\n expect(classPropsObjects.length).to.be.greaterThan(0);\n\n validateItem(\"EntityModifierNone\", classPropsObjects, schema);\n validateItem(\"EntityModifierAbstract\", classPropsObjects, schema);\n validateItem(\"EntityModifierSealed\", classPropsObjects, schema);\n });\n\n it(\"Struct query, props parsed successfully\", async function () {\n const testKey = new SchemaKey(\"StructTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const classPropsObjects = await schemaLoader.getStructs(testKey.name, IncrementalTestHelper.context);\n expect(classPropsObjects.length).to.be.greaterThan(0);\n\n validateItem(\"StructModifierNone\", classPropsObjects, schema);\n validateItem(\"StructModifierAbstract\", classPropsObjects, schema);\n validateItem(\"StructModifierSealed\", classPropsObjects, schema);\n });\n\n it(\"Mixin query, props parsed successfully\", async function () {\n const testKey = new SchemaKey(\"MixinTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const classPropsObjects = await schemaLoader.getMixins(testKey.name, IncrementalTestHelper.context);\n expect(classPropsObjects.length).to.be.greaterThan(0);\n\n validateItem(\"IBaseMixin\", classPropsObjects, schema);\n validateItem(\"ITestMixin\", classPropsObjects, schema);\n });\n\n it(\"Relationship query, props parsed successfully\", async function () {\n const testKey = new SchemaKey(\"RelationshipTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const classPropsObjects = await schemaLoader.getRelationships(testKey.name, IncrementalTestHelper.context);\n expect(classPropsObjects.length).to.be.greaterThan(0);\n\n validateItem(\"OwnerOwnsVehicles\", classPropsObjects, schema);\n validateItem(\"OwnerOwnsCars\", classPropsObjects, schema);\n validateItem(\"OwnerOwnsAmericanCars\", classPropsObjects, schema);\n validateItem(\"PhysicalModelBreaksDownCarElement\", classPropsObjects, schema);\n });\n\n it(\"CustomAttributeClass query, props parsed successfully\", async function () {\n const testKey = new SchemaKey(\"CustomAttributeClassTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const classPropsObjects = await schemaLoader.getCustomAttributeClasses(testKey.name, IncrementalTestHelper.context);\n expect(classPropsObjects.length).to.be.greaterThan(0);\n\n validateItem(\"CustomAttributeModifierNone\", classPropsObjects, schema);\n validateItem(\"CustomAttributeModifierSealed\", classPropsObjects, schema);\n validateItem(\"CustomAttributeModifierAbstract\", classPropsObjects, schema);\n });\n\n it(\"KindOfQuantity query, props parsed successfully\", async function () {\n const testKey = new SchemaKey(\"KindOfQuantityTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const itemPropsObjects = await schemaLoader.getKindOfQuantities(testKey.name, IncrementalTestHelper.context);\n expect(itemPropsObjects.length).to.be.greaterThan(0);\n\n validateItem(\"ACCELERATION\", itemPropsObjects, schema);\n validateItem(\"ANGLE\", itemPropsObjects, schema);\n });\n\n it(\"PropertyCategory query, props parsed successfully\", async function () {\n const testKey = new SchemaKey(\"PropertyCategoryTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const itemPropsObjects = await schemaLoader.getPropertyCategories(testKey.name, IncrementalTestHelper.context);\n expect(itemPropsObjects.length).to.be.greaterThan(0);\n\n validateItem(\"PropertyCategory1\", itemPropsObjects, schema);\n validateItem(\"PropertyCategory2\", itemPropsObjects, schema);\n });\n\n it(\"Enumeration query, props parsed successfully\", async function () {\n const testKey = new SchemaKey(\"EnumerationTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const itemPropsObjects = await schemaLoader.getEnumerations(testKey.name, IncrementalTestHelper.context);\n expect(itemPropsObjects.length).to.be.greaterThan(0);\n\n validateItem(\"IntEnumeration\", itemPropsObjects, schema);\n validateItem(\"StringEnumeration\", itemPropsObjects, schema);\n });\n\n it(\"Unit query, props parsed successfully\", async function () {\n const testKey = new SchemaKey(\"UnitTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const itemPropsObjects = await schemaLoader.getUnits(testKey.name, IncrementalTestHelper.context);\n expect(itemPropsObjects.length).to.be.greaterThan(0);\n\n validateItem(\"LITRE\", itemPropsObjects, schema);\n validateItem(\"GALLON\", itemPropsObjects, schema);\n validateItem(\"ACRE\", itemPropsObjects, schema);\n validateItem(\"FAHRENHEIT\", itemPropsObjects, schema);\n });\n\n it(\"InvertedUnit query, props parsed successfully\", async function () {\n const testKey = new SchemaKey(\"InvertedUnitTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const itemPropsObjects = await schemaLoader.getInvertedUnits(testKey.name, IncrementalTestHelper.context);\n expect(itemPropsObjects.length).to.be.greaterThan(0);\n\n validateItem(\"FT_HORIZONTAL_PER_FT_VERTICAL\", itemPropsObjects, schema);\n });\n\n it(\"UnitSystem query, props parsed successfully\", async function () {\n // There's a UnitSystem in there.\n const testKey = new SchemaKey(\"InvertedUnitTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const itemPropsObjects = await schemaLoader.getUnitSystems(testKey.name, IncrementalTestHelper.context);\n expect(itemPropsObjects.length).to.be.greaterThan(0);\n\n validateItem(\"USCUSTOM\", itemPropsObjects, schema);\n });\n\n it(\"Constant query, props parsed successfully\", async function () {\n // There's a UnitSystem in there.\n const testKey = new SchemaKey(\"ConstantTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const itemPropsObjects = await schemaLoader.getConstants(testKey.name, IncrementalTestHelper.context);\n expect(itemPropsObjects.length).to.be.greaterThan(0);\n\n validateItem(\"KILO\", itemPropsObjects, schema);\n validateItem(\"HALF_PI\", itemPropsObjects, schema);\n });\n\n it(\"Phenomenon query, props parsed successfully\", async function () {\n // There's a Phenomenon in there.\n const testKey = new SchemaKey(\"ConstantTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const itemPropsObjects = await schemaLoader.getPhenomenon(testKey.name, IncrementalTestHelper.context);\n expect(itemPropsObjects.length).to.be.greaterThan(0);\n\n validateItem(\"NUMBER\", itemPropsObjects, schema);\n validateItem(\"LENGTH_RATIO\", itemPropsObjects, schema);\n });\n\n it(\"Format Schema parses successfully\", async function () {\n // Using installed Formats schema\n const testKey = new SchemaKey(\"Formats\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const itemPropsObjects = await schemaLoader.getFormats(testKey.name, IncrementalTestHelper.context);\n expect(itemPropsObjects.length).to.be.greaterThan(0);\n\n for (const props of itemPropsObjects) {\n validateItem(props.name!, itemPropsObjects, schema);\n }\n });\n\n it(\"Comprehensive Format parses successfully\", async function () {\n const testKey = new SchemaKey(\"FormatTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const itemPropsObjects = await schemaLoader.getFormats(testKey.name, IncrementalTestHelper.context);\n expect(itemPropsObjects.length).to.be.greaterThan(0);\n\n for (const props of itemPropsObjects) {\n validateItem(props.name!, itemPropsObjects, schema);\n }\n });\n\n it(\"CustomAttribute instances parse successfully\", async function () {\n const testKey = new SchemaKey(\"CustomAttributeInstanceTest\", 1, 0, 0);\n await IncrementalTestHelper.importSchema(testKey);\n\n const schema = await IncrementalTestHelper.context.getSchema(testKey);\n if (!schema)\n throw new Error(`Could not find schema ${testKey.name}`);\n\n const itemPropsObjects = await schemaLoader.getStructs(testKey.name, IncrementalTestHelper.context);\n expect(itemPropsObjects.length).to.be.greaterThan(0);\n\n for (const props of itemPropsObjects) {\n validateItem(props.name!, itemPropsObjects, schema);\n }\n });\n});"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IncrementalLoading.test.d.ts","sourceRoot":"","sources":["../../../../src/test/incrementalSchemaLocater/IncrementalLoading.test.ts"],"names":[],"mappings":""}
|