quickbase-js 0.1.0-beta.8 → 1.0.0
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/README.md +252 -126
- package/dist/esm/quickbase.d.ts +2725 -2689
- package/dist/esm/quickbase.js +1763 -3524
- package/dist/esm/quickbase.js.map +1 -1
- package/dist/esm/quickbase.min.js +1 -1
- package/dist/esm/quickbase.min.js.map +1 -1
- package/dist/umd/quickbase.umd.js +1762 -3706
- package/dist/umd/quickbase.umd.js.map +1 -1
- package/dist/umd/quickbase.umd.min.js +1 -1
- package/dist/umd/quickbase.umd.min.js.map +1 -1
- package/package.json +27 -12
- package/CHANGELOG.md +0 -155
- package/build-common.js +0 -131
- package/build-esm.js +0 -71
- package/build-umd.js +0 -69
- package/examples/quicbase-jsCDN.html +0 -36
- package/examples/react.js +0 -48
- package/examples/vanillajs.html +0 -47
- package/open-api/fix-spec-main.ts +0 -97
- package/open-api/generate-override-report.ts +0 -214
- package/open-api/generate-unified-interface.ts +0 -256
- package/open-api/output/override-report.html +0 -11
- package/open-api/output/override-report.json +0 -14395
- package/open-api/output/quickbase-fixed.json +0 -11191
- package/open-api/regenerate-client.ts +0 -116
- package/open-api/schema/enhance-general.ts +0 -100
- package/open-api/schema/fix-arrays.ts +0 -69
- package/open-api/schema/tags/apps.ts +0 -90
- package/open-api/schema/tags/fields.ts +0 -471
- package/open-api/schema/tags/groups.ts +0 -51
- package/open-api/schema/tags/index.ts +0 -66
- package/open-api/schema/tags/records.ts +0 -115
- package/open-api/schema/tags/tables.ts +0 -211
- package/open-api/schema/tags/users.ts +0 -47
- package/open-api/types/spec.ts +0 -42
- package/open-api/utils/infer-schema.ts +0 -40
- package/open-api/utils/naming.ts +0 -10
- package/playwright.config.ts +0 -37
- package/rollup.config.js +0 -114
- package/specs/QuickBase_RESTful_API_2025-03-04T06_22_39.725Z.json +0 -46878
- package/specs/split/apps.json +0 -1315
- package/specs/split/auth.json +0 -191
- package/specs/split/fields.json +0 -3869
- package/specs/split/records.json +0 -754
- package/specs/split/reports.json +0 -619
- package/specs/split/tables.json +0 -1605
- package/src/RateLimitError.ts +0 -12
- package/src/ThrottleBucket.ts +0 -36
- package/src/generated-unified/QuickbaseClient.ts +0 -359
- package/src/generated-unified/missing-types-report.json +0 -3
- package/src/index.ts +0 -1
- package/src/invokeMethod.ts +0 -357
- package/src/quickbaseClient.ts +0 -244
- package/src/tokenCache.ts +0 -51
- package/src/utils.ts +0 -7
- package/test-esm.js +0 -1
- package/test-results.json +0 -2050
- package/test-umd.js +0 -1
- package/test.ts +0 -1
- package/tests/playwright/qb/auth/cacheSwitching.test.ts +0 -159
- package/tests/playwright/qb/auth/fetchTempToken401.test.ts +0 -219
- package/tests/playwright/qb/auth/getAppWithTempToken.test.ts +0 -162
- package/tests/playwright/qb/auth/getAppWithUserToken.test.ts +0 -153
- package/tests/playwright/qb/auth/getTempToken.test.ts +0 -152
- package/tests/playwright/qb/auth/tempTokenPrefetch.test.ts +0 -179
- package/tests/playwright/qb/auth/tempTokenRenewal.test.ts +0 -133
- package/tests/setup.ts +0 -53
- package/tests/vitest/qb/apps/copyApp.test.ts +0 -76
- package/tests/vitest/qb/apps/createApp.test.ts +0 -64
- package/tests/vitest/qb/apps/deleteApp.test.ts +0 -76
- package/tests/vitest/qb/apps/getApp.test.ts +0 -44
- package/tests/vitest/qb/apps/getAppEvents.test.ts +0 -67
- package/tests/vitest/qb/apps/updateApp.test.ts +0 -58
- package/tests/vitest/qb/auth/retryUserToken401.test.ts +0 -56
- package/tests/vitest/qb/fields/createField.test.ts +0 -77
- package/tests/vitest/qb/fields/deleteFields.test.ts +0 -83
- package/tests/vitest/qb/fields/getField.test.ts +0 -85
- package/tests/vitest/qb/fields/getFieldUsage.test.ts +0 -174
- package/tests/vitest/qb/fields/getFields.test.ts +0 -232
- package/tests/vitest/qb/fields/getFieldsUsage.test.ts +0 -77
- package/tests/vitest/qb/fields/updateField.test.ts +0 -93
- package/tests/vitest/qb/index.ts +0 -29
- package/tests/vitest/qb/records/deleteRecords.test.ts +0 -110
- package/tests/vitest/qb/records/runQuery.test.ts +0 -146
- package/tests/vitest/qb/records/upsert.test.ts +0 -102
- package/tests/vitest/qb/tables/createTable.test.ts +0 -55
- package/tests/vitest/qb/tables/deleteTable.test.ts +0 -50
- package/tests/vitest/qb/tables/getAppTables.test.ts +0 -46
- package/tests/vitest/qb/tables/getRelationships.test.ts +0 -80
- package/tests/vitest/qb/tables/getTable.test.ts +0 -26
- package/tests/vitest/qb/tables/updateRelationship.test.ts +0 -277
- package/tests/vitest/qb/tables/updateTable.test.ts +0 -48
- package/tests/vitest/unit/apps/copyApp.test.ts +0 -488
- package/tests/vitest/unit/apps/createApp.test.ts +0 -186
- package/tests/vitest/unit/apps/deleteApp.test.ts +0 -216
- package/tests/vitest/unit/apps/getApp.test.ts +0 -128
- package/tests/vitest/unit/apps/getAppEvents.test.ts +0 -193
- package/tests/vitest/unit/apps/updateApp.test.ts +0 -381
- package/tests/vitest/unit/auth/fetchTempToken401.test.ts +0 -62
- package/tests/vitest/unit/auth/getTempToken.test.ts +0 -95
- package/tests/vitest/unit/auth/retryTempToken401.test.ts +0 -113
- package/tests/vitest/unit/auth/retryTempTokenTwo401.test.ts +0 -81
- package/tests/vitest/unit/auth/retryUserToken401.test.ts +0 -56
- package/tests/vitest/unit/fields/createField.test.ts +0 -387
- package/tests/vitest/unit/fields/deleteFields.test.ts +0 -141
- package/tests/vitest/unit/fields/getField.test.ts +0 -189
- package/tests/vitest/unit/fields/getFieldUsage.test.ts +0 -166
- package/tests/vitest/unit/fields/getFields.test.ts +0 -122
- package/tests/vitest/unit/fields/getFieldsUsage.test.ts +0 -160
- package/tests/vitest/unit/fields/updateField.test.ts +0 -280
- package/tests/vitest/unit/index.ts +0 -33
- package/tests/vitest/unit/rateLimit.test.ts +0 -189
- package/tests/vitest/unit/records/deleteRecords.test.ts +0 -112
- package/tests/vitest/unit/records/runQuery.test.ts +0 -102
- package/tests/vitest/unit/records/upsert.test.ts +0 -234
- package/tests/vitest/unit/tables/createTable.test.ts +0 -70
- package/tests/vitest/unit/tables/deleteTable.test.ts +0 -77
- package/tests/vitest/unit/tables/getAppTables.test.ts +0 -85
- package/tests/vitest/unit/tables/getRelationships.test.ts +0 -259
- package/tests/vitest/unit/tables/getTable.test.ts +0 -233
- package/tests/vitest/unit/tables/updateRelationship.test.ts +0 -305
- package/tests/vitest/unit/tables/updateTable.test.ts +0 -80
- package/tests/vitest/unit/tokenLifespan.test.ts +0 -138
- package/tests/vitest/unit/umd.test.ts +0 -8
- package/text.txt +0 -104
- package/tools/log-gen.ts +0 -235
- package/tools/log-gen.yaml +0 -4982
- package/tools/openapi-jars/openapi-generator-cli-7.12.0.jar +0 -0
- package/tsconfig.build.json +0 -17
- package/tsconfig.json +0 -32
- package/versionrc.json +0 -9
- package/vitest.config.ts +0 -27
|
@@ -1,277 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect, beforeAll, afterAll, beforeEach } from "vitest";
|
|
2
|
-
import {
|
|
3
|
-
createClient,
|
|
4
|
-
QB_REALM,
|
|
5
|
-
QB_USER_TOKEN,
|
|
6
|
-
QB_TABLE_ID_1,
|
|
7
|
-
QB_TABLE_ID_2,
|
|
8
|
-
} from "@tests/setup.ts";
|
|
9
|
-
import {
|
|
10
|
-
UpdateRelationshipRequest,
|
|
11
|
-
CreateFieldRequest,
|
|
12
|
-
} from "@/generated/models";
|
|
13
|
-
|
|
14
|
-
describe("QuickbaseClient Integration - updateRelationship", () => {
|
|
15
|
-
let client: ReturnType<typeof createClient>;
|
|
16
|
-
let relationshipId: number;
|
|
17
|
-
let newLookupFieldId: number | undefined;
|
|
18
|
-
let newChildFieldId: number | undefined;
|
|
19
|
-
let generatedLookupFieldId: number | undefined;
|
|
20
|
-
let generatedSummaryFieldId: number | undefined;
|
|
21
|
-
|
|
22
|
-
beforeAll(async () => {
|
|
23
|
-
client = createClient(fetch, {
|
|
24
|
-
realm: QB_REALM,
|
|
25
|
-
userToken: QB_USER_TOKEN,
|
|
26
|
-
debug: true,
|
|
27
|
-
});
|
|
28
|
-
|
|
29
|
-
if (!QB_REALM) throw new Error("QB_REALM is not defined in .env");
|
|
30
|
-
if (!QB_USER_TOKEN) throw new Error("QB_USER_TOKEN is not defined in .env");
|
|
31
|
-
|
|
32
|
-
const relationshipsResponse = await client.getRelationships({
|
|
33
|
-
tableId: QB_TABLE_ID_2,
|
|
34
|
-
skip: 0,
|
|
35
|
-
});
|
|
36
|
-
console.log(
|
|
37
|
-
"Initial relationships response:",
|
|
38
|
-
JSON.stringify(relationshipsResponse, null, 2)
|
|
39
|
-
);
|
|
40
|
-
const relationship = relationshipsResponse.relationships.find(
|
|
41
|
-
(r) => r.parentTableId === QB_TABLE_ID_1
|
|
42
|
-
);
|
|
43
|
-
if (!relationship) {
|
|
44
|
-
throw new Error(
|
|
45
|
-
`No relationship found between parent ${QB_TABLE_ID_1} and child ${QB_TABLE_ID_2}`
|
|
46
|
-
);
|
|
47
|
-
}
|
|
48
|
-
relationshipId = relationship.id;
|
|
49
|
-
console.log(`Identified relationshipId: ${relationshipId}`);
|
|
50
|
-
|
|
51
|
-
const lookupFieldRequest: CreateFieldRequest = {
|
|
52
|
-
label: `Test Lookup Field_${Date.now()}`,
|
|
53
|
-
fieldType: "text",
|
|
54
|
-
};
|
|
55
|
-
const lookupResponse = await client.createField({
|
|
56
|
-
tableId: QB_TABLE_ID_1,
|
|
57
|
-
body: lookupFieldRequest,
|
|
58
|
-
});
|
|
59
|
-
newLookupFieldId = lookupResponse.id;
|
|
60
|
-
if (!newLookupFieldId) {
|
|
61
|
-
throw new Error("Failed to retrieve ID for newly created lookup field");
|
|
62
|
-
}
|
|
63
|
-
console.log(
|
|
64
|
-
`Created lookup field with ID ${newLookupFieldId} in parent table ${QB_TABLE_ID_1}`
|
|
65
|
-
);
|
|
66
|
-
|
|
67
|
-
const childFieldRequest: CreateFieldRequest = {
|
|
68
|
-
label: `Test Child Numeric_${Date.now()}`,
|
|
69
|
-
fieldType: "numeric",
|
|
70
|
-
};
|
|
71
|
-
const childResponse = await client.createField({
|
|
72
|
-
tableId: QB_TABLE_ID_2,
|
|
73
|
-
body: childFieldRequest,
|
|
74
|
-
});
|
|
75
|
-
newChildFieldId = childResponse.id;
|
|
76
|
-
if (!newChildFieldId) {
|
|
77
|
-
throw new Error("Failed to retrieve ID for newly created child field");
|
|
78
|
-
}
|
|
79
|
-
console.log(
|
|
80
|
-
`Created child field with ID ${newChildFieldId} in child table ${QB_TABLE_ID_2}`
|
|
81
|
-
);
|
|
82
|
-
|
|
83
|
-
console.log(
|
|
84
|
-
`Setup complete: relationshipId=${relationshipId}, lookupFieldId=${newLookupFieldId}, childFieldId=${newChildFieldId}`
|
|
85
|
-
);
|
|
86
|
-
}, 30000);
|
|
87
|
-
|
|
88
|
-
afterAll(async () => {
|
|
89
|
-
if (newLookupFieldId) {
|
|
90
|
-
try {
|
|
91
|
-
const deleteLookupResponse = await client.deleteFields({
|
|
92
|
-
tableId: QB_TABLE_ID_1,
|
|
93
|
-
body: { fieldIds: [newLookupFieldId] },
|
|
94
|
-
});
|
|
95
|
-
console.log(
|
|
96
|
-
`Deleted original lookup field ${newLookupFieldId} from ${QB_TABLE_ID_1}:`,
|
|
97
|
-
JSON.stringify(deleteLookupResponse, null, 2)
|
|
98
|
-
);
|
|
99
|
-
} catch (error) {
|
|
100
|
-
console.error(
|
|
101
|
-
`Failed to delete original lookup field ${newLookupFieldId}:`,
|
|
102
|
-
error
|
|
103
|
-
);
|
|
104
|
-
throw error;
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
if (newChildFieldId) {
|
|
108
|
-
try {
|
|
109
|
-
const deleteChildResponse = await client.deleteFields({
|
|
110
|
-
tableId: QB_TABLE_ID_2,
|
|
111
|
-
body: { fieldIds: [newChildFieldId] },
|
|
112
|
-
});
|
|
113
|
-
console.log(
|
|
114
|
-
`Deleted original child field ${newChildFieldId} from ${QB_TABLE_ID_2}:`,
|
|
115
|
-
JSON.stringify(deleteChildResponse, null, 2)
|
|
116
|
-
);
|
|
117
|
-
} catch (error) {
|
|
118
|
-
console.error(
|
|
119
|
-
`Failed to delete original child field ${newChildFieldId}:`,
|
|
120
|
-
error
|
|
121
|
-
);
|
|
122
|
-
throw error;
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
if (generatedLookupFieldId) {
|
|
126
|
-
try {
|
|
127
|
-
const deleteGeneratedLookupResponse = await client.deleteFields({
|
|
128
|
-
tableId: QB_TABLE_ID_2,
|
|
129
|
-
body: { fieldIds: [generatedLookupFieldId] },
|
|
130
|
-
});
|
|
131
|
-
console.log(
|
|
132
|
-
`Deleted generated lookup field ${generatedLookupFieldId} from ${QB_TABLE_ID_2}:`,
|
|
133
|
-
JSON.stringify(deleteGeneratedLookupResponse, null, 2)
|
|
134
|
-
);
|
|
135
|
-
} catch (error) {
|
|
136
|
-
console.error(
|
|
137
|
-
`Failed to delete generated lookup field ${generatedLookupFieldId}:`,
|
|
138
|
-
error
|
|
139
|
-
);
|
|
140
|
-
throw error;
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
if (generatedSummaryFieldId) {
|
|
144
|
-
try {
|
|
145
|
-
const deleteGeneratedSummaryResponse = await client.deleteFields({
|
|
146
|
-
tableId: QB_TABLE_ID_1,
|
|
147
|
-
body: { fieldIds: [generatedSummaryFieldId] },
|
|
148
|
-
});
|
|
149
|
-
console.log(
|
|
150
|
-
`Deleted generated summary field ${generatedSummaryFieldId} from ${QB_TABLE_ID_1}:`,
|
|
151
|
-
JSON.stringify(deleteGeneratedSummaryResponse, null, 2)
|
|
152
|
-
);
|
|
153
|
-
} catch (error) {
|
|
154
|
-
console.error(
|
|
155
|
-
`Failed to delete generated summary field ${generatedSummaryFieldId}:`,
|
|
156
|
-
error
|
|
157
|
-
);
|
|
158
|
-
throw error;
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
}, 30000);
|
|
162
|
-
|
|
163
|
-
beforeEach(async () => {
|
|
164
|
-
const relationshipsResponse = await client.getRelationships({
|
|
165
|
-
tableId: QB_TABLE_ID_2,
|
|
166
|
-
});
|
|
167
|
-
const relationship = relationshipsResponse.relationships.find(
|
|
168
|
-
(r) => r.id === relationshipId
|
|
169
|
-
);
|
|
170
|
-
if (!relationship) {
|
|
171
|
-
throw new Error(`Relationship ${relationshipId} not found before test`);
|
|
172
|
-
}
|
|
173
|
-
console.log(
|
|
174
|
-
"Relationship state before test:",
|
|
175
|
-
JSON.stringify(relationship, null, 2)
|
|
176
|
-
);
|
|
177
|
-
}, 30000);
|
|
178
|
-
|
|
179
|
-
it("adds a lookup field to the relationship", async ({ expect }) => {
|
|
180
|
-
const tableId = QB_TABLE_ID_2;
|
|
181
|
-
const initialResponse = await client.getRelationships({ tableId });
|
|
182
|
-
const initialRelationship = initialResponse.relationships.find(
|
|
183
|
-
(r) => r.id === relationshipId
|
|
184
|
-
);
|
|
185
|
-
const currentLookupFields = (initialRelationship?.lookupFields || []).map(
|
|
186
|
-
(f) => f.id
|
|
187
|
-
);
|
|
188
|
-
console.log("Current lookupFields before update:", currentLookupFields);
|
|
189
|
-
|
|
190
|
-
const request: UpdateRelationshipRequest = {
|
|
191
|
-
lookupFieldIds: [newLookupFieldId!],
|
|
192
|
-
};
|
|
193
|
-
console.log(
|
|
194
|
-
"Adding lookup field request:",
|
|
195
|
-
JSON.stringify(request, null, 2)
|
|
196
|
-
);
|
|
197
|
-
|
|
198
|
-
const updateResponse = await client.updateRelationship({
|
|
199
|
-
tableId,
|
|
200
|
-
relationshipId,
|
|
201
|
-
body: request,
|
|
202
|
-
});
|
|
203
|
-
console.log("Update response:", JSON.stringify(updateResponse, null, 2));
|
|
204
|
-
|
|
205
|
-
const newLookup = updateResponse.lookupFields.find(
|
|
206
|
-
(f) =>
|
|
207
|
-
f.label.includes("Test Lookup Field") &&
|
|
208
|
-
!currentLookupFields.includes(f.id)
|
|
209
|
-
);
|
|
210
|
-
generatedLookupFieldId = newLookup?.id;
|
|
211
|
-
console.log(
|
|
212
|
-
`Captured generated lookup field ID: ${generatedLookupFieldId}`
|
|
213
|
-
);
|
|
214
|
-
|
|
215
|
-
expect(updateResponse.id).toBe(relationshipId);
|
|
216
|
-
expect(updateResponse.childTableId).toBe(QB_TABLE_ID_2);
|
|
217
|
-
expect(updateResponse.parentTableId).toBe(QB_TABLE_ID_1);
|
|
218
|
-
expect(
|
|
219
|
-
updateResponse.lookupFields.some((f) =>
|
|
220
|
-
f.label.includes("Test Lookup Field")
|
|
221
|
-
)
|
|
222
|
-
).toBe(true);
|
|
223
|
-
expect(updateResponse.lookupFields.some((f) => f.id === 19)).toBe(true);
|
|
224
|
-
}, 30000);
|
|
225
|
-
|
|
226
|
-
it("adds a summary field to the parent table", async ({ expect }) => {
|
|
227
|
-
const tableId = QB_TABLE_ID_2;
|
|
228
|
-
const initialResponse = await client.getRelationships({ tableId });
|
|
229
|
-
const initialRelationship = initialResponse.relationships.find(
|
|
230
|
-
(r) => r.id === relationshipId
|
|
231
|
-
);
|
|
232
|
-
const currentSummaryFields = (initialRelationship?.summaryFields || []).map(
|
|
233
|
-
(f) => f.id
|
|
234
|
-
);
|
|
235
|
-
console.log("Current summaryFields before update:", currentSummaryFields);
|
|
236
|
-
|
|
237
|
-
const request: UpdateRelationshipRequest = {
|
|
238
|
-
summaryFields: [
|
|
239
|
-
{
|
|
240
|
-
summaryFid: newChildFieldId!,
|
|
241
|
-
label: "Test Summary Field",
|
|
242
|
-
accumulationType: "SUM",
|
|
243
|
-
},
|
|
244
|
-
],
|
|
245
|
-
};
|
|
246
|
-
console.log(
|
|
247
|
-
"Adding summary field request:",
|
|
248
|
-
JSON.stringify(request, null, 2)
|
|
249
|
-
);
|
|
250
|
-
|
|
251
|
-
const updateResponse = await client.updateRelationship({
|
|
252
|
-
tableId,
|
|
253
|
-
relationshipId,
|
|
254
|
-
body: request,
|
|
255
|
-
});
|
|
256
|
-
console.log("Update response:", JSON.stringify(updateResponse, null, 2));
|
|
257
|
-
|
|
258
|
-
const newSummary = updateResponse.summaryFields.find(
|
|
259
|
-
(f) =>
|
|
260
|
-
f.label.includes("Test Summary Field") &&
|
|
261
|
-
!currentSummaryFields.includes(f.id)
|
|
262
|
-
);
|
|
263
|
-
generatedSummaryFieldId = newSummary?.id;
|
|
264
|
-
console.log(
|
|
265
|
-
`Captured generated summary field ID: ${generatedSummaryFieldId}`
|
|
266
|
-
);
|
|
267
|
-
|
|
268
|
-
expect(updateResponse.id).toBe(relationshipId);
|
|
269
|
-
expect(updateResponse.childTableId).toBe(QB_TABLE_ID_2);
|
|
270
|
-
expect(updateResponse.parentTableId).toBe(QB_TABLE_ID_1);
|
|
271
|
-
expect(
|
|
272
|
-
updateResponse.summaryFields.some((f) =>
|
|
273
|
-
f.label.includes("Test Summary Field")
|
|
274
|
-
)
|
|
275
|
-
).toBe(true);
|
|
276
|
-
}, 30000);
|
|
277
|
-
});
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { test, expect } from "vitest";
|
|
2
|
-
import { quickbase } from "../../../../src/quickbaseClient";
|
|
3
|
-
|
|
4
|
-
test(
|
|
5
|
-
"QuickbaseClient Integration - updateTable > updates real table data in QuickBase",
|
|
6
|
-
{ timeout: 10000 },
|
|
7
|
-
async () => {
|
|
8
|
-
const config = {
|
|
9
|
-
realm: process.env.QB_REALM || "",
|
|
10
|
-
userToken: process.env.QB_USER_TOKEN || "",
|
|
11
|
-
debug: true,
|
|
12
|
-
};
|
|
13
|
-
const client = quickbase(config);
|
|
14
|
-
const appId = "buwai2zpe";
|
|
15
|
-
const tableId = "buwai2zr4";
|
|
16
|
-
const updatedBody = {
|
|
17
|
-
name: "Root Updated " + Date.now(),
|
|
18
|
-
description: "Integration test update",
|
|
19
|
-
};
|
|
20
|
-
const originalBody = {
|
|
21
|
-
name: "Root",
|
|
22
|
-
description: "",
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
console.log("Config used:", config);
|
|
26
|
-
// Update the table
|
|
27
|
-
const response = await client.updateTable({
|
|
28
|
-
tableId,
|
|
29
|
-
appId,
|
|
30
|
-
body: updatedBody,
|
|
31
|
-
});
|
|
32
|
-
expect(response).toBeDefined();
|
|
33
|
-
expect(response.id).toBe(tableId);
|
|
34
|
-
expect(response.name).toBe(updatedBody.name);
|
|
35
|
-
expect(response.description).toBe(updatedBody.description);
|
|
36
|
-
console.log("Real API response:", response);
|
|
37
|
-
|
|
38
|
-
// Cleanup: Revert the table to original state
|
|
39
|
-
const cleanupResponse = await client.updateTable({
|
|
40
|
-
tableId,
|
|
41
|
-
appId,
|
|
42
|
-
body: originalBody,
|
|
43
|
-
});
|
|
44
|
-
expect(cleanupResponse.name).toBe(originalBody.name);
|
|
45
|
-
expect(cleanupResponse.description).toBe(originalBody.description);
|
|
46
|
-
console.log("Cleanup API response:", cleanupResponse);
|
|
47
|
-
}
|
|
48
|
-
);
|