feat(Airtop Node): Add File operations and scroll micro-interaction (#15089)

This commit is contained in:
Cesar Sanchez
2025-05-23 11:38:12 +02:00
committed by GitHub
parent b872e2354a
commit 86885a7d0e
41 changed files with 4002 additions and 237 deletions

View File

@@ -0,0 +1,55 @@
import * as deleteFile from '../../../actions/file/delete.operation';
import { ERROR_MESSAGES } from '../../../constants';
import * as transport from '../../../transport';
import { createMockExecuteFunction } from '../helpers';
const baseNodeParameters = {
resource: 'file',
operation: 'deleteFile',
sessionId: 'test-session-123',
fileId: 'file-123',
};
jest.mock('../../../transport', () => {
const originalModule = jest.requireActual<typeof transport>('../../../transport');
return {
...originalModule,
apiRequest: jest.fn().mockResolvedValue({}),
};
});
describe('Test Airtop, delete file operation', () => {
afterAll(() => {
jest.unmock('../../../transport');
});
afterEach(() => {
jest.clearAllMocks();
});
it('should delete file successfully', async () => {
const result = await deleteFile.execute.call(createMockExecuteFunction(baseNodeParameters), 0);
expect(transport.apiRequest).toHaveBeenCalledWith('DELETE', '/files/file-123');
expect(result).toEqual([
{
json: {
data: {
message: 'File deleted successfully',
},
},
},
]);
});
it('should throw error when fileId is empty', async () => {
const nodeParameters = {
...baseNodeParameters,
fileId: '',
};
await expect(
deleteFile.execute.call(createMockExecuteFunction(nodeParameters), 0),
).rejects.toThrow(ERROR_MESSAGES.REQUIRED_PARAMETER.replace('{{field}}', 'File ID'));
});
});