@osdk/client 2.1.0-beta.0 → 2.1.0-beta.2
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/CHANGELOG.md +26 -0
- package/build/browser/createGeotimeSeriesProperty.d.ts +14 -0
- package/build/browser/createGeotimeSeriesProperty.d.ts.map +1 -0
- package/build/browser/createGeotimeSeriesProperty.js +47 -0
- package/build/browser/createGeotimeSeriesProperty.js.map +1 -0
- package/build/browser/createTimeseriesProperty.d.ts.map +1 -1
- package/build/browser/createTimeseriesProperty.js +4 -36
- package/build/browser/createTimeseriesProperty.js.map +1 -1
- package/build/browser/fetchMetadata.test.js +7 -0
- package/build/browser/fetchMetadata.test.js.map +1 -1
- package/build/browser/object/Cache.test.js +1 -1
- package/build/browser/object/Cache.test.js.map +1 -1
- package/build/browser/object/convertWireToOsdkObjects/InternalSymbols.d.ts +1 -0
- package/build/browser/object/convertWireToOsdkObjects/InternalSymbols.d.ts.map +1 -1
- package/build/browser/object/convertWireToOsdkObjects/InternalSymbols.js +1 -0
- package/build/browser/object/convertWireToOsdkObjects/InternalSymbols.js.map +1 -1
- package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.js +15 -1
- package/build/browser/object/convertWireToOsdkObjects/createOsdkObject.js.map +1 -1
- package/build/browser/object/convertWireToOsdkObjects.test.js +14 -3
- package/build/browser/object/convertWireToOsdkObjects.test.js.map +1 -1
- package/build/browser/object/geotimeseriesreference.test.d.ts +2 -0
- package/build/browser/object/geotimeseriesreference.test.d.ts.map +1 -0
- package/build/browser/object/geotimeseriesreference.test.js +257 -0
- package/build/browser/object/geotimeseriesreference.test.js.map +1 -0
- package/build/browser/objectSet/ObjectSet.test.js +6 -3
- package/build/browser/objectSet/ObjectSet.test.js.map +1 -1
- package/build/browser/objectSet/toConjureObjectSet.js +7 -0
- package/build/browser/objectSet/toConjureObjectSet.js.map +1 -1
- package/build/browser/util/UserAgent.js +1 -1
- package/build/browser/util/timeseriesUtils.d.ts +8 -0
- package/build/browser/util/timeseriesUtils.d.ts.map +1 -0
- package/build/browser/util/timeseriesUtils.js +51 -0
- package/build/browser/util/timeseriesUtils.js.map +1 -0
- package/build/esm/createGeotimeSeriesProperty.d.ts +14 -0
- package/build/esm/createGeotimeSeriesProperty.d.ts.map +1 -0
- package/build/esm/createGeotimeSeriesProperty.js +47 -0
- package/build/esm/createGeotimeSeriesProperty.js.map +1 -0
- package/build/esm/createTimeseriesProperty.d.ts.map +1 -1
- package/build/esm/createTimeseriesProperty.js +4 -36
- package/build/esm/createTimeseriesProperty.js.map +1 -1
- package/build/esm/fetchMetadata.test.js +7 -0
- package/build/esm/fetchMetadata.test.js.map +1 -1
- package/build/esm/object/Cache.test.js +1 -1
- package/build/esm/object/Cache.test.js.map +1 -1
- package/build/esm/object/convertWireToOsdkObjects/InternalSymbols.d.ts +1 -0
- package/build/esm/object/convertWireToOsdkObjects/InternalSymbols.d.ts.map +1 -1
- package/build/esm/object/convertWireToOsdkObjects/InternalSymbols.js +1 -0
- package/build/esm/object/convertWireToOsdkObjects/InternalSymbols.js.map +1 -1
- package/build/esm/object/convertWireToOsdkObjects/createOsdkObject.js +15 -1
- package/build/esm/object/convertWireToOsdkObjects/createOsdkObject.js.map +1 -1
- package/build/esm/object/convertWireToOsdkObjects.test.js +14 -3
- package/build/esm/object/convertWireToOsdkObjects.test.js.map +1 -1
- package/build/esm/object/geotimeseriesreference.test.d.ts +2 -0
- package/build/esm/object/geotimeseriesreference.test.d.ts.map +1 -0
- package/build/esm/object/geotimeseriesreference.test.js +257 -0
- package/build/esm/object/geotimeseriesreference.test.js.map +1 -0
- package/build/esm/objectSet/ObjectSet.test.js +6 -3
- package/build/esm/objectSet/ObjectSet.test.js.map +1 -1
- package/build/esm/objectSet/toConjureObjectSet.js +7 -0
- package/build/esm/objectSet/toConjureObjectSet.js.map +1 -1
- package/build/esm/util/UserAgent.js +1 -1
- package/build/esm/util/timeseriesUtils.d.ts +8 -0
- package/build/esm/util/timeseriesUtils.d.ts.map +1 -0
- package/build/esm/util/timeseriesUtils.js +51 -0
- package/build/esm/util/timeseriesUtils.js.map +1 -0
- package/package.json +10 -10
|
@@ -14,11 +14,12 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
import { createAttachmentFromRid } from "../../createAttachmentFromRid.js";
|
|
17
|
+
import { GeotimeSeriesPropertyImpl } from "../../createGeotimeSeriesProperty.js";
|
|
17
18
|
import { TimeSeriesPropertyImpl } from "../../createTimeseriesProperty.js";
|
|
18
19
|
import { createClientCache } from "../Cache.js";
|
|
19
20
|
import { get$as } from "./getDollarAs.js";
|
|
20
21
|
import { get$link } from "./getDollarLink.js";
|
|
21
|
-
import { ClientRef, ObjectDefRef, RawObject, UnderlyingOsdkObject } from "./InternalSymbols.js";
|
|
22
|
+
import { CachedPropertiesRef, ClientRef, ObjectDefRef, RawObject, UnderlyingOsdkObject } from "./InternalSymbols.js";
|
|
22
23
|
const objectPrototypeCache = createClientCache(function (client, objectDef) {
|
|
23
24
|
return Object.create(null, {
|
|
24
25
|
[ObjectDefRef]: {
|
|
@@ -50,6 +51,10 @@ export function createOsdkObject(client, objectDef, rawObj) {
|
|
|
50
51
|
[RawObject]: {
|
|
51
52
|
value: rawObj,
|
|
52
53
|
writable: true // so we can allow updates
|
|
54
|
+
},
|
|
55
|
+
[CachedPropertiesRef]: {
|
|
56
|
+
value: new Map(),
|
|
57
|
+
writable: true
|
|
53
58
|
}
|
|
54
59
|
});
|
|
55
60
|
// we separate the holder out so we can update
|
|
@@ -80,6 +85,15 @@ export function createOsdkObject(client, objectDef, rawObj) {
|
|
|
80
85
|
if (propDef.type === "numericTimeseries" || propDef.type === "stringTimeseries") {
|
|
81
86
|
return new TimeSeriesPropertyImpl(client, objectDef.apiName, target[RawObject][objectDef.primaryKeyApiName], p);
|
|
82
87
|
}
|
|
88
|
+
if (propDef.type === "geotimeSeriesReference") {
|
|
89
|
+
const instance = target[CachedPropertiesRef].get(p);
|
|
90
|
+
if (instance != null) {
|
|
91
|
+
return instance;
|
|
92
|
+
}
|
|
93
|
+
const geotimeProp = new GeotimeSeriesPropertyImpl(client, objectDef.apiName, target[RawObject][objectDef.primaryKeyApiName], p);
|
|
94
|
+
target[CachedPropertiesRef].set(p, geotimeProp);
|
|
95
|
+
return geotimeProp;
|
|
96
|
+
}
|
|
83
97
|
}
|
|
84
98
|
return rawValue;
|
|
85
99
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createOsdkObject.js","names":["createAttachmentFromRid","TimeSeriesPropertyImpl","createClientCache","get$as","get$link","ClientRef","ObjectDefRef","RawObject","UnderlyingOsdkObject","objectPrototypeCache","client","objectDef","Object","create","value","get","newValues","assign","createOsdkObject","rawObj","objectHolderPrototype","writable","holder","osdkObject","Proxy","ownKeys","target","Reflect","p","receiver","rawValue","propDef","properties","type","Array","isArray","map","a","rid","apiName","primaryKeyApiName","set","newValue","getOwnPropertyDescriptor","configurable","enumerable","undefined"],"sources":["createOsdkObject.js"],"sourcesContent":["/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { createAttachmentFromRid } from \"../../createAttachmentFromRid.js\";\nimport { TimeSeriesPropertyImpl } from \"../../createTimeseriesProperty.js\";\nimport { createClientCache } from \"../Cache.js\";\nimport { get$as } from \"./getDollarAs.js\";\nimport { get$link } from \"./getDollarLink.js\";\nimport { ClientRef, ObjectDefRef, RawObject, UnderlyingOsdkObject, } from \"./InternalSymbols.js\";\nconst objectPrototypeCache = createClientCache(function (client, objectDef) {\n return Object.create(null, {\n [ObjectDefRef]: { value: objectDef },\n [ClientRef]: { value: client },\n \"$as\": { value: get$as(objectDef) },\n \"$link\": {\n get: function () {\n return get$link(this);\n },\n },\n \"$updateInternalValues\": {\n value: function (newValues) {\n this[RawObject] = Object.assign({}, this[RawObject], newValues);\n },\n },\n });\n});\n/** @internal */\nexport function createOsdkObject(client, objectDef, rawObj) {\n // We use multiple layers of prototypes to maximize reuse and also to keep\n // [RawObject] out of `ownKeys`. This keeps the code in the proxy below simpler.\n const objectHolderPrototype = Object.create(objectPrototypeCache.get(client, objectDef), {\n [RawObject]: {\n value: rawObj,\n writable: true, // so we can allow updates\n },\n });\n // we separate the holder out so we can update\n // the underlying data without having to return a new object\n // we also need the holder so we can customize the console.log output\n const holder = Object.create(objectHolderPrototype);\n const osdkObject = new Proxy(holder, {\n ownKeys(target) {\n return Reflect.ownKeys(target[RawObject]);\n },\n get(target, p, receiver) {\n switch (p) {\n case UnderlyingOsdkObject:\n // effectively point back to the proxy\n return receiver;\n }\n if (p in target)\n return target[p];\n if (p in rawObj) {\n const rawValue = target[RawObject][p];\n const propDef = objectDef.properties[p];\n if (propDef) {\n if (propDef.type === \"attachment\") {\n if (Array.isArray(rawValue)) {\n return rawValue.map(a => createAttachmentFromRid(client, a.rid));\n }\n return createAttachmentFromRid(client, rawValue.rid);\n }\n if (propDef.type === \"numericTimeseries\"\n || propDef.type === \"stringTimeseries\") {\n return new TimeSeriesPropertyImpl(client, objectDef.apiName, target[RawObject][objectDef.primaryKeyApiName], p);\n }\n }\n return rawValue;\n }\n // we do not do any fall through to avoid unexpected behavior\n },\n set(target, p, newValue) {\n // allow the prototype to update this value\n if (p === RawObject) {\n // symbol only exists internally so no one else can hit this\n target[p] = newValue;\n return true;\n }\n return false;\n },\n getOwnPropertyDescriptor(target, p) {\n if (p === RawObject) {\n return Reflect.getOwnPropertyDescriptor(target, p);\n }\n if (target[RawObject][p] != null) {\n return { configurable: true, enumerable: true };\n }\n return undefined;\n },\n });\n return osdkObject;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,uBAAuB,QAAQ,kCAAkC;AAC1E,SAASC,sBAAsB,QAAQ,mCAAmC;AAC1E,SAASC,iBAAiB,QAAQ,aAAa;AAC/C,SAASC,MAAM,QAAQ,kBAAkB;AACzC,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,SAAS,EAAEC,YAAY,EAAEC,SAAS,EAAEC,oBAAoB,QAAS,sBAAsB;
|
|
1
|
+
{"version":3,"file":"createOsdkObject.js","names":["createAttachmentFromRid","GeotimeSeriesPropertyImpl","TimeSeriesPropertyImpl","createClientCache","get$as","get$link","CachedPropertiesRef","ClientRef","ObjectDefRef","RawObject","UnderlyingOsdkObject","objectPrototypeCache","client","objectDef","Object","create","value","get","newValues","assign","createOsdkObject","rawObj","objectHolderPrototype","writable","Map","holder","osdkObject","Proxy","ownKeys","target","Reflect","p","receiver","rawValue","propDef","properties","type","Array","isArray","map","a","rid","apiName","primaryKeyApiName","instance","geotimeProp","set","newValue","getOwnPropertyDescriptor","configurable","enumerable","undefined"],"sources":["createOsdkObject.js"],"sourcesContent":["/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { createAttachmentFromRid } from \"../../createAttachmentFromRid.js\";\nimport { GeotimeSeriesPropertyImpl } from \"../../createGeotimeSeriesProperty.js\";\nimport { TimeSeriesPropertyImpl } from \"../../createTimeseriesProperty.js\";\nimport { createClientCache } from \"../Cache.js\";\nimport { get$as } from \"./getDollarAs.js\";\nimport { get$link } from \"./getDollarLink.js\";\nimport { CachedPropertiesRef, ClientRef, ObjectDefRef, RawObject, UnderlyingOsdkObject, } from \"./InternalSymbols.js\";\nconst objectPrototypeCache = createClientCache(function (client, objectDef) {\n return Object.create(null, {\n [ObjectDefRef]: { value: objectDef },\n [ClientRef]: { value: client },\n \"$as\": { value: get$as(objectDef) },\n \"$link\": {\n get: function () {\n return get$link(this);\n },\n },\n \"$updateInternalValues\": {\n value: function (newValues) {\n this[RawObject] = Object.assign({}, this[RawObject], newValues);\n },\n },\n });\n});\n/** @internal */\nexport function createOsdkObject(client, objectDef, rawObj) {\n // We use multiple layers of prototypes to maximize reuse and also to keep\n // [RawObject] out of `ownKeys`. This keeps the code in the proxy below simpler.\n const objectHolderPrototype = Object.create(objectPrototypeCache.get(client, objectDef), {\n [RawObject]: {\n value: rawObj,\n writable: true, // so we can allow updates\n },\n [CachedPropertiesRef]: {\n value: new Map(),\n writable: true,\n },\n });\n // we separate the holder out so we can update\n // the underlying data without having to return a new object\n // we also need the holder so we can customize the console.log output\n const holder = Object.create(objectHolderPrototype);\n const osdkObject = new Proxy(holder, {\n ownKeys(target) {\n return Reflect.ownKeys(target[RawObject]);\n },\n get(target, p, receiver) {\n switch (p) {\n case UnderlyingOsdkObject:\n // effectively point back to the proxy\n return receiver;\n }\n if (p in target)\n return target[p];\n if (p in rawObj) {\n const rawValue = target[RawObject][p];\n const propDef = objectDef.properties[p];\n if (propDef) {\n if (propDef.type === \"attachment\") {\n if (Array.isArray(rawValue)) {\n return rawValue.map(a => createAttachmentFromRid(client, a.rid));\n }\n return createAttachmentFromRid(client, rawValue.rid);\n }\n if (propDef.type === \"numericTimeseries\"\n || propDef.type === \"stringTimeseries\") {\n return new TimeSeriesPropertyImpl(client, objectDef.apiName, target[RawObject][objectDef.primaryKeyApiName], p);\n }\n if (propDef.type === \"geotimeSeriesReference\") {\n const instance = target[CachedPropertiesRef].get(p);\n if (instance != null) {\n return instance;\n }\n const geotimeProp = new GeotimeSeriesPropertyImpl(client, objectDef.apiName, target[RawObject][objectDef.primaryKeyApiName], p);\n target[CachedPropertiesRef].set(p, geotimeProp);\n return geotimeProp;\n }\n }\n return rawValue;\n }\n // we do not do any fall through to avoid unexpected behavior\n },\n set(target, p, newValue) {\n // allow the prototype to update this value\n if (p === RawObject) {\n // symbol only exists internally so no one else can hit this\n target[p] = newValue;\n return true;\n }\n return false;\n },\n getOwnPropertyDescriptor(target, p) {\n if (p === RawObject) {\n return Reflect.getOwnPropertyDescriptor(target, p);\n }\n if (target[RawObject][p] != null) {\n return { configurable: true, enumerable: true };\n }\n return undefined;\n },\n });\n return osdkObject;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -34,7 +34,7 @@ describe("convertWireToOsdkObjects", () => {
|
|
|
34
34
|
const {
|
|
35
35
|
data: [employee]
|
|
36
36
|
} = await client(Employee).fetchPage();
|
|
37
|
-
expect(Object.keys(employee).sort()).toEqual(["employeeId", "fullName", "office", "class", "startDate", "employeeStatus", "$apiName", "$objectType", "$primaryKey"].sort());
|
|
37
|
+
expect(Object.keys(employee).sort()).toEqual(["employeeId", "fullName", "office", "class", "startDate", "employeeStatus", "$apiName", "$objectType", "$primaryKey", "employeeLocation"].sort());
|
|
38
38
|
expect(Object.keys(employee.$as)).toEqual([]);
|
|
39
39
|
expect(Object.keys(employee.$link)).toEqual(["peeps", "lead", "officeLink"]);
|
|
40
40
|
});
|
|
@@ -56,10 +56,10 @@ describe("convertWireToOsdkObjects", () => {
|
|
|
56
56
|
}]
|
|
57
57
|
}).fetchPage();
|
|
58
58
|
// Should not have $title
|
|
59
|
-
expect(JSON.stringify(employee)).toMatchInlineSnapshot(`"{"employeeId":50030,"fullName":"John Doe","office":"NYC","class":"Red","startDate":"2019-01-01","employeeStatus":{},"$apiName":"Employee","$objectType":"Employee","$primaryKey":50030}"`);
|
|
59
|
+
expect(JSON.stringify(employee)).toMatchInlineSnapshot(`"{"employeeId":50030,"fullName":"John Doe","office":"NYC","class":"Red","startDate":"2019-01-01","employeeStatus":{},"employeeLocation":{},"$apiName":"Employee","$objectType":"Employee","$primaryKey":50030}"`);
|
|
60
60
|
expect(JSON.stringify(employee.$as(FooInterface))).toMatchInlineSnapshot(`"{"$apiName":"FooInterface","$objectType":"Employee","$primaryKey":50030,"fooSpt":"John Doe"}"`);
|
|
61
61
|
// Should have $title
|
|
62
|
-
expect(JSON.stringify(employee2)).toMatchInlineSnapshot(`"{"employeeId":50031,"fullName":"Jane Doe","office":"SEA","class":"Blue","startDate":"2012-02-12","employeeStatus":{},"$apiName":"Employee","$objectType":"Employee","$primaryKey":50031,"$title":"Jane Doe"}"`);
|
|
62
|
+
expect(JSON.stringify(employee2)).toMatchInlineSnapshot(`"{"employeeId":50031,"fullName":"Jane Doe","office":"SEA","class":"Blue","startDate":"2012-02-12","employeeStatus":{},"employeeLocation":{},"$apiName":"Employee","$objectType":"Employee","$primaryKey":50031,"$title":"Jane Doe"}"`);
|
|
63
63
|
expect(JSON.stringify(employee2.$as(FooInterface))).toMatchInlineSnapshot(`"{"$apiName":"FooInterface","$objectType":"Employee","$primaryKey":50031,"$title":"Jane Doe","fooSpt":"Jane Doe"}"`);
|
|
64
64
|
});
|
|
65
65
|
it("reuses the object prototype across objects", async () => {
|
|
@@ -275,4 +275,15 @@ describe("convertWireToOsdkObjects", () => {
|
|
|
275
275
|
expect(result.length).toBe(1);
|
|
276
276
|
});
|
|
277
277
|
});
|
|
278
|
+
describe("Osdk.Instance", () => {
|
|
279
|
+
it("is assignable to Osdk<>", () => {});
|
|
280
|
+
it("is assignable from Osdk<>", () => {});
|
|
281
|
+
it("is assignable to Osdk<> with $notStrict", () => {
|
|
282
|
+
const instance = {};
|
|
283
|
+
});
|
|
284
|
+
it("is assignable from Osdk<> with $notStrict", () => {
|
|
285
|
+
const osdk = {};
|
|
286
|
+
});
|
|
287
|
+
it("object with any for props is assignable to its normal self", () => {});
|
|
288
|
+
});
|
|
278
289
|
//# sourceMappingURL=convertWireToOsdkObjects.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convertWireToOsdkObjects.test.js","names":["$ontologyRid","Employee","FooInterface","objectTypeWithAllPropertyTypes","symbolClientContext","createSharedClientContext","apiServer","afterAll","beforeAll","describe","expect","expectTypeOf","it","createClient","createMinimalClient","convertWireToOsdkObjects","client","listen","close","data","employee","fetchPage","Object","keys","sort","toEqual","$as","$link","employee2","where","$and","employeeId","$gt","$lt","JSON","stringify","toMatchInlineSnapshot","employees","length","toBeGreaterThanOrEqual","a","b","getPrototypeOf","toBe","withValues","id","attachment","attachmentArray","toMatchTypeOf","rid","Array","isArray","toBeTruthy","withoutValues","emptyAttachment","emptyAttachmentArray","toBeUndefined","clientCtx","ontologyRid","object","__apiName","apiName","__primaryKey","prototypeBefore","object2","undefined","prototypeAfter","not","obj","__title","fullName","objAsFoo","toMatchObject","fooSpt","$apiName","$primaryKey","$objectType","$title","console","log","$updateInternalValues","__rid","$rid","rejects","toThrowErrorMatchingInlineSnapshot","resolves","to","result"],"sources":["convertWireToOsdkObjects.test.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { $ontologyRid, Employee, FooInterface, objectTypeWithAllPropertyTypes, } from \"@osdk/client.test.ontology\";\nimport { symbolClientContext } from \"@osdk/shared.client\";\nimport { createSharedClientContext } from \"@osdk/shared.client.impl\";\nimport { apiServer } from \"@osdk/shared.test\";\nimport { afterAll, beforeAll, describe, expect, expectTypeOf, it, } from \"vitest\";\nimport { createClient } from \"../createClient.js\";\nimport { createMinimalClient } from \"../createMinimalClient.js\";\nimport { convertWireToOsdkObjects } from \"./convertWireToOsdkObjects.js\";\ndescribe(\"convertWireToOsdkObjects\", () => {\n let client;\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\"https://stack.palantir.com\", $ontologyRid, async () => \"myAccessToken\");\n });\n afterAll(() => {\n apiServer.close();\n });\n it(\"configures properties correctly\", async () => {\n const { data: [employee] } = await client(Employee).fetchPage();\n expect(Object.keys(employee).sort()).toEqual([\n \"employeeId\",\n \"fullName\",\n \"office\",\n \"class\",\n \"startDate\",\n \"employeeStatus\",\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n ].sort());\n expect(Object.keys(employee.$as)).toEqual([]);\n expect(Object.keys(employee.$link)).toEqual([\n \"peeps\",\n \"lead\",\n \"officeLink\",\n ]);\n });\n it(\"stringifies properties on objects and interfaces correctly\", async () => {\n const { data: [employee] } = await client(Employee).fetchPage();\n const { data: [employee2] } = await client(Employee).where({\n $and: [{ employeeId: { $gt: 50030 } }, { employeeId: { $lt: 50032 } }],\n }).fetchPage();\n // Should not have $title\n expect(JSON.stringify(employee)).toMatchInlineSnapshot(`\"{\"employeeId\":50030,\"fullName\":\"John Doe\",\"office\":\"NYC\",\"class\":\"Red\",\"startDate\":\"2019-01-01\",\"employeeStatus\":{},\"$apiName\":\"Employee\",\"$objectType\":\"Employee\",\"$primaryKey\":50030}\"`);\n expect(JSON.stringify(employee.$as(FooInterface))).toMatchInlineSnapshot(`\"{\"$apiName\":\"FooInterface\",\"$objectType\":\"Employee\",\"$primaryKey\":50030,\"fooSpt\":\"John Doe\"}\"`);\n // Should have $title\n expect(JSON.stringify(employee2)).toMatchInlineSnapshot(`\"{\"employeeId\":50031,\"fullName\":\"Jane Doe\",\"office\":\"SEA\",\"class\":\"Blue\",\"startDate\":\"2012-02-12\",\"employeeStatus\":{},\"$apiName\":\"Employee\",\"$objectType\":\"Employee\",\"$primaryKey\":50031,\"$title\":\"Jane Doe\"}\"`);\n expect(JSON.stringify(employee2.$as(FooInterface))).toMatchInlineSnapshot(`\"{\"$apiName\":\"FooInterface\",\"$objectType\":\"Employee\",\"$primaryKey\":50031,\"$title\":\"Jane Doe\",\"fooSpt\":\"Jane Doe\"}\"`);\n });\n it(\"reuses the object prototype across objects\", async () => {\n const employees = await client(Employee).fetchPage();\n expect(employees.data.length).toBeGreaterThanOrEqual(2);\n const [a, b] = employees.data;\n expect(Object.getPrototypeOf(Object.getPrototypeOf(a))).toBe(Object.getPrototypeOf(Object.getPrototypeOf(b)));\n });\n it(\"converts attachments as expected\", async () => {\n const withValues = await client(objectTypeWithAllPropertyTypes)\n .where({ id: 1 })\n .fetchPage();\n expect(withValues.data.length).toBeGreaterThanOrEqual(1);\n const { attachment, attachmentArray } = withValues.data[0];\n expectTypeOf(attachment).toMatchTypeOf;\n expect(attachment?.rid).toEqual(\"ri.attachments.main.attachment.86016861-707f-4292-b258-6a7108915a75\");\n expect(Array.isArray(attachmentArray)).toBeTruthy();\n expectTypeOf(attachmentArray[0]).toMatchTypeOf;\n const withoutValues = await client(objectTypeWithAllPropertyTypes).where({ id: 2 }).fetchPage();\n const { attachment: emptyAttachment, attachmentArray: emptyAttachmentArray, } = withoutValues.data[0];\n expect(emptyAttachment).toBeUndefined();\n expect(emptyAttachmentArray).toBeUndefined();\n });\n it(\"works even with unknown apiNames\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n createSharedClientContext(\"https://stack.palantir.com\", async () => \"myAccessToken\", \"userAgent\");\n let object = {\n __apiName: Employee.apiName,\n __primaryKey: 0,\n };\n const prototypeBefore = Object.getPrototypeOf(object);\n let object2 = await convertWireToOsdkObjects(clientCtx, [object], undefined, undefined, undefined, false);\n const prototypeAfter = Object.getPrototypeOf(object2);\n expect(prototypeBefore).not.toBe(prototypeAfter);\n });\n it(\"updates interface when underlying changes\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n fullName: \"Steve\",\n employeeId: \"5\",\n };\n const [obj] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], undefined));\n expect(obj.fullName).toEqual(\"Steve\");\n expect(Object.keys(obj).sort()).toEqual([\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"$title\",\n \"employeeId\",\n \"fullName\",\n ].sort());\n const objAsFoo = obj.$as(FooInterface);\n expect(objAsFoo).toMatchObject({\n fooSpt: obj.fullName,\n $apiName: FooInterface.apiName,\n $primaryKey: obj.$primaryKey,\n $objectType: obj.$objectType,\n $title: obj.$title,\n });\n console.log(obj);\n console.log(objAsFoo);\n obj.$updateInternalValues({\n fullName: \"Bob\",\n });\n expect(obj.fullName).toEqual(\"Bob\");\n expect(objAsFoo.fooSpt).toEqual(obj.fullName);\n expect(Object.keys(objAsFoo).sort()).toEqual([\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"$title\",\n \"fooSpt\",\n ].sort());\n expect(obj).toBe(objAsFoo.$as(Employee));\n expect(objAsFoo).toBe(obj.$as(FooInterface));\n });\n it(\"reconstitutes interfaces properly without rid\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n fooSpt: \"Steve\",\n };\n const [objAsFoo] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], FooInterface.apiName));\n expect(objAsFoo).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$title\": \"Steve\",\n \"fooSpt\": \"Steve\",\n }\n `);\n const obj = objAsFoo.$as(Employee);\n expect(obj.fullName).toEqual(\"Steve\");\n expect(obj).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$title\": \"Steve\",\n \"employeeId\": 0,\n \"fullName\": \"Steve\",\n }\n `);\n });\n it(\"reconstitutes interfaces properly with rid\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n __rid: \"hiMom\",\n fooSpt: \"Steve\",\n };\n const [objAsFoo] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], FooInterface.apiName));\n expect(objAsFoo).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$rid\": \"hiMom\",\n \"$title\": \"Steve\",\n \"fooSpt\": \"Steve\",\n }\n `);\n expect(objAsFoo.$rid).toEqual(\"hiMom\");\n const obj = objAsFoo.$as(Employee);\n expect(obj.fullName).toEqual(\"Steve\");\n expect(obj).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$rid\": \"hiMom\",\n \"$title\": \"Steve\",\n \"employeeId\": 0,\n \"fullName\": \"Steve\",\n }\n `);\n expect(obj.$rid).toEqual(\"hiMom\");\n });\n describe(\"selection keys\", () => {\n it(\"throws when required is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(() => convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"employeeId\"], \"throw\")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n it(\"does not throw when optional is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"fullName\"], \"throw\")).resolves.to.not.toBeUndefined();\n });\n it(\"filters when it should\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"employeeId\"], \"drop\");\n expect(result.length).toBe(0);\n });\n it(\"does not filter when it shouldn't\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"fullName\"], \"drop\");\n expect(result.length).toBe(1);\n });\n });\n describe(\"without selection keys\", () => {\n it(\"throws when required is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(() => convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"throw\")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n it(\"does not throw when required is present\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n \"employeeId\": 0,\n };\n await expect(convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"throw\")).resolves.to.not.toBeUndefined();\n });\n it(\"filters when it should\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"drop\");\n expect(result.length).toBe(0);\n });\n it(\"does not filter when it shouldn't\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n \"employeeId\": 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"drop\");\n expect(result.length).toBe(1);\n });\n });\n it(\"behaves correctly when converting\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n fooSpt: \"hi\",\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], \"FooInterface\", undefined, [\"fooSpt\"], \"drop\");\n expect(result.length).toBe(1);\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"convertWireToOsdkObjects.test.js","names":["$ontologyRid","Employee","FooInterface","objectTypeWithAllPropertyTypes","symbolClientContext","createSharedClientContext","apiServer","afterAll","beforeAll","describe","expect","expectTypeOf","it","createClient","createMinimalClient","convertWireToOsdkObjects","client","listen","close","data","employee","fetchPage","Object","keys","sort","toEqual","$as","$link","employee2","where","$and","employeeId","$gt","$lt","JSON","stringify","toMatchInlineSnapshot","employees","length","toBeGreaterThanOrEqual","a","b","getPrototypeOf","toBe","withValues","id","attachment","attachmentArray","toMatchTypeOf","rid","Array","isArray","toBeTruthy","withoutValues","emptyAttachment","emptyAttachmentArray","toBeUndefined","clientCtx","ontologyRid","object","__apiName","apiName","__primaryKey","prototypeBefore","object2","undefined","prototypeAfter","not","obj","__title","fullName","objAsFoo","toMatchObject","fooSpt","$apiName","$primaryKey","$objectType","$title","console","log","$updateInternalValues","__rid","$rid","rejects","toThrowErrorMatchingInlineSnapshot","resolves","to","result","instance","osdk"],"sources":["convertWireToOsdkObjects.test.js"],"sourcesContent":["/*\n * Copyright 2023 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { $ontologyRid, Employee, FooInterface, objectTypeWithAllPropertyTypes, } from \"@osdk/client.test.ontology\";\nimport { symbolClientContext } from \"@osdk/shared.client\";\nimport { createSharedClientContext } from \"@osdk/shared.client.impl\";\nimport { apiServer } from \"@osdk/shared.test\";\nimport { afterAll, beforeAll, describe, expect, expectTypeOf, it, } from \"vitest\";\nimport { createClient } from \"../createClient.js\";\nimport { createMinimalClient } from \"../createMinimalClient.js\";\nimport { convertWireToOsdkObjects } from \"./convertWireToOsdkObjects.js\";\ndescribe(\"convertWireToOsdkObjects\", () => {\n let client;\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\"https://stack.palantir.com\", $ontologyRid, async () => \"myAccessToken\");\n });\n afterAll(() => {\n apiServer.close();\n });\n it(\"configures properties correctly\", async () => {\n const { data: [employee] } = await client(Employee).fetchPage();\n expect(Object.keys(employee).sort()).toEqual([\n \"employeeId\",\n \"fullName\",\n \"office\",\n \"class\",\n \"startDate\",\n \"employeeStatus\",\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"employeeLocation\",\n ].sort());\n expect(Object.keys(employee.$as)).toEqual([]);\n expect(Object.keys(employee.$link)).toEqual([\n \"peeps\",\n \"lead\",\n \"officeLink\",\n ]);\n });\n it(\"stringifies properties on objects and interfaces correctly\", async () => {\n const { data: [employee] } = await client(Employee).fetchPage();\n const { data: [employee2] } = await client(Employee).where({\n $and: [{ employeeId: { $gt: 50030 } }, { employeeId: { $lt: 50032 } }],\n }).fetchPage();\n // Should not have $title\n expect(JSON.stringify(employee)).toMatchInlineSnapshot(`\"{\"employeeId\":50030,\"fullName\":\"John Doe\",\"office\":\"NYC\",\"class\":\"Red\",\"startDate\":\"2019-01-01\",\"employeeStatus\":{},\"employeeLocation\":{},\"$apiName\":\"Employee\",\"$objectType\":\"Employee\",\"$primaryKey\":50030}\"`);\n expect(JSON.stringify(employee.$as(FooInterface))).toMatchInlineSnapshot(`\"{\"$apiName\":\"FooInterface\",\"$objectType\":\"Employee\",\"$primaryKey\":50030,\"fooSpt\":\"John Doe\"}\"`);\n // Should have $title\n expect(JSON.stringify(employee2)).toMatchInlineSnapshot(`\"{\"employeeId\":50031,\"fullName\":\"Jane Doe\",\"office\":\"SEA\",\"class\":\"Blue\",\"startDate\":\"2012-02-12\",\"employeeStatus\":{},\"employeeLocation\":{},\"$apiName\":\"Employee\",\"$objectType\":\"Employee\",\"$primaryKey\":50031,\"$title\":\"Jane Doe\"}\"`);\n expect(JSON.stringify(employee2.$as(FooInterface))).toMatchInlineSnapshot(`\"{\"$apiName\":\"FooInterface\",\"$objectType\":\"Employee\",\"$primaryKey\":50031,\"$title\":\"Jane Doe\",\"fooSpt\":\"Jane Doe\"}\"`);\n });\n it(\"reuses the object prototype across objects\", async () => {\n const employees = await client(Employee).fetchPage();\n expect(employees.data.length).toBeGreaterThanOrEqual(2);\n const [a, b] = employees.data;\n expect(Object.getPrototypeOf(Object.getPrototypeOf(a))).toBe(Object.getPrototypeOf(Object.getPrototypeOf(b)));\n });\n it(\"converts attachments as expected\", async () => {\n const withValues = await client(objectTypeWithAllPropertyTypes)\n .where({ id: 1 })\n .fetchPage();\n expect(withValues.data.length).toBeGreaterThanOrEqual(1);\n const { attachment, attachmentArray } = withValues.data[0];\n expectTypeOf(attachment).toMatchTypeOf;\n expect(attachment?.rid).toEqual(\"ri.attachments.main.attachment.86016861-707f-4292-b258-6a7108915a75\");\n expect(Array.isArray(attachmentArray)).toBeTruthy();\n expectTypeOf(attachmentArray[0]).toMatchTypeOf;\n const withoutValues = await client(objectTypeWithAllPropertyTypes).where({ id: 2 }).fetchPage();\n const { attachment: emptyAttachment, attachmentArray: emptyAttachmentArray, } = withoutValues.data[0];\n expect(emptyAttachment).toBeUndefined();\n expect(emptyAttachmentArray).toBeUndefined();\n });\n it(\"works even with unknown apiNames\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n createSharedClientContext(\"https://stack.palantir.com\", async () => \"myAccessToken\", \"userAgent\");\n let object = {\n __apiName: Employee.apiName,\n __primaryKey: 0,\n };\n const prototypeBefore = Object.getPrototypeOf(object);\n let object2 = await convertWireToOsdkObjects(clientCtx, [object], undefined, undefined, undefined, false);\n const prototypeAfter = Object.getPrototypeOf(object2);\n expect(prototypeBefore).not.toBe(prototypeAfter);\n });\n it(\"updates interface when underlying changes\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n fullName: \"Steve\",\n employeeId: \"5\",\n };\n const [obj] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], undefined));\n expect(obj.fullName).toEqual(\"Steve\");\n expect(Object.keys(obj).sort()).toEqual([\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"$title\",\n \"employeeId\",\n \"fullName\",\n ].sort());\n const objAsFoo = obj.$as(FooInterface);\n expect(objAsFoo).toMatchObject({\n fooSpt: obj.fullName,\n $apiName: FooInterface.apiName,\n $primaryKey: obj.$primaryKey,\n $objectType: obj.$objectType,\n $title: obj.$title,\n });\n console.log(obj);\n console.log(objAsFoo);\n obj.$updateInternalValues({\n fullName: \"Bob\",\n });\n expect(obj.fullName).toEqual(\"Bob\");\n expect(objAsFoo.fooSpt).toEqual(obj.fullName);\n expect(Object.keys(objAsFoo).sort()).toEqual([\n \"$apiName\",\n \"$objectType\",\n \"$primaryKey\",\n \"$title\",\n \"fooSpt\",\n ].sort());\n expect(obj).toBe(objAsFoo.$as(Employee));\n expect(objAsFoo).toBe(obj.$as(FooInterface));\n });\n it(\"reconstitutes interfaces properly without rid\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n fooSpt: \"Steve\",\n };\n const [objAsFoo] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], FooInterface.apiName));\n expect(objAsFoo).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$title\": \"Steve\",\n \"fooSpt\": \"Steve\",\n }\n `);\n const obj = objAsFoo.$as(Employee);\n expect(obj.fullName).toEqual(\"Steve\");\n expect(obj).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$title\": \"Steve\",\n \"employeeId\": 0,\n \"fullName\": \"Steve\",\n }\n `);\n });\n it(\"reconstitutes interfaces properly with rid\", async () => {\n const clientCtx = createMinimalClient({ ontologyRid: $ontologyRid }, \"https://stack.palantir.com\", async () => \"myAccessToken\");\n let objectFromWire = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n __title: \"Steve\",\n __rid: \"hiMom\",\n fooSpt: \"Steve\",\n };\n const [objAsFoo] = (await convertWireToOsdkObjects(clientCtx, [objectFromWire], FooInterface.apiName));\n expect(objAsFoo).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"FooInterface\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$rid\": \"hiMom\",\n \"$title\": \"Steve\",\n \"fooSpt\": \"Steve\",\n }\n `);\n expect(objAsFoo.$rid).toEqual(\"hiMom\");\n const obj = objAsFoo.$as(Employee);\n expect(obj.fullName).toEqual(\"Steve\");\n expect(obj).toMatchInlineSnapshot(`\n {\n \"$apiName\": \"Employee\",\n \"$objectType\": \"Employee\",\n \"$primaryKey\": 0,\n \"$rid\": \"hiMom\",\n \"$title\": \"Steve\",\n \"employeeId\": 0,\n \"fullName\": \"Steve\",\n }\n `);\n expect(obj.$rid).toEqual(\"hiMom\");\n });\n describe(\"selection keys\", () => {\n it(\"throws when required is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(() => convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"employeeId\"], \"throw\")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n it(\"does not throw when optional is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"fullName\"], \"throw\")).resolves.to.not.toBeUndefined();\n });\n it(\"filters when it should\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"employeeId\"], \"drop\");\n expect(result.length).toBe(0);\n });\n it(\"does not filter when it shouldn't\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, [\"fullName\"], \"drop\");\n expect(result.length).toBe(1);\n });\n });\n describe(\"without selection keys\", () => {\n it(\"throws when required is missing\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n await expect(() => convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"throw\")).rejects.toThrowErrorMatchingInlineSnapshot(`[Error: Unable to safely convert objects as some non nullable properties are null]`);\n });\n it(\"does not throw when required is present\", async () => {\n let object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n \"employeeId\": 0,\n };\n await expect(convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"throw\")).resolves.to.not.toBeUndefined();\n });\n it(\"filters when it should\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"drop\");\n expect(result.length).toBe(0);\n });\n it(\"does not filter when it shouldn't\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n \"employeeId\": 0,\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], undefined, undefined, undefined, \"drop\");\n expect(result.length).toBe(1);\n });\n });\n it(\"behaves correctly when converting\", async () => {\n const object = {\n __apiName: \"Employee\",\n __primaryKey: 0,\n fooSpt: \"hi\",\n };\n const result = await convertWireToOsdkObjects(client[symbolClientContext], [object], \"FooInterface\", undefined, [\"fooSpt\"], \"drop\");\n expect(result.length).toBe(1);\n });\n});\ndescribe(\"Osdk.Instance\", () => {\n it(\"is assignable to Osdk<>\", () => {\n const instance = {};\n const osdk = instance;\n });\n it(\"is assignable from Osdk<>\", () => {\n const osdk = {};\n const instance = osdk;\n });\n it(\"is assignable to Osdk<> with $notStrict\", () => {\n const instance = {};\n const osdk = instance;\n const osdk2 = instance;\n });\n it(\"is assignable from Osdk<> with $notStrict\", () => {\n const osdk = {};\n const osdk2 = osdk;\n const instance = osdk;\n const instance2 = osdk2;\n });\n it(\"object with any for props is assignable to its normal self\", () => {\n const foo = {};\n const bar = foo;\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"geotimeseriesreference.test.d.ts","sourceRoot":"","sources":["../../../src/object/geotimeseriesreference.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2024 Palantir Technologies, Inc. All rights reserved.
|
|
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
|
+
import { $ontologyRid, Employee } from "@osdk/client.test.ontology";
|
|
17
|
+
import { apiServer } from "@osdk/shared.test";
|
|
18
|
+
import { afterAll, beforeAll, describe, expect, it } from "vitest";
|
|
19
|
+
import { createClient } from "../createClient.js";
|
|
20
|
+
describe("Timeseries", () => {
|
|
21
|
+
let client;
|
|
22
|
+
beforeAll(async () => {
|
|
23
|
+
apiServer.listen();
|
|
24
|
+
client = createClient("https://stack.palantir.com", $ontologyRid, async () => "myAccessToken");
|
|
25
|
+
});
|
|
26
|
+
afterAll(() => {
|
|
27
|
+
apiServer.close();
|
|
28
|
+
});
|
|
29
|
+
it("get latest value works", async () => {
|
|
30
|
+
const employee = await client(Employee).fetchOne(50030);
|
|
31
|
+
const employee2 = await client(Employee).fetchOne(50031);
|
|
32
|
+
expect(employee.$primaryKey).toEqual(50030);
|
|
33
|
+
expect(employee2.$primaryKey).toEqual(50031);
|
|
34
|
+
const location = employee.employeeLocation;
|
|
35
|
+
expect(location).toBeDefined();
|
|
36
|
+
const initialLastPoint = employee.employeeLocation?.lastFetchedValue;
|
|
37
|
+
expect(initialLastPoint).toBeUndefined();
|
|
38
|
+
const fetchedPoint = await employee.employeeLocation?.getLatestValue();
|
|
39
|
+
const nextLastPoint = employee.employeeLocation?.lastFetchedValue;
|
|
40
|
+
expect(employee.employeeLocation?.lastFetchedValue).toBeDefined();
|
|
41
|
+
expect(nextLastPoint).toEqual(fetchedPoint);
|
|
42
|
+
expect(nextLastPoint?.time).toEqual("2014-04-14");
|
|
43
|
+
expect(nextLastPoint?.value).toEqual({
|
|
44
|
+
type: "Point",
|
|
45
|
+
coordinates: [3.3, 3.3]
|
|
46
|
+
});
|
|
47
|
+
expect(fetchedPoint?.time).toEqual("2014-04-14");
|
|
48
|
+
expect(fetchedPoint?.value).toEqual({
|
|
49
|
+
type: "Point",
|
|
50
|
+
coordinates: [3.3, 3.3]
|
|
51
|
+
});
|
|
52
|
+
// Making sure caching working as expected
|
|
53
|
+
const initialPointEmployee2 = employee2.employeeLocation?.lastFetchedValue;
|
|
54
|
+
expect(initialPointEmployee2).toBeUndefined();
|
|
55
|
+
const fetchedPoint2 = await employee2.employeeLocation?.getLatestValue();
|
|
56
|
+
const nextLastPoint2 = employee2.employeeLocation?.lastFetchedValue;
|
|
57
|
+
expect(employee2.employeeLocation?.lastFetchedValue).toBeDefined();
|
|
58
|
+
expect(nextLastPoint2).toEqual(fetchedPoint2);
|
|
59
|
+
expect(nextLastPoint2?.time).toEqual("2013-03-13");
|
|
60
|
+
expect(nextLastPoint2?.value).toEqual({
|
|
61
|
+
type: "Point",
|
|
62
|
+
coordinates: [2.2, 2.2]
|
|
63
|
+
});
|
|
64
|
+
expect(fetchedPoint2?.time).toEqual("2013-03-13");
|
|
65
|
+
expect(fetchedPoint2?.value).toEqual({
|
|
66
|
+
type: "Point",
|
|
67
|
+
coordinates: [2.2, 2.2]
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
it("getAll values with before works", async () => {
|
|
71
|
+
const employee = await client(Employee).fetchOne(50030);
|
|
72
|
+
expect(employee.$primaryKey).toEqual(50030);
|
|
73
|
+
const points = await employee.employeeLocation?.getAllValues({
|
|
74
|
+
$before: 1,
|
|
75
|
+
$unit: "month"
|
|
76
|
+
});
|
|
77
|
+
expect(points).toBeDefined();
|
|
78
|
+
expect(points).toEqual([{
|
|
79
|
+
time: "2012-02-12",
|
|
80
|
+
value: {
|
|
81
|
+
type: "Point",
|
|
82
|
+
coordinates: [1.1, 1.1]
|
|
83
|
+
}
|
|
84
|
+
}, {
|
|
85
|
+
time: "2013-03-13",
|
|
86
|
+
value: {
|
|
87
|
+
type: "Point",
|
|
88
|
+
coordinates: [2.2, 2.2]
|
|
89
|
+
}
|
|
90
|
+
}, {
|
|
91
|
+
time: "2014-04-14",
|
|
92
|
+
value: {
|
|
93
|
+
type: "Point",
|
|
94
|
+
coordinates: [3.3, 3.3]
|
|
95
|
+
}
|
|
96
|
+
}]);
|
|
97
|
+
});
|
|
98
|
+
it("getAll values with after works", async () => {
|
|
99
|
+
const employee = await client(Employee).fetchOne(50030);
|
|
100
|
+
expect(employee.$primaryKey).toEqual(50030);
|
|
101
|
+
const points = await employee.employeeLocation?.getAllValues({
|
|
102
|
+
$after: 1,
|
|
103
|
+
$unit: "month"
|
|
104
|
+
});
|
|
105
|
+
expect(points).toBeDefined();
|
|
106
|
+
expect(points).toEqual([{
|
|
107
|
+
time: "2012-02-12",
|
|
108
|
+
value: {
|
|
109
|
+
type: "Point",
|
|
110
|
+
coordinates: [1.1, 1.1]
|
|
111
|
+
}
|
|
112
|
+
}, {
|
|
113
|
+
time: "2014-04-14",
|
|
114
|
+
value: {
|
|
115
|
+
type: "Point",
|
|
116
|
+
coordinates: [3.3, 3.3]
|
|
117
|
+
}
|
|
118
|
+
}]);
|
|
119
|
+
});
|
|
120
|
+
it("getAll points with absolute range works", async () => {
|
|
121
|
+
const employee = await client(Employee).fetchOne(50030);
|
|
122
|
+
expect(employee.$primaryKey).toEqual(50030);
|
|
123
|
+
const points = await employee.employeeLocation?.getAllValues({
|
|
124
|
+
$startTime: "2013-03-12T12:00:00.000Z",
|
|
125
|
+
$endTime: "2014-04-14T12:00:00.000Z"
|
|
126
|
+
});
|
|
127
|
+
expect(points).toBeDefined();
|
|
128
|
+
expect(points).toEqual([{
|
|
129
|
+
time: "2013-03-13",
|
|
130
|
+
value: {
|
|
131
|
+
type: "Point",
|
|
132
|
+
coordinates: [2.2, 2.2]
|
|
133
|
+
}
|
|
134
|
+
}, {
|
|
135
|
+
time: "2014-04-14",
|
|
136
|
+
value: {
|
|
137
|
+
type: "Point",
|
|
138
|
+
coordinates: [3.3, 3.3]
|
|
139
|
+
}
|
|
140
|
+
}]);
|
|
141
|
+
});
|
|
142
|
+
it("getAll points with no query works", async () => {
|
|
143
|
+
const employee = await client(Employee).fetchOne(50030);
|
|
144
|
+
expect(employee.$primaryKey).toEqual(50030);
|
|
145
|
+
const points = await employee.employeeLocation?.getAllValues();
|
|
146
|
+
expect(points).toBeDefined();
|
|
147
|
+
expect(points).toEqual([{
|
|
148
|
+
time: "2012-02-12",
|
|
149
|
+
value: {
|
|
150
|
+
type: "Point",
|
|
151
|
+
coordinates: [1.1, 1.1]
|
|
152
|
+
}
|
|
153
|
+
}, {
|
|
154
|
+
time: "2012-02-12",
|
|
155
|
+
value: {
|
|
156
|
+
type: "Point",
|
|
157
|
+
coordinates: [1.1, 1.1]
|
|
158
|
+
}
|
|
159
|
+
}, {
|
|
160
|
+
time: "2013-03-13",
|
|
161
|
+
value: {
|
|
162
|
+
type: "Point",
|
|
163
|
+
coordinates: [2.2, 2.2]
|
|
164
|
+
}
|
|
165
|
+
}, {
|
|
166
|
+
time: "2014-04-14",
|
|
167
|
+
value: {
|
|
168
|
+
type: "Point",
|
|
169
|
+
coordinates: [3.3, 3.3]
|
|
170
|
+
}
|
|
171
|
+
}, {
|
|
172
|
+
time: "2014-04-14",
|
|
173
|
+
value: {
|
|
174
|
+
type: "Point",
|
|
175
|
+
coordinates: [3.3, 3.3]
|
|
176
|
+
}
|
|
177
|
+
}]);
|
|
178
|
+
});
|
|
179
|
+
it("getAll points with no data works", async () => {
|
|
180
|
+
const employee = await client(Employee).fetchOne(50030);
|
|
181
|
+
expect(employee.$primaryKey).toEqual(50030);
|
|
182
|
+
const points = await employee.employeeLocation?.getAllValues({
|
|
183
|
+
$startTime: "2021-03-12T12:00:00.000Z",
|
|
184
|
+
$endTime: "2022-04-14T12:00:00.000Z"
|
|
185
|
+
});
|
|
186
|
+
expect(points).toBeDefined();
|
|
187
|
+
expect(points).toEqual([]);
|
|
188
|
+
});
|
|
189
|
+
it("async iter points with absolute range works", async () => {
|
|
190
|
+
const employee = await client(Employee).fetchOne(50030);
|
|
191
|
+
expect(employee.$primaryKey).toEqual(50030);
|
|
192
|
+
const pointsIter = employee.employeeLocation?.asyncIterValues({
|
|
193
|
+
$startTime: "2013-03-12T12:00:00.000Z",
|
|
194
|
+
$endTime: "2014-04-14T12:00:00.000Z"
|
|
195
|
+
});
|
|
196
|
+
const points = [];
|
|
197
|
+
for await (const point of pointsIter) {
|
|
198
|
+
points.push(point);
|
|
199
|
+
}
|
|
200
|
+
expect(points).toBeDefined();
|
|
201
|
+
expect(points).toEqual([{
|
|
202
|
+
time: "2013-03-13",
|
|
203
|
+
value: {
|
|
204
|
+
type: "Point",
|
|
205
|
+
coordinates: [2.2, 2.2]
|
|
206
|
+
}
|
|
207
|
+
}, {
|
|
208
|
+
time: "2014-04-14",
|
|
209
|
+
value: {
|
|
210
|
+
type: "Point",
|
|
211
|
+
coordinates: [3.3, 3.3]
|
|
212
|
+
}
|
|
213
|
+
}]);
|
|
214
|
+
});
|
|
215
|
+
it("async iter points with no query", async () => {
|
|
216
|
+
const employee = await client(Employee).fetchOne(50030);
|
|
217
|
+
expect(employee.$primaryKey).toEqual(50030);
|
|
218
|
+
const pointsIter = employee.employeeLocation?.asyncIterValues();
|
|
219
|
+
const points = [];
|
|
220
|
+
for await (const point of pointsIter) {
|
|
221
|
+
points.push(point);
|
|
222
|
+
}
|
|
223
|
+
expect(points).toBeDefined();
|
|
224
|
+
expect(points).toEqual([{
|
|
225
|
+
time: "2012-02-12",
|
|
226
|
+
value: {
|
|
227
|
+
type: "Point",
|
|
228
|
+
coordinates: [1.1, 1.1]
|
|
229
|
+
}
|
|
230
|
+
}, {
|
|
231
|
+
time: "2012-02-12",
|
|
232
|
+
value: {
|
|
233
|
+
type: "Point",
|
|
234
|
+
coordinates: [1.1, 1.1]
|
|
235
|
+
}
|
|
236
|
+
}, {
|
|
237
|
+
time: "2013-03-13",
|
|
238
|
+
value: {
|
|
239
|
+
type: "Point",
|
|
240
|
+
coordinates: [2.2, 2.2]
|
|
241
|
+
}
|
|
242
|
+
}, {
|
|
243
|
+
time: "2014-04-14",
|
|
244
|
+
value: {
|
|
245
|
+
type: "Point",
|
|
246
|
+
coordinates: [3.3, 3.3]
|
|
247
|
+
}
|
|
248
|
+
}, {
|
|
249
|
+
time: "2014-04-14",
|
|
250
|
+
value: {
|
|
251
|
+
type: "Point",
|
|
252
|
+
coordinates: [3.3, 3.3]
|
|
253
|
+
}
|
|
254
|
+
}]);
|
|
255
|
+
});
|
|
256
|
+
});
|
|
257
|
+
//# sourceMappingURL=geotimeseriesreference.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"geotimeseriesreference.test.js","names":["$ontologyRid","Employee","apiServer","afterAll","beforeAll","describe","expect","it","createClient","client","listen","close","employee","fetchOne","employee2","$primaryKey","toEqual","location","employeeLocation","toBeDefined","initialLastPoint","lastFetchedValue","toBeUndefined","fetchedPoint","getLatestValue","nextLastPoint","time","value","type","coordinates","initialPointEmployee2","fetchedPoint2","nextLastPoint2","points","getAllValues","$before","$unit","$after","$startTime","$endTime","pointsIter","asyncIterValues","point","push"],"sources":["geotimeseriesreference.test.js"],"sourcesContent":["/*\n * Copyright 2024 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { $ontologyRid, Employee } from \"@osdk/client.test.ontology\";\nimport { apiServer } from \"@osdk/shared.test\";\nimport { afterAll, beforeAll, describe, expect, it } from \"vitest\";\nimport { createClient } from \"../createClient.js\";\ndescribe(\"Timeseries\", () => {\n let client;\n beforeAll(async () => {\n apiServer.listen();\n client = createClient(\"https://stack.palantir.com\", $ontologyRid, async () => \"myAccessToken\");\n });\n afterAll(() => {\n apiServer.close();\n });\n it(\"get latest value works\", async () => {\n const employee = await client(Employee).fetchOne(50030);\n const employee2 = await client(Employee).fetchOne(50031);\n expect(employee.$primaryKey).toEqual(50030);\n expect(employee2.$primaryKey).toEqual(50031);\n const location = employee.employeeLocation;\n expect(location).toBeDefined();\n const initialLastPoint = employee.employeeLocation?.lastFetchedValue;\n expect(initialLastPoint).toBeUndefined();\n const fetchedPoint = await employee.employeeLocation?.getLatestValue();\n const nextLastPoint = employee.employeeLocation?.lastFetchedValue;\n expect(employee.employeeLocation?.lastFetchedValue).toBeDefined();\n expect(nextLastPoint).toEqual(fetchedPoint);\n expect(nextLastPoint?.time).toEqual(\"2014-04-14\");\n expect(nextLastPoint?.value).toEqual({\n type: \"Point\",\n coordinates: [3.3, 3.3],\n });\n expect(fetchedPoint?.time).toEqual(\"2014-04-14\");\n expect(fetchedPoint?.value).toEqual({\n type: \"Point\",\n coordinates: [3.3, 3.3],\n });\n // Making sure caching working as expected\n const initialPointEmployee2 = employee2.employeeLocation?.lastFetchedValue;\n expect(initialPointEmployee2).toBeUndefined();\n const fetchedPoint2 = await employee2.employeeLocation?.getLatestValue();\n const nextLastPoint2 = employee2.employeeLocation?.lastFetchedValue;\n expect(employee2.employeeLocation?.lastFetchedValue).toBeDefined();\n expect(nextLastPoint2).toEqual(fetchedPoint2);\n expect(nextLastPoint2?.time).toEqual(\"2013-03-13\");\n expect(nextLastPoint2?.value).toEqual({\n type: \"Point\",\n coordinates: [2.2, 2.2],\n });\n expect(fetchedPoint2?.time).toEqual(\"2013-03-13\");\n expect(fetchedPoint2?.value).toEqual({\n type: \"Point\",\n coordinates: [2.2, 2.2],\n });\n });\n it(\"getAll values with before works\", async () => {\n const employee = await client(Employee).fetchOne(50030);\n expect(employee.$primaryKey).toEqual(50030);\n const points = await employee.employeeLocation?.getAllValues({\n $before: 1,\n $unit: \"month\",\n });\n expect(points).toBeDefined();\n expect(points).toEqual([{\n time: \"2012-02-12\",\n value: { type: \"Point\", coordinates: [1.1, 1.1] },\n }, {\n time: \"2013-03-13\",\n value: { type: \"Point\", coordinates: [2.2, 2.2] },\n }, {\n time: \"2014-04-14\",\n value: { type: \"Point\", coordinates: [3.3, 3.3] },\n }]);\n });\n it(\"getAll values with after works\", async () => {\n const employee = await client(Employee).fetchOne(50030);\n expect(employee.$primaryKey).toEqual(50030);\n const points = await employee.employeeLocation?.getAllValues({\n $after: 1,\n $unit: \"month\",\n });\n expect(points).toBeDefined();\n expect(points).toEqual([{\n time: \"2012-02-12\",\n value: { type: \"Point\", coordinates: [1.1, 1.1] },\n }, {\n time: \"2014-04-14\",\n value: { type: \"Point\", coordinates: [3.3, 3.3] },\n }]);\n });\n it(\"getAll points with absolute range works\", async () => {\n const employee = await client(Employee).fetchOne(50030);\n expect(employee.$primaryKey).toEqual(50030);\n const points = await employee.employeeLocation?.getAllValues({\n $startTime: \"2013-03-12T12:00:00.000Z\",\n $endTime: \"2014-04-14T12:00:00.000Z\",\n });\n expect(points).toBeDefined();\n expect(points).toEqual([{\n time: \"2013-03-13\",\n value: { type: \"Point\", coordinates: [2.2, 2.2] },\n }, {\n time: \"2014-04-14\",\n value: { type: \"Point\", coordinates: [3.3, 3.3] },\n }]);\n });\n it(\"getAll points with no query works\", async () => {\n const employee = await client(Employee).fetchOne(50030);\n expect(employee.$primaryKey).toEqual(50030);\n const points = await employee.employeeLocation?.getAllValues();\n expect(points).toBeDefined();\n expect(points).toEqual([\n { time: \"2012-02-12\", value: { type: \"Point\", coordinates: [1.1, 1.1] } },\n { time: \"2012-02-12\", value: { type: \"Point\", coordinates: [1.1, 1.1] } },\n {\n time: \"2013-03-13\",\n value: { type: \"Point\", coordinates: [2.2, 2.2] },\n },\n { time: \"2014-04-14\", value: { type: \"Point\", coordinates: [3.3, 3.3] } },\n { time: \"2014-04-14\", value: { type: \"Point\", coordinates: [3.3, 3.3] } },\n ]);\n });\n it(\"getAll points with no data works\", async () => {\n const employee = await client(Employee).fetchOne(50030);\n expect(employee.$primaryKey).toEqual(50030);\n const points = await employee.employeeLocation?.getAllValues({\n $startTime: \"2021-03-12T12:00:00.000Z\",\n $endTime: \"2022-04-14T12:00:00.000Z\",\n });\n expect(points).toBeDefined();\n expect(points).toEqual([]);\n });\n it(\"async iter points with absolute range works\", async () => {\n const employee = await client(Employee).fetchOne(50030);\n expect(employee.$primaryKey).toEqual(50030);\n const pointsIter = employee.employeeLocation?.asyncIterValues({\n $startTime: \"2013-03-12T12:00:00.000Z\",\n $endTime: \"2014-04-14T12:00:00.000Z\",\n });\n const points = [];\n for await (const point of pointsIter) {\n points.push(point);\n }\n expect(points).toBeDefined();\n expect(points).toEqual([{\n time: \"2013-03-13\",\n value: { type: \"Point\", coordinates: [2.2, 2.2] },\n }, {\n time: \"2014-04-14\",\n value: { type: \"Point\", coordinates: [3.3, 3.3] },\n }]);\n });\n it(\"async iter points with no query\", async () => {\n const employee = await client(Employee).fetchOne(50030);\n expect(employee.$primaryKey).toEqual(50030);\n const pointsIter = employee.employeeLocation?.asyncIterValues();\n const points = [];\n for await (const point of pointsIter) {\n points.push(point);\n }\n expect(points).toBeDefined();\n expect(points).toEqual([\n { time: \"2012-02-12\", value: { type: \"Point\", coordinates: [1.1, 1.1] } },\n { time: \"2012-02-12\", value: { type: \"Point\", coordinates: [1.1, 1.1] } },\n {\n time: \"2013-03-13\",\n value: { type: \"Point\", coordinates: [2.2, 2.2] },\n },\n { time: \"2014-04-14\", value: { type: \"Point\", coordinates: [3.3, 3.3] } },\n { time: \"2014-04-14\", value: { type: \"Point\", coordinates: [3.3, 3.3] } },\n ]);\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -97,7 +97,8 @@ describe("ObjectSet", () => {
|
|
|
97
97
|
employeeStatus: expect.anything(),
|
|
98
98
|
fullName: "John Doe",
|
|
99
99
|
office: "NYC",
|
|
100
|
-
startDate: "2019-01-01"
|
|
100
|
+
startDate: "2019-01-01",
|
|
101
|
+
employeeLocation: expect.anything()
|
|
101
102
|
}, {
|
|
102
103
|
$apiName: "Employee",
|
|
103
104
|
$objectType: "Employee",
|
|
@@ -108,7 +109,8 @@ describe("ObjectSet", () => {
|
|
|
108
109
|
employeeStatus: expect.anything(),
|
|
109
110
|
fullName: "Jane Doe",
|
|
110
111
|
office: "SEA",
|
|
111
|
-
startDate: "2012-02-12"
|
|
112
|
+
startDate: "2012-02-12",
|
|
113
|
+
employeeLocation: expect.anything()
|
|
112
114
|
}, {
|
|
113
115
|
$apiName: "Employee",
|
|
114
116
|
$objectType: "Employee",
|
|
@@ -119,7 +121,8 @@ describe("ObjectSet", () => {
|
|
|
119
121
|
employeeStatus: expect.anything(),
|
|
120
122
|
fullName: "Jack Smith",
|
|
121
123
|
office: "LON",
|
|
122
|
-
startDate: "2015-05-15"
|
|
124
|
+
startDate: "2015-05-15",
|
|
125
|
+
employeeLocation: expect.anything()
|
|
123
126
|
}]);
|
|
124
127
|
});
|
|
125
128
|
it("allows fetching by PK from a base object set - fetchOne", async () => {
|