@pinecone-database/pinecone
Version:
This is the official Node.js SDK for [Pinecone](https://www.pinecone.io), written in TypeScript.
42 lines • 1.71 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
const createBackup_1 = require("../createBackup");
const errors_1 = require("../../errors");
const setupCreateBackupResponse = (createBackupResponse = {}, isCreateBackupSuccess = true) => {
const fakeCreateBackup = jest
.fn()
.mockImplementation(() => isCreateBackupSuccess
? Promise.resolve(createBackupResponse)
: Promise.reject(createBackupResponse));
const MIA = {
createBackup: fakeCreateBackup,
};
return MIA;
};
describe('createBackup', () => {
test('calls the openapi create backup endpoint, passing name and description', async () => {
const MIA = setupCreateBackupResponse();
const returned = await (0, createBackup_1.createBackup)(MIA)({
indexName: 'index-name',
name: 'backup-name',
description: 'backup-description',
});
expect(returned).toEqual({});
expect(MIA.createBackup).toHaveBeenCalledWith({
indexName: 'index-name',
createBackupRequest: {
name: 'backup-name',
description: 'backup-description',
},
});
});
test('throws an error if indexName is not provided', async () => {
const MIA = setupCreateBackupResponse();
await expect((0, createBackup_1.createBackup)(MIA)({
indexName: '',
name: 'backup-name',
description: 'backup-description',
})).rejects.toThrow(new errors_1.PineconeArgumentError('You must pass a non-empty string for `indexName` in order to create a backup'));
});
});
//# sourceMappingURL=createBackup.test.js.map
;