diff --git a/src/services/drive/drive-file.service.ts b/src/services/drive/drive-file.service.ts index d76d884..ecbb372 100644 --- a/src/services/drive/drive-file.service.ts +++ b/src/services/drive/drive-file.service.ts @@ -34,7 +34,7 @@ export class DriveFileService { }); return { - size: driveFile.size, + size: Number(driveFile.size), uuid: driveFile.uuid, encryptedName, name: payload.name, diff --git a/src/webdav/handlers/PUT.handler.ts b/src/webdav/handlers/PUT.handler.ts index 07b8688..3663e1a 100644 --- a/src/webdav/handlers/PUT.handler.ts +++ b/src/webdav/handlers/PUT.handler.ts @@ -61,7 +61,7 @@ export class PUTRequestHandler implements WebDavMethodHandler { const fileInfo = path.parse(decodeURI(req.url)); - await DriveFileService.instance.createFile({ + const file = await DriveFileService.instance.createFile({ name: fileInfo.name, type: fileInfo.ext.replaceAll('.', ''), size: contentLength, @@ -72,6 +72,8 @@ export class PUTRequestHandler implements WebDavMethodHandler { webdavLogger.info('✅ File uploaded to internxt drive'); + this.dependencies.driveRealmManager.createFile(file); + res.status(200); res.send(); }; diff --git a/test/webdav/handlers/PUT.handler.test.ts b/test/webdav/handlers/PUT.handler.test.ts index 9c9ef4f..45d238e 100644 --- a/test/webdav/handlers/PUT.handler.test.ts +++ b/test/webdav/handlers/PUT.handler.test.ts @@ -146,6 +146,7 @@ describe('PUT request handler', () => { .stub(networkFacade, 'uploadFromStream') .resolves([Promise.resolve({ fileId: '09218313209', hash: Buffer.from('test') }), new AbortController()]); sandbox.stub(DriveFileService.instance, 'createFile').resolves(); + sandbox.stub(driveRealmManager, 'createFile').resolves(); const response = createWebDavResponseFixture({ status: sandbox.stub().returns({ send: sandbox.stub() }),