From bfd5d217feebb99a6eb60518b159bee6bf4d38ca Mon Sep 17 00:00:00 2001 From: ifedapoolarewaju Date: Mon, 23 Mar 2020 12:32:59 +0100 Subject: [PATCH] companion: fix test --- .../@uppy/companion/test/__mocks__/purest.js | 45 ++++++++++++++----- 1 file changed, 33 insertions(+), 12 deletions(-) diff --git a/packages/@uppy/companion/test/__mocks__/purest.js b/packages/@uppy/companion/test/__mocks__/purest.js index c28437345..6b932ca4a 100644 --- a/packages/@uppy/companion/test/__mocks__/purest.js +++ b/packages/@uppy/companion/test/__mocks__/purest.js @@ -2,10 +2,17 @@ const fs = require('fs') class MockPurest { constructor (opts) { - const methodsToMock = ['query', 'select', 'where', 'qs', 'auth', 'get', 'put', 'post', 'options', 'json'] + const methodsToMock = ['query', 'select', 'where', 'qs', 'auth', 'json'] + const httpMethodsToMock = ['get', 'put', 'post', 'options', 'head'] methodsToMock.forEach((item) => { this[item] = () => this }) + httpMethodsToMock.forEach((item) => { + this[item] = (url) => { + this._requestUrl = url + return this + } + }) this.opts = opts } @@ -13,24 +20,38 @@ class MockPurest { if (typeof done === 'function') { const responses = { dropbox: { - hash: '0a9f95a989dd4b1851f0103c31e304ce', - user_email: 'foo@bar.com', - email: 'foo@bar.com', - entries: [{ rev: 'f24234cd4' }] + default: { + hash: '0a9f95a989dd4b1851f0103c31e304ce', + user_email: 'foo@bar.com', + email: 'foo@bar.com', + entries: [{ rev: 'f24234cd4' }] + } }, drive: { - kind: 'drive#fileList', - etag: '"bcIyJ9A3gXa8oTYmz6nzAjQd-lY/eQc3WbZHkXpcItNyGKDuKXM_bNY"', - files: [{ + 'files/README.md': { id: '0B2x-PmqQHSKdT013TE1VVjZ3TWs', mimeType: 'image/jpg', ownedByMe: true, - permissions: [{ role: 'owner', emailAddress: 'ife@bala.com' }] - }], - size: 300 + permissions: [{ role: 'owner', emailAddress: 'ife@bala.com' }], + size: 300, + kind: 'drive#file', + etag: '"bcIyJ9A3gXa8oTYmz6nzAjQd-lY/eQc3WbZHkXpcItNyGKDuKXM_bNY"' + }, + default: { + kind: 'drive#fileList', + etag: '"bcIyJ9A3gXa8oTYmz6nzAjQd-lY/eQc3WbZHkXpcItNyGKDuKXM_bNY"', + files: [{ + id: '0B2x-PmqQHSKdT013TE1VVjZ3TWs', + mimeType: 'image/jpg', + ownedByMe: true, + permissions: [{ role: 'owner', emailAddress: 'ife@bala.com' }] + }], + size: 300 + } } } - const body = responses[this.opts.providerName] + const providerResponses = responses[this.opts.providerName] + const body = providerResponses[this._requestUrl] || providerResponses.default done(null, { body, statusCode: 200 }, body) }