in src/InsertIonTypes.ts [51:80]
async function updateRecordAndVerifyType(
txn: TransactionExecutor,
parameter: any,
ionType: IonType
): Promise<void> {
const updateStatement: string = `UPDATE ${TABLE_NAME} SET Name = ?`;
await txn.execute(updateStatement, parameter);
log("Updated record.");
const searchStatement: string = `SELECT VALUE Name FROM ${TABLE_NAME}`;
const result: Result = await txn.execute(searchStatement);
const results: dom.Value[] = result.getResultList();
if (0 === results.length) {
throw new AssertionError({
message: "Did not find any values for the Name key."
});
}
results.forEach((value: dom.Value) => {
if (value.getType().binaryTypeId !== ionType.binaryTypeId) {
throw new AssertionError({
message: `The queried value type, ${value.getType().name}, does not match expected type, ${ionType.name}.`
});
}
});
log(`Successfully verified value is of type ${ionType.name}.`);
}