From ce5af8a004ee0a01c318027ddbac688464dc68ab Mon Sep 17 00:00:00 2001
From: "Juan Picado @jotadeveloper" <juanpicado19@gmail.com>
Date: Sun, 17 Dec 2017 22:50:09 +0100
Subject: [PATCH] fix: flow lint errors

---
 package.json                    |  2 +-
 src/lib/utils.js                |  2 +-
 test/unit/local-storage.spec.js | 16 ++++++++++------
 3 files changed, 12 insertions(+), 8 deletions(-)

diff --git a/package.json b/package.json
index 8b9d538fd..d19c91281 100644
--- a/package.json
+++ b/package.json
@@ -18,7 +18,7 @@
     "@verdaccio/file-locking": "^0.0.5",
     "@verdaccio/local-storage": "^0.0.14",
     "@verdaccio/streams": "^0.0.2",
-    "@verdaccio/types": "^0.0.8",
+    "@verdaccio/types": "^0.0.10",
     "JSONStream": "^1.1.1",
     "apache-md5": "^1.1.2",
     "async": "^2.6.0",
diff --git a/src/lib/utils.js b/src/lib/utils.js
index 3e3a4c6ca..5734e1a77 100644
--- a/src/lib/utils.js
+++ b/src/lib/utils.js
@@ -143,7 +143,7 @@ function filter_tarball_urls(pkg, req, config) {
  * @return {Boolean} whether a package has been tagged
  */
 function tag_version(data, version, tag) {
-	if (tag) {
+	if (_.isEmpty(tag) === false) {
 		if (data['dist-tags'][tag] !== version) {
 			if (semver.parse(version, true)) {
 				// valid version - store
diff --git a/test/unit/local-storage.spec.js b/test/unit/local-storage.spec.js
index a02c14288..0e62a3440 100644
--- a/test/unit/local-storage.spec.js
+++ b/test/unit/local-storage.spec.js
@@ -3,6 +3,7 @@ import rimRaf from 'rimraf';
 import path from 'path';
 import LocalStorage from '../../src/lib/local-storage';
 import AppConfig from '../../src/lib/config';
+// $FlowFixMe
 import configExample from './partials/config';
 import Logger, {setup} from '../../src/lib/logger';
 import {readFile} from '../functional/lib/test.utils';
@@ -34,13 +35,14 @@ describe('LocalStorage', () => {
   describe('LocalStorage::addPackage', () => {
     test('should add a package', (done) => {
       const metadata = JSON.parse(readMetadata());
-      const pkgStoragePath: string = storage._getLocalStorage(pkgName);
+      // $FlowFixMe
+      const pkgStoragePath = storage._getLocalStorage(pkgName);
       rimRaf(pkgStoragePath.path, (err) => {
         expect(err).toBeNull();
         storage.addPackage(pkgName, metadata, (err, data) => {
           expect(data.version).toMatch(/1.0.0/);
           expect(data.dist.tarball).toMatch(/npm_test-1.0.0.tgz/);
-          expect(data.name).toMatch(pkgName);
+          expect(data.name).toEqual(pkgName);
           done();
         });
       });
@@ -48,14 +50,15 @@ describe('LocalStorage', () => {
 
     test('should add a @scope package', (done) => {
       const metadata = JSON.parse(readMetadata());
-      const pkgStoragePath: string = storage._getLocalStorage(pkgNameScoped);
+      // $FlowFixMe
+      const pkgStoragePath = storage._getLocalStorage(pkgNameScoped);
 
       rimRaf(pkgStoragePath.path, (err) => {
         expect(err).toBeNull();
         storage.addPackage(pkgNameScoped, metadata, (err, data) => {
           expect(data.version).toMatch(/1.0.0/);
           expect(data.dist.tarball).toMatch(/npm_test-1.0.0.tgz/);
-          expect(data.name).toMatch(pkgName);
+          expect(data.name).toEqual(pkgName);
           done();
         });
       });
@@ -77,7 +80,7 @@ describe('LocalStorage', () => {
     test('should add new version without tag', (done) => {
       const metadata = JSON.parse(readMetadata('metadata-add-version'));
 
-      storage.addVersion(pkgName, '1.0.1', metadata, null, (err, data) => {
+      storage.addVersion(pkgName, '1.0.1', metadata, '', (err, data) => {
         expect(err).toBeNull();
         expect(data).toBeUndefined();
         done();
@@ -87,7 +90,7 @@ describe('LocalStorage', () => {
     test('should fails on add a duplicated version without tag', (done) => {
       const metadata = JSON.parse(readMetadata('metadata-add-version'));
 
-      storage.addVersion(pkgName, '1.0.1', metadata, null, (err, data) => {
+      storage.addVersion(pkgName, '1.0.1', metadata, '', (err, data) => {
         expect(err).not.toBeNull();
         expect(err.statusCode).toEqual(409);
         expect(err.message).toMatch(/this package is already present/);
@@ -135,6 +138,7 @@ describe('LocalStorage', () => {
     test('should add a new tarball', (done) => {
       const tarballData = JSON.parse(readMetadata('addTarball'));
       const stream = storage.addTarball(pkgName, tarballName);
+
       stream.on('error', function(err) {
         expect(err).toBeNull();
         done();