diff --git a/src/api/web/endpoint/package.js b/src/api/web/endpoint/package.js index 023166f1e..a9d721829 100644 --- a/src/api/web/endpoint/package.js +++ b/src/api/web/endpoint/package.js @@ -6,7 +6,7 @@ import _ from 'lodash'; import { addScope, addGravatarSupport, deleteProperties, sortByName, parseReadme } from '../../../lib/utils'; import { allow } from '../../middleware'; -import { DIST_TAGS } from '../../../lib/constants'; +import { DIST_TAGS, HTTP_STATUS } from '../../../lib/constants'; import type { Router } from 'express'; import type { IAuth, $ResponseExtend, $RequestExtend, $NextFunctionVer, IStorageHandler, $SidebarPackage } from '../../../../types'; @@ -87,7 +87,7 @@ function addPackageWebApi(route: Router, storage: IStorageHandler, auth: IAuth) sideBarInfo = addGravatarSupport(sideBarInfo); next(sideBarInfo); } else { - res.status(404); + res.status(HTTP_STATUS.NOT_FOUND); res.end(); } }, diff --git a/src/lib/local-storage.js b/src/lib/local-storage.js index fc7e8cce4..1aaddfe25 100644 --- a/src/lib/local-storage.js +++ b/src/lib/local-storage.js @@ -396,11 +396,12 @@ class LocalStorage implements IStorage { (uploadStream: any).abort = function() {}; (uploadStream: any).done = function() {}; - uploadStream._transform = function(data) { + uploadStream._transform = function(data, ...args) { shaOneHash.update(data); // measure the length for validation reasons length += data.length; - _transform.apply(uploadStream, arguments); + const appliedData = [data, ...args]; + _transform.apply(uploadStream, appliedData); }; if (name === STORAGE.PACKAGE_FILE_NAME || name === '__proto__') { diff --git a/test/functional/tags/tags.js b/test/functional/tags/tags.js index f8a66c46d..60a67b799 100644 --- a/test/functional/tags/tags.js +++ b/test/functional/tags/tags.js @@ -1,6 +1,7 @@ import _ from 'lodash'; import {readFile} from '../lib/test.utils'; +import { HTTP_STATUS } from '../../../src/lib/constants'; const readTags = () => readFile('../fixtures/tags.json'); @@ -9,7 +10,7 @@ export default function(server, express) { test('tags - testing for 404', () => { return server.getPackage('testexp_tags') // shouldn't exist yet - .status(404) + .status(HTTP_STATUS.NOT_FOUND) .body_error(/no such package/); }); diff --git a/test/unit/api/api.pkg.access.spec.js b/test/unit/api/api.pkg.access.spec.js index 6ddcad22b..669c4d297 100644 --- a/test/unit/api/api.pkg.access.spec.js +++ b/test/unit/api/api.pkg.access.spec.js @@ -3,7 +3,7 @@ import _ from 'lodash'; import path from 'path'; import rimraf from 'rimraf'; -import {HEADERS} from '../../../src/lib/constants'; +import { HEADERS, HTTP_STATUS } from '../../../src/lib/constants'; import configDefault from '../partials/config/config_access'; import Config from '../../../src/lib/config'; import endPointAPI from '../../../src/api/index'; @@ -60,7 +60,7 @@ describe('api with no limited access configuration', () => { .get('/jquery') .set('content-type', HEADERS.JSON_CHARSET) .expect('Content-Type', /json/) - .expect(404) + .expect(HTTP_STATUS.NOT_FOUND) .end(function(err, res) { if (err) { return done(err); diff --git a/test/unit/api/local-storage.spec.js b/test/unit/api/local-storage.spec.js index f79a86750..6052ae416 100644 --- a/test/unit/api/local-storage.spec.js +++ b/test/unit/api/local-storage.spec.js @@ -358,7 +358,7 @@ describe('LocalStorage', () => { const stream = storage.addTarball('unexsiting-package', tarballName); stream.on('error', (err) => { expect(err).not.toBeNull(); - expect(err.statusCode).toEqual(404); + expect(err.statusCode).toEqual(HTTP_STATUS.NOT_FOUND); expect(err.message).toMatch(/no such package available/); done(); }); diff --git a/test/unit/api/up-storage.spec.js b/test/unit/api/up-storage.spec.js index ea8ecb17f..a4d325233 100644 --- a/test/unit/api/up-storage.spec.js +++ b/test/unit/api/up-storage.spec.js @@ -69,7 +69,7 @@ describe('UpStorge', () => { proxy.getRemoteMetadata('@verdaccio/fake-package', {etag: '123456'}, (err) => { expect(err).not.toBeNull(); - expect(err.statusCode).toBe(404); + expect(err.statusCode).toBe(HTTP_STATUS.NOT_FOUND); expect(err.message).toMatch(API_ERROR.NOT_PACKAGE_UPLINK); done(); }); diff --git a/test/unit/functionalLibs/request.spec.js b/test/unit/functionalLibs/request.spec.js index ffdda8841..6a62aac0a 100644 --- a/test/unit/functionalLibs/request.spec.js +++ b/test/unit/functionalLibs/request.spec.js @@ -70,7 +70,7 @@ describe('Request Functional', () => { method: 'GET' }; // $FlowFixMe - smartRequest(options).status(404).then((result)=> { + smartRequest(options).status(HTTP_STATUS.NOT_FOUND).then((result)=> { // this never is resolved }, function(error) { expect(error.code).toBe('ENOTFOUND');