From 68ebe088589d17d0888362276471633c1fad275c Mon Sep 17 00:00:00 2001 From: Sergei Zharinov <zharinov@users.noreply.github.com> Date: Thu, 19 Aug 2021 09:09:55 +0300 Subject: [PATCH] test: Explicit snapshots for manager tests (#11329) * test: Explicit snapshots for manager tests * Fix snapshots * Remove obsolete snapshots --- .../helmv3/__snapshots__/update.spec.ts.snap | 15 -------- lib/manager/helmv3/extract.spec.ts | 18 ++++++---- lib/manager/helmv3/update.spec.ts | 10 +++--- .../__snapshots__/extract.spec.ts.snap | 36 ------------------- lib/manager/homebrew/extract.spec.ts | 36 ++++--------------- lib/manager/html/extract.spec.ts | 20 +++++++++-- lib/manager/kustomize/extract.spec.ts | 11 ++++-- 7 files changed, 49 insertions(+), 97 deletions(-) delete mode 100644 lib/manager/helmv3/__snapshots__/update.spec.ts.snap diff --git a/lib/manager/helmv3/__snapshots__/update.spec.ts.snap b/lib/manager/helmv3/__snapshots__/update.spec.ts.snap deleted file mode 100644 index aa5d7db9ce..0000000000 --- a/lib/manager/helmv3/__snapshots__/update.spec.ts.snap +++ /dev/null @@ -1,15 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`manager/helmv3/update .bumpPackageVersion() increments 1`] = ` -"apiVersion: v2 -name: test -version: 0.0.3 -" -`; - -exports[`manager/helmv3/update .bumpPackageVersion() updates 1`] = ` -"apiVersion: v2 -name: test -version: 0.1.0 -" -`; diff --git a/lib/manager/helmv3/extract.spec.ts b/lib/manager/helmv3/extract.spec.ts index 2967db1578..e9710fd4ec 100644 --- a/lib/manager/helmv3/extract.spec.ts +++ b/lib/manager/helmv3/extract.spec.ts @@ -59,9 +59,12 @@ describe('manager/helmv3/extract', () => { stable: 'https://charts.helm.sh/stable', }, }); - // FIXME: explicit assert condition - expect(result).not.toBeNull(); - expect(result).toMatchSnapshot(); + expect(result).toMatchSnapshot({ + deps: [ + { depName: 'redis', currentValue: '0.9.0' }, + { depName: 'postgresql', currentValue: '0.8.1' }, + ], + }); }); it('resolves aliased registry urls', async () => { const content = ` @@ -124,9 +127,12 @@ describe('manager/helmv3/extract', () => { stable: 'https://charts.helm.sh/stable', }, }); - // FIXME: explicit assert condition - expect(result).not.toBeNull(); - expect(result).toMatchSnapshot(); + expect(result).toMatchSnapshot({ + deps: [ + { depName: 'redis' }, + { depName: 'postgresql', skipReason: 'local-dependency' }, + ], + }); }); it('returns null if no dependencies key', async () => { fs.readLocalFile.mockResolvedValueOnce(` diff --git a/lib/manager/helmv3/update.spec.ts b/lib/manager/helmv3/update.spec.ts index d157aeb208..e5526c8157 100644 --- a/lib/manager/helmv3/update.spec.ts +++ b/lib/manager/helmv3/update.spec.ts @@ -14,9 +14,8 @@ describe('manager/helmv3/update', () => { '0.0.2', 'patch' ); - // FIXME: explicit assert condition - expect(bumpedContent).toMatchSnapshot(); - expect(bumpedContent).not.toEqual(content); + const expected = content.replace('0.0.2', '0.0.3'); + expect(bumpedContent).toEqual(expected); }); it('no ops', () => { const { bumpedContent } = helmv3Updater.bumpPackageVersion( @@ -32,9 +31,8 @@ describe('manager/helmv3/update', () => { '0.0.1', 'minor' ); - // FIXME: explicit assert condition - expect(bumpedContent).toMatchSnapshot(); - expect(bumpedContent).not.toEqual(content); + const expected = content.replace('0.0.2', '0.1.0'); + expect(bumpedContent).toEqual(expected); }); it('returns content if bumping errors', () => { const { bumpedContent } = helmv3Updater.bumpPackageVersion( diff --git a/lib/manager/homebrew/__snapshots__/extract.spec.ts.snap b/lib/manager/homebrew/__snapshots__/extract.spec.ts.snap index 42123441fd..18cfba4a64 100644 --- a/lib/manager/homebrew/__snapshots__/extract.spec.ts.snap +++ b/lib/manager/homebrew/__snapshots__/extract.spec.ts.snap @@ -92,24 +92,6 @@ Object { } `; -exports[`manager/homebrew/extract extractPackageFile() skips if invalid url extension 1`] = ` -Object { - "deps": Array [ - Object { - "currentValue": "v0.8.2.not_tar.not_gz", - "datasource": "github-tags", - "depName": "bazelbuild/bazel-watcher", - "managerData": Object { - "ownerName": "bazelbuild", - "repoName": "bazel-watcher", - "sha256": "26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4", - "url": "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.not_tar.not_gz", - }, - }, - ], -} -`; - exports[`manager/homebrew/extract extractPackageFile() skips if invalid url protocol 1`] = ` Object { "deps": Array [ @@ -129,24 +111,6 @@ Object { } `; -exports[`manager/homebrew/extract extractPackageFile() skips if invalid url version 1`] = ` -Object { - "deps": Array [ - Object { - "currentValue": "vInvalid.version.2", - "datasource": "github-tags", - "depName": "bazelbuild/bazel-watcher", - "managerData": Object { - "ownerName": "bazelbuild", - "repoName": "bazel-watcher", - "sha256": "26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4", - "url": "https://github.com/bazelbuild/bazel-watcher/archive/vInvalid.version.2.tar.gz", - }, - }, - ], -} -`; - exports[`manager/homebrew/extract extractPackageFile() skips if sha256 field is invalid 1`] = ` Object { "deps": Array [ diff --git a/lib/manager/homebrew/extract.spec.ts b/lib/manager/homebrew/extract.spec.ts index e6a1be41ae..2ba5b5936c 100644 --- a/lib/manager/homebrew/extract.spec.ts +++ b/lib/manager/homebrew/extract.spec.ts @@ -88,32 +88,6 @@ describe('manager/homebrew/extract', () => { expect(res.deps[0].skipReason).toBe('unsupported-url'); expect(res).toMatchSnapshot(); }); - it('skips if invalid url extension', () => { - const content = ` - class Ibazel < Formula - desc 'IBazel is a tool for building Bazel targets when source files change.' - homepage 'https://github.com/bazelbuild/bazel-watcher' - url "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.not_tar.not_gz" - sha256 '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4' - end - `; - const res = extractPackageFile(content); - // FIXME: explicit assert condition - expect(res).toMatchSnapshot(); - }); - it('skips if invalid url version', () => { - const content = ` - class Ibazel < Formula - desc 'IBazel is a tool for building Bazel targets when source files change.' - homepage 'https://github.com/bazelbuild/bazel-watcher' - url "https://github.com/bazelbuild/bazel-watcher/archive/vInvalid.version.2.tar.gz" - sha256 '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4' - end - `; - const res = extractPackageFile(content); - // FIXME: explicit assert condition - expect(res).toMatchSnapshot(); - }); it('skips if invalid url protocol', () => { const content = ` class Ibazel < Formula @@ -124,8 +98,9 @@ describe('manager/homebrew/extract', () => { end `; const res = extractPackageFile(content); - // FIXME: explicit assert condition - expect(res).toMatchSnapshot(); + expect(res).toMatchSnapshot({ + deps: [{ depName: 'Ibazel', skipReason: 'unsupported-url' }], + }); }); it('skips if invalid url', () => { const content = ` @@ -137,8 +112,9 @@ describe('manager/homebrew/extract', () => { end `; const res = extractPackageFile(content); - // FIXME: explicit assert condition - expect(res).toMatchSnapshot(); + expect(res).toMatchSnapshot({ + deps: [{ depName: 'Ibazel', skipReason: 'unsupported-url' }], + }); }); it('skips if there is no sha256 field', () => { const content = ` diff --git a/lib/manager/html/extract.spec.ts b/lib/manager/html/extract.spec.ts index 673ab2caad..2fe766015b 100644 --- a/lib/manager/html/extract.spec.ts +++ b/lib/manager/html/extract.spec.ts @@ -6,8 +6,24 @@ const nothing = loadFixture(`nothing.html`); describe('manager/html/extract', () => { it('extractPackageFile', () => { - // FIXME: explicit assert condition - expect(extractPackageFile(sample)).toMatchSnapshot(); + expect(extractPackageFile(sample)).toMatchSnapshot({ + deps: [ + { depName: 'prop-types', currentValue: '15.6.1' }, + { depName: 'react', currentValue: '16.3.2' }, + { depName: 'react-dom', currentValue: '16.3.2' }, + { depName: 'react-transition-group', currentValue: '2.2.1' }, + { depName: 'popper.js', currentValue: '1.14.3' }, + { depName: 'react-popper', currentValue: '0.10.4' }, + { depName: 'reactstrap', currentValue: '7.1.0' }, + { depName: 'react-router', currentValue: '4.3.1' }, + { depName: 'react-markdown', currentValue: '4.0.6' }, + { + depName: 'axios', + currentValue: '0.18.0', + currentDigest: 'sha256-mpnrJ5DpEZZkwkE1ZgkEQQJW/46CSEh/STrZKOB/qoM=', + }, + ], + }); }); it('returns null', () => { expect(extractPackageFile(nothing)).toBeNull(); diff --git a/lib/manager/kustomize/extract.spec.ts b/lib/manager/kustomize/extract.spec.ts index afc8c93321..7fe27a2522 100644 --- a/lib/manager/kustomize/extract.spec.ts +++ b/lib/manager/kustomize/extract.spec.ts @@ -252,8 +252,15 @@ describe('manager/kustomize/extract', () => { expect(res.deps[1].depName).toEqual('fluxcd/flux'); }); it('extracts sha256 instead of tag', () => { - // FIXME: explicit assert condition - expect(extractPackageFile(sha)).toMatchSnapshot(); + expect(extractPackageFile(sha)).toMatchSnapshot({ + deps: [ + { + currentDigest: + 'sha256:b0cfe264cb1143c7c660ddfd5c482464997d62d6bc9f97f8fdf3deefce881a8c', + currentValue: undefined, + }, + ], + }); }); }); }); -- GitLab