UNPKG

put.io-node

Version:

A Node.js wrapper for put.io APIv2 http://put.io

761 lines 35.6 kB
"use strict"; const Module = require('../../ts/index'); const nock = require('nock'); const Fixtures_1 = require('../fixtures/Fixtures'); const chai_1 = require('chai'); describe('Files Class', () => { const putioClient = new Module.Client('testToken'); describe('GET /files/list', () => { it('Should return valid response if parameters are valid', (done) => { const info = new Fixtures_1.Fixtures('../fixtures/files/files.list.get.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get('/files/list') .query(true) .reply(200, info.fixtureData); const parentFolderId = 123; putioClient.files.getFilesList(parentFolderId).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const info = new Fixtures_1.Fixtures('../fixtures/files/files.list.get.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get('/files/list') .query(true) .reply(400, 'Bad Request'); const parentFolderId = 123; putioClient.files.getFilesList(parentFolderId).then((result) => { chai_1.expect(result).not.to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('GET /files/search/<query>/page/<page_no>', () => { it('Should return valid response if parameters are valid', (done) => { const query = 'jazz'; const page = 1; const info = new Fixtures_1.Fixtures('../fixtures/files/files.search.get.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get(`/files/search/${query}/page/${page}`) .query(true) .reply(200, info.fixtureData); putioClient.files.searchFiles(query, page).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const query = 'jazz'; const page = 1; const info = new Fixtures_1.Fixtures('../fixtures/files/files.search.get.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get(`/files/search/${query}/page/${page}`) .query(true) .reply(400, 'Bad Request'); putioClient.files.searchFiles(query, page).then((result) => { chai_1.expect(result).not.to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('POST /files/upload', () => { it('Should return valid response if file parameters are valid', (done) => { const file = `${__filename}`; const info = new Fixtures_1.Fixtures('../fixtures/files/files.upload.notorrent.post.response.json'); nock('https://upload.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post('/files/upload') .query(true) .reply(200, info.fixtureData); putioClient.files.uploadFile(file).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return valid response if file & filename parameters are valid', (done) => { const file = `${__filename}`; const filename = 'renamed.txt'; const info = new Fixtures_1.Fixtures('../fixtures/files/files.upload.notorrent.post.response.json'); nock('https://upload.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post('/files/upload') .query(true) .reply(200, info.fixtureData); putioClient.files.uploadFile(file, filename).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return valid response if file & parentID parameters are valid', (done) => { const file = `${__filename}`; const parentID = 123; const info = new Fixtures_1.Fixtures('../fixtures/files/files.upload.notorrent.post.response.json'); nock('https://upload.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post('/files/upload') .query(true) .reply(200, info.fixtureData); putioClient.files.uploadFile(file, undefined, parentID).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return valid response if file, filename & parentID parameters are valid', (done) => { const file = `${__filename}`; const filename = 'renamed.txt'; const parentID = 123; const info = new Fixtures_1.Fixtures('../fixtures/files/files.upload.notorrent.post.response.json'); nock('https://upload.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post('/files/upload') .query(true) .reply(200, info.fixtureData); putioClient.files.uploadFile(file, filename, parentID).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const file = `${__filename}`; const info = new Fixtures_1.Fixtures('../fixtures/files/files.upload.torrent.post.response.json'); nock('https://upload.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post('/files/upload') .query(true) .reply(400, 'Bad Request'); putioClient.files.uploadFile(file).then((result) => { chai_1.expect(result).not.to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('POST /files/create-folder', () => { it('Should return valid response if parameters are valid', (done) => { const name = 'test'; const parentID = 0; const info = new Fixtures_1.Fixtures('../fixtures/files/files.create.folder.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post('/files/create-folder') .query(true) .reply(200, info.fixtureData); putioClient.files.createFolder(name, parentID).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const name = 'test'; const parentID = 0; const info = new Fixtures_1.Fixtures('../fixtures/files/files.create.folder.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post('/files/create-folder') .query(true) .reply(400, 'Bad Request'); putioClient.files.createFolder(name, parentID).then((result) => { chai_1.expect(result).not.to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('GET /files/<id>', () => { it('Should return valid response if parameters are valid', (done) => { const fileId = 12345; const parentFolderId = 123; const info = new Fixtures_1.Fixtures('../fixtures/files/files.id.get.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get(`/files/${fileId}`) .query(true) .reply(200, info.fixtureData); putioClient.files.getFileId(fileId, parentFolderId).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const fileId = 12345; const parentFolderId = 123; const info = new Fixtures_1.Fixtures('../fixtures/files/files.id.get.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get(`/files/${fileId}`) .query(true) .reply(400, 'Bad Request'); putioClient.files.getFileId(fileId, parentFolderId).then((result) => { chai_1.expect(result).not.to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('POST /files/delete', () => { it('Should return valid response if parameters are valid', (done) => { const fileIds = [1, 35, 67]; const info = new Fixtures_1.Fixtures('../fixtures/files/files.delete.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post('/files/delete') .query(true) .reply(200, info.fixtureData); putioClient.files.deleteFiles(fileIds).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const fileIds = [1, 35, 67]; const info = new Fixtures_1.Fixtures('../fixtures/files/files.delete.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post('/files/delete') .query(true) .reply(400, 'Bad Request'); putioClient.files.deleteFiles(fileIds).then((result) => { chai_1.expect(result).not.to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('POST /files/rename', () => { it('Should return valid response if parameters are valid', (done) => { const fileId = 123; const filename = 'new_file_name'; const info = new Fixtures_1.Fixtures('../fixtures/files/files.rename.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post('/files/rename') .query(true) .reply(200, info.fixtureData); putioClient.files.renameFile(fileId, filename).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const fileId = 123; const filename = 'new_file_name'; const info = new Fixtures_1.Fixtures('../fixtures/files/files.rename.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post('/files/rename') .query(true) .reply(400, 'Bad Request'); putioClient.files.renameFile(fileId, filename).then((result) => { chai_1.expect(result).not.to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('POST /files/move', () => { it('Should return valid response if parameters are valid', (done) => { const fileIds = [1, 35, 67]; const parentFolderId = 123; const info = new Fixtures_1.Fixtures('../fixtures/files/files.move.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post('/files/move') .query(true) .reply(200, info.fixtureData); putioClient.files.moveFiles(fileIds, parentFolderId).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const fileIds = [1, 35, 67]; const parentFolderId = 123; const info = new Fixtures_1.Fixtures('../fixtures/files/files.move.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post('/files/move') .query(true) .reply(400, 'Bad Request'); putioClient.files.moveFiles(fileIds, parentFolderId).then((result) => { chai_1.expect(result).not.to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('POST /files/<id>/mp4', () => { it('Should return valid response if parameters are valid', (done) => { const fileId = 1234; const info = new Fixtures_1.Fixtures('../fixtures/files/files.convert.to.mp4.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post(`/files/${fileId}/mp4`) .query(true) .reply(200, info.fixtureData); putioClient.files.convertToMP4(fileId).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const fileId = 1234; const info = new Fixtures_1.Fixtures('../fixtures/files/files.convert.to.mp4.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post(`/files/${fileId}/mp4`) .query(true) .reply(400, 'Bad Request'); putioClient.files.convertToMP4(fileId).then((result) => { chai_1.expect(result).not.to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('GET /files/<id>/mp4', () => { it('Should return valid response if parameters are valid', (done) => { const fileId = 1234; const info = new Fixtures_1.Fixtures('../fixtures/files/files.mp4.status.get.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get(`/files/${fileId}/mp4`) .query(true) .reply(200, info.fixtureData); putioClient.files.getMP4Status(fileId).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const fileId = 1234; const info = new Fixtures_1.Fixtures('../fixtures/files/files.mp4.status.get.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get(`/files/${fileId}/mp4`) .query(true) .reply(400, 'Bad Request'); putioClient.files.getMP4Status(fileId).then((result) => { chai_1.expect(result).not.to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('GET /files/<id>/download', () => { it('Should return valid response if parameters are valid', (done) => { const fileId = 1234; const fileContent = 'Lorem Ipsum text file content'; nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get(`/files/${fileId}/download`) .query(true) .reply(200, fileContent); putioClient.files.downloadFile(fileId).then((result) => { chai_1.expect(result).to.equal(fileContent); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const fileId = 1234; const fileContent = 'Lorem Ipsum text file content'; nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get(`/files/${fileId}/download`) .query(true) .reply(400, 'Bad Request'); putioClient.files.downloadFile(fileId).then((result) => { chai_1.expect(result).not.to.equal(fileContent); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('POST /files/share', () => { it('Should return valid response if parameters are valid', (done) => { const fileIds = [1, 35, 67]; const friends = ['johndoe', 'janedoe']; const info = new Fixtures_1.Fixtures('../fixtures/files/files.share.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post('/files/share') .query(true) .reply(200, info.fixtureData); putioClient.files.shareFiles(fileIds, friends).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const fileIds = [1, 35, 67]; const friends = ['johndoe', 'janedoe']; const info = new Fixtures_1.Fixtures('../fixtures/files/files.share.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post('/files/share') .query(true) .reply(400, 'Bad Request'); putioClient.files.shareFiles(fileIds, friends).then((result) => { chai_1.expect(result).not.to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('GET /files/shared', () => { it('Should return valid response if parameters are valid', (done) => { const info = new Fixtures_1.Fixtures('../fixtures/files/files.shared.get.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get('/files/shared') .query(true) .reply(200, info.fixtureData); putioClient.files.getSharedFiles().then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const info = new Fixtures_1.Fixtures('../fixtures/files/files.shared.get.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get('/files/shared') .query(true) .reply(400, 'Bad Request'); putioClient.files.getSharedFiles().then((result) => { chai_1.expect(result).not.to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('GET /files/<id>/shared-with', () => { it('Should return valid response if parameters are valid', (done) => { const fileId = 1234; const info = new Fixtures_1.Fixtures('../fixtures/files/files.shared-with.get.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get(`/files/${fileId}/shared-with`) .query(true) .reply(200, info.fixtureData); putioClient.files.getUsersFileIsSharedWith(fileId).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const fileId = 1234; const info = new Fixtures_1.Fixtures('../fixtures/files/files.shared-with.get.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get(`/files/${fileId}/shared-with`) .query(true) .reply(400, 'Bad Request'); putioClient.files.getUsersFileIsSharedWith(fileId).then((result) => { chai_1.expect(result).not.to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('POST /files/<id>/unshare', () => { it('Should return valid response if parameters are valid', (done) => { const shares = ['everyone']; const fileId = 1234; const info = new Fixtures_1.Fixtures('../fixtures/files/files.unshare.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post(`/files/${fileId}/unshare`) .query(true) .reply(200, info.fixtureData); putioClient.files.unshareFile(fileId, shares).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const shares = ['everyone']; const fileId = 1234; const info = new Fixtures_1.Fixtures('../fixtures/files/files.unshare.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post(`/files/${fileId}/unshare`) .query(true) .reply(400, 'Bad Request'); putioClient.files.unshareFile(fileId, shares).then((result) => { chai_1.expect(result).not.to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('GET /files/<id>/subtitles', () => { it('Should return valid response if parameters are valid', (done) => { const fileId = 1234; const info = new Fixtures_1.Fixtures('../fixtures/files/files.subtitles.get.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get(`/files/${fileId}/subtitles`) .query(true) .reply(200, info.fixtureData); putioClient.files.getFileSubtitles(fileId).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const fileId = 1234; const info = new Fixtures_1.Fixtures('../fixtures/files/files.subtitles.get.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get(`/files/${fileId}/subtitles`) .query(true) .reply(400, 'Bad Request'); putioClient.files.getFileSubtitles(fileId).then((result) => { chai_1.expect(result).not.to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('GET /files/<id>/subtitles/<key>', () => { it('Should return valid response if parameters are valid', (done) => { const fileId = 1234; const format = 'srt'; const key = 'V7mVadfvq34erarjy9tqj0435hgare'; const subtitleContent = 'Lorem Ipsum subtitle file content'; nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get(`/files/${fileId}/subtitles/${key}`) .query(true) .reply(200, subtitleContent); putioClient.files.downloadSubtitle(fileId, key, format).then((result) => { chai_1.expect(result).to.equal(subtitleContent); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const fileId = 1234; const format = 'srt'; const key = 'V7mVadfvq34erarjy9tqj0435hgare'; const subtitleContent = 'Lorem Ipsum subtitle file content'; nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get(`/files/${fileId}/subtitles/${key}`) .query(true) .reply(400, 'Bad Request'); putioClient.files.downloadSubtitle(fileId, key, format).then((result) => { chai_1.expect(result).not.to.equal(subtitleContent); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('GET /files/<id>/hls/media.m3u8', () => { it('Should return valid response if parameters are valid', (done) => { const fileId = 1234; const subtitleKey = 'all'; const hlsContent = 'Lorem Ipsum subtitle HLS content'; nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get(`/files/${fileId}/hls/media.m3u8`) .query(true) .reply(200, hlsContent); putioClient.files.getHLSPlaylist(fileId, subtitleKey).then((result) => { chai_1.expect(result).to.equal(hlsContent); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const fileId = 1234; const subtitleKey = 'all'; const hlsContent = 'Lorem Ipsum subtitle HLS content'; nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .get(`/files/${fileId}/hls/media.m3u8`) .query(true) .reply(400, 'Bad Request'); putioClient.files.getHLSPlaylist(fileId, subtitleKey).then((result) => { chai_1.expect(result).not.to.equal(hlsContent); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('POST /files/<id>/start-from', () => { it('Should return valid response if parameters are valid', (done) => { const fileId = 1234; const time = 7641; const info = new Fixtures_1.Fixtures('../fixtures/files/files.set.video.position.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post(`/files/${fileId}/start-from`) .query(true) .reply(200, info.fixtureData); putioClient.files.setVideoPosition(fileId, time).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const fileId = 1234; const time = 7641; const info = new Fixtures_1.Fixtures('../fixtures/files/files.set.video.position.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post(`/files/${fileId}/start-from`) .query(true) .reply(400, 'Bad Request'); putioClient.files.setVideoPosition(fileId, time).then((result) => { chai_1.expect(result).not.to.equal(info.fixtureData); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); describe('POST /files/<id>/start-from/delete', () => { it('Should return valid response if parameters are valid', (done) => { const fileId = 1234; const info = new Fixtures_1.Fixtures('../fixtures/files/files.delete.video.position.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post(`/files/${fileId}/start-from/delete`) .query(true) .reply(200, info.fixtureData); putioClient.files.deleteVideoPosition(fileId).then((result) => { chai_1.expect(result).to.equal(JSON.stringify(info.fixtureData)); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(err); }); }); it('Should return an error if bad request', (done) => { const fileId = 1234; const info = new Fixtures_1.Fixtures('../fixtures/files/files.delete.video.position.post.response.json'); nock('https://api.put.io/v2') .defaultReplyHeaders({ 'Content-Type': 'application/json' }) .post(`/files/${fileId}/start-from/delete`) .query(true) .reply(400, 'Bad Request'); putioClient.files.deleteVideoPosition(fileId).then((result) => { chai_1.expect(result).not.to.equal(info.fixtureData); done(); }).catch(err => { chai_1.expect(err).to.contain('Error:'); done(); }); }); }); }); //# sourceMappingURL=Files.js.map