From 45692414de21093e8518d85f91ee45d1c1f556c7 Mon Sep 17 00:00:00 2001 From: Rhys Arkins <rhys@arkins.net> Date: Sun, 19 Apr 2020 08:29:51 +0200 Subject: [PATCH] refactor(maven): read from fs instead of platform --- lib/manager/maven/extract.ts | 4 ++-- lib/manager/maven/index.spec.ts | 18 ++++++++++-------- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/lib/manager/maven/extract.ts b/lib/manager/maven/extract.ts index 6e8aa0d80b..e825fe6441 100644 --- a/lib/manager/maven/extract.ts +++ b/lib/manager/maven/extract.ts @@ -3,7 +3,7 @@ import { basename, dirname, normalize, join } from 'path'; import { XmlDocument, XmlElement } from 'xmldoc'; import { logger } from '../../logger'; import { ExtractConfig, PackageFile, PackageDependency } from '../common'; -import { platform } from '../../platform'; +import { readLocalFile } from '../../util/fs'; import * as datasourceMaven from '../../datasource/maven'; import { MAVEN_REPO } from '../../datasource/maven/common'; import { SkipReason } from '../../types'; @@ -300,7 +300,7 @@ export async function extractAllPackageFiles( ): Promise<PackageFile[]> { const packages: PackageFile[] = []; for (const packageFile of packageFiles) { - const content = await platform.getFile(packageFile); + const content = await readLocalFile(packageFile, 'utf8'); if (content) { const pkg = extractPackage(content, packageFile); if (pkg) { diff --git a/lib/manager/maven/index.spec.ts b/lib/manager/maven/index.spec.ts index 4aafead7a5..57b7c2680a 100644 --- a/lib/manager/maven/index.spec.ts +++ b/lib/manager/maven/index.spec.ts @@ -2,9 +2,11 @@ import { readFileSync } from 'fs'; import { extractPackage, resolveParents } from './extract'; import { extractAllPackageFiles, updateDependency } from './index'; import { PackageDependency, PackageFile } from '../common'; -import { platform as _platform } from '../../platform'; +import * as _fs from '../../util/fs'; -const platform: any = _platform; +jest.mock('../../util/fs'); + +const fs: any = _fs; const pomContent = readFileSync( 'lib/manager/maven/__fixtures__/simple.pom.xml', @@ -30,19 +32,19 @@ function selectDep(deps: PackageDependency[], name = 'org.example:quuz') { describe('manager/maven', () => { describe('extractAllPackageFiles', () => { it('should return empty if package has no content', async () => { - platform.getFile.mockReturnValueOnce(null); + fs.readLocalFile.mockReturnValueOnce(null); const res = await extractAllPackageFiles({}, ['random.pom.xml']); expect(res).toEqual([]); }); it('should return empty for packages with invalid content', async () => { - platform.getFile.mockReturnValueOnce('invalid content'); + fs.readLocalFile.mockReturnValueOnce('invalid content'); const res = await extractAllPackageFiles({}, ['random.pom.xml']); expect(res).toEqual([]); }); it('should return package files info', async () => { - platform.getFile.mockReturnValueOnce(pomContent); + fs.readLocalFile.mockReturnValueOnce(pomContent); const packages = await extractAllPackageFiles({}, ['random.pom.xml']); // windows path fix for (const p of packages) { @@ -97,7 +99,7 @@ describe('manager/maven', () => { }); it('should include registryUrls from parent pom files', async () => { - platform.getFile + fs.readLocalFile .mockReturnValueOnce(pomParent) .mockReturnValueOnce(pomChild); const packages = await extractAllPackageFiles({}, [ @@ -132,7 +134,7 @@ describe('manager/maven', () => { }); it('should update to version of the latest dep in implicit group', async () => { - platform.getFile.mockReturnValueOnce(origContent); + fs.readLocalFile.mockReturnValueOnce(origContent); const [{ deps }] = await extractAllPackageFiles({}, ['pom.xml']); const dep1 = selectDep(deps, 'org.example:foo-1'); @@ -177,7 +179,7 @@ describe('manager/maven', () => { }); it('should return null for ungrouped deps if content was updated outside', async () => { - platform.getFile.mockReturnValueOnce(origContent); + fs.readLocalFile.mockReturnValueOnce(origContent); const [{ deps }] = await extractAllPackageFiles({}, ['pom.xml']); const dep = selectDep(deps, 'org.example:bar'); const upgrade = { ...dep, newValue: '2.0.2' }; -- GitLab