From caa2c4137090ce0124f821e5d5271131080b7987 Mon Sep 17 00:00:00 2001
From: Rhys Arkins <rhys@arkins.net>
Date: Mon, 13 Apr 2020 13:44:49 +0200
Subject: [PATCH] refactor: simplify fetching logic

---
 lib/workers/repository/process/fetch.spec.ts |  2 +-
 lib/workers/repository/process/fetch.ts      | 20 ++++----------------
 2 files changed, 5 insertions(+), 17 deletions(-)

diff --git a/lib/workers/repository/process/fetch.spec.ts b/lib/workers/repository/process/fetch.spec.ts
index ac720c44e4..2dc04fa3dc 100644
--- a/lib/workers/repository/process/fetch.spec.ts
+++ b/lib/workers/repository/process/fetch.spec.ts
@@ -84,7 +84,7 @@ describe('workers/repository/process/fetch', () => {
       };
       // TODO: fix types
       npm.getPackageUpdates = jest.fn((_) => ['a', 'b'] as never);
-      lookupUpdates.mockResolvedValue(['a', 'b'] as never);
+      lookupUpdates.mockResolvedValue({ updates: ['a', 'b'] } as never);
       await fetchUpdates(config, packageFiles);
       expect(packageFiles).toMatchSnapshot();
       expect(packageFiles.npm[0].deps[0].skipReason).toBeUndefined();
diff --git a/lib/workers/repository/process/fetch.ts b/lib/workers/repository/process/fetch.ts
index 1d43ed4d52..abd782c12b 100644
--- a/lib/workers/repository/process/fetch.ts
+++ b/lib/workers/repository/process/fetch.ts
@@ -1,4 +1,3 @@
-import is from '@sindresorhus/is';
 import pAll from 'p-all';
 import { logger } from '../../../logger';
 import { getPackageUpdates } from '../../../manager';
@@ -9,12 +8,8 @@ import {
   ManagerConfig,
 } from '../../../config';
 import { applyPackageRules } from '../../../util/package-rules';
-import { lookupUpdates, LookupUpdateConfig, UpdateResult } from './lookup';
-import {
-  PackageFile,
-  PackageDependency,
-  PackageUpdateResult,
-} from '../../../manager/common';
+import { lookupUpdates, LookupUpdateConfig } from './lookup';
+import { PackageFile, PackageDependency } from '../../../manager/common';
 import { SkipReason } from '../../../types';
 import { clone } from '../../../util/clone';
 
@@ -48,17 +43,10 @@ async function fetchDepUpdates(
     logger.debug({ dependency: dep.depName }, 'Dependency is disabled');
     dep.skipReason = SkipReason.Disabled;
   } else {
-    let lookupResults: UpdateResult | PackageUpdateResult[];
     if (depConfig.datasource) {
-      lookupResults = await lookupUpdates(depConfig as LookupUpdateConfig);
-    } else {
-      lookupResults = await getPackageUpdates(manager, depConfig);
-    }
-    // istanbul ignore else
-    if (is.array(lookupResults)) {
-      dep.updates = lookupResults;
+      Object.assign(dep, await lookupUpdates(depConfig as LookupUpdateConfig));
     } else {
-      Object.assign(dep, lookupResults);
+      dep.updates = await getPackageUpdates(manager, depConfig);
     }
     // istanbul ignore if
     if (dep.updates.length) {
-- 
GitLab