From 4004f46c0b49c2ac3bee7dc54b5ebdcacea39f46 Mon Sep 17 00:00:00 2001
From: Michael Kriese <michael.kriese@visualon.de>
Date: Wed, 5 Feb 2020 01:14:31 +0100
Subject: [PATCH] refactor(test): move manager tests to lib (#5300)

---
 .eslintignore                                 |  7 ++--
 .prettierignore                               |  6 ++--
 .../manager/ansible/__fixtures__}/main1.yaml  |  0
 .../manager/ansible/__fixtures__}/main2.yaml  |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 {test => lib}/manager/ansible/extract.spec.ts |  6 ++--
 {test => lib}/manager/ansible/update.spec.ts  |  6 ++--
 .../manager/bazel/__fixtures__}/WORKSPACE1    |  0
 .../bazel/__fixtures__}/container_pull        |  0
 .../bazel/__fixtures__}/repositories.bzl      |  0
 .../bazel/__snapshots__/extract.spec.ts.snap  |  0
 .../bazel/__snapshots__/update.spec.ts.snap   |  0
 {test => lib}/manager/bazel/extract.spec.ts   |  6 ++--
 {test => lib}/manager/bazel/update.spec.ts    | 10 +++---
 .../buildkite/__fixtures__}/pipeline1.yml     |  0
 .../buildkite/__fixtures__}/pipeline2.yml     |  0
 .../buildkite/__fixtures__}/pipeline3.yml     |  0
 .../buildkite/__fixtures__}/pipeline4.yml     |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../__snapshots__/update.spec.ts.snap         |  0
 .../manager/buildkite/extract.spec.ts         | 10 +++---
 .../manager/buildkite/update.spec.ts          |  8 ++---
 .../bundler/__fixtures__}/Gemfile.gitlab-foss |  0
 .../__fixtures__}/Gemfile.gitlab-foss.lock    |  0
 .../bundler/__fixtures__}/Gemfile.mastodon    |  0
 .../__fixtures__}/Gemfile.mastodon.lock       |  0
 .../bundler/__fixtures__}/Gemfile.rails       |  0
 .../bundler/__fixtures__}/Gemfile.rails.lock  |  0
 .../bundler/__fixtures__}/Gemfile.rubyci      |  0
 .../bundler/__fixtures__}/Gemfile.rubyci.lock |  0
 .../Gemfile.sourceBlockWithNewLines           |  0
 .../Gemfile.sourceBlockWithNewLines.lock      |  0
 .../bundler/__fixtures__}/Gemfile.sourceGroup |  0
 .../bundler/__fixtures__}/Gemfile.webpacker   |  0
 .../__fixtures__}/Gemfile.webpacker.lock      |  0
 .../__snapshots__/artifacts.spec.ts.snap      |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../__snapshots__/gemfile.spec.ts.snap        |  0
 .../__snapshots__/locked-version.spec.ts.snap |  0
 .../manager/bundler/artifacts.spec.ts         | 24 +++++++-------
 {test => lib}/manager/bundler/extract.spec.ts | 32 +++++++++----------
 {test => lib}/manager/bundler/gemfile.spec.ts |  4 +--
 .../manager/bundler/locked-version.spec.ts    | 12 +++----
 {test => lib}/manager/bundler/range.spec.ts   |  2 +-
 {test => lib}/manager/bundler/update.spec.ts  |  4 +--
 .../manager/cargo/__fixtures__}/Cargo.1.toml  |  0
 .../manager/cargo/__fixtures__}/Cargo.2.toml  |  0
 .../manager/cargo/__fixtures__}/Cargo.3.toml  |  0
 .../manager/cargo/__fixtures__}/Cargo.4.toml  |  0
 .../manager/cargo/__fixtures__}/Cargo.5.toml  |  0
 .../__snapshots__/artifacts.spec.ts.snap      |  0
 .../cargo/__snapshots__/extract.spec.ts.snap  |  0
 .../cargo/__snapshots__/update.spec.ts.snap   |  0
 {test => lib}/manager/cargo/artifacts.spec.ts | 18 +++++------
 {test => lib}/manager/cargo/extract.spec.ts   | 12 +++----
 {test => lib}/manager/cargo/update.spec.ts    |  8 ++---
 .../manager/cdnurl/__fixtures__}/sample.txt   |  0
 .../cdnurl/__snapshots__/extract.spec.ts.snap |  0
 {test => lib}/manager/cdnurl/extract.spec.ts  |  4 +--
 {test => lib}/manager/cdnurl/update.spec.ts   |  7 ++--
 .../manager/circleci/__fixtures__}/config.yml |  0
 .../circleci/__fixtures__}/config2.yml        |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../manager/circleci/extract.spec.ts          |  6 ++--
 {test => lib}/manager/circleci/update.spec.ts |  6 ++--
 .../composer/__fixtures__}/composer1.json     |  0
 .../composer/__fixtures__}/composer2.json     |  0
 .../composer/__fixtures__}/composer3.json     |  0
 .../composer/__fixtures__}/composer4.json     |  0
 .../composer/__fixtures__}/composer5.json     |  0
 .../composer/__fixtures__}/composer5.lock     |  0
 .../__snapshots__/artifacts.spec.ts.snap      |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../manager/composer/artifacts.spec.ts        | 24 +++++++-------
 .../manager/composer/extract.spec.ts          | 16 +++++-----
 {test => lib}/manager/composer/range.spec.ts  |  4 +--
 .../manager/deps-edn/__fixtures__}/deps.edn   |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../manager/deps-edn/extract.spec.ts          |  4 +--
 {test => lib}/manager/deps-edn/update.spec.ts |  6 ++--
 .../__fixtures__}/docker-compose.1.yml        |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../manager/docker-compose/extract.spec.ts    |  4 +--
 .../manager/docker-compose/update.spec.ts     |  4 +--
 .../dockerfile/__fixtures__}/Dockerfile1      |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../__snapshots__/update.spec.ts.snap         |  0
 .../manager/dockerfile/extract.spec.ts        |  4 +--
 .../manager/dockerfile/update.spec.ts         |  2 +-
 .../manager/droneci/__fixtures__}/.drone.yml  |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 {test => lib}/manager/droneci/extract.spec.ts |  4 +--
 {test => lib}/manager/droneci/update.spec.ts  |  4 +--
 .../__fixtures__}/.gitmodules.1               |  0
 .../__fixtures__}/.gitmodules.2               |  0
 .../__fixtures__}/.gitmodules.3               |  0
 .../__fixtures__}/.gitmodules.4               |  0
 .../__snapshots__/artifact.spec.ts.snap       |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../manager/git-submodules/artifact.spec.ts   |  2 +-
 .../manager/git-submodules/extract.spec.ts    |  4 +--
 .../manager/git-submodules/update.spec.ts     |  2 +-
 .../__fixtures__}/main.workflow.1             |  0
 .../__fixtures__}/workflow.yml.1              |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../manager/github-actions/extract.spec.ts    |  6 ++--
 .../manager/github-actions/update.spec.ts     |  6 ++--
 .../__fixtures__}/gitlab-ci.yaml              |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../manager/gitlabci-include/extract.spec.ts  |  4 +--
 .../manager/gitlabci-include/update.spec.ts   |  4 +--
 .../gitlabci/__fixtures__}/gitlab-ci.1.yaml   |  0
 .../gitlabci/__fixtures__}/gitlab-ci.yaml     |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../manager/gitlabci/extract.spec.ts          |  6 ++--
 {test => lib}/manager/gitlabci/update.spec.ts |  4 +--
 .../manager/gomod/__fixtures__}/1/go.mod      |  0
 .../manager/gomod/__fixtures__}/2/go.mod      |  0
 .../__snapshots__/artifacts.spec.ts.snap      |  0
 .../gomod/__snapshots__/extract.spec.ts.snap  |  0
 .../gomod/__snapshots__/update.spec.ts.snap   |  0
 {test => lib}/manager/gomod/artifacts.spec.ts | 20 ++++++------
 {test => lib}/manager/gomod/extract.spec.ts   |  6 ++--
 {test => lib}/manager/gomod/update.spec.ts    |  6 ++--
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../__snapshots__/update.spec.ts.snap         |  0
 .../manager/gradle-wrapper/extract.spec.ts    |  2 +-
 .../manager/gradle-wrapper/update.spec.ts     |  6 ++--
 .../gradle/__snapshots__/index.spec.ts.snap   |  0
 .../manager/gradle/build-gradle.spec.ts       |  2 +-
 {test => lib}/manager/gradle/index.spec.ts    | 14 ++++----
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../__snapshots__/update.spec.ts.snap         |  0
 .../manager/helm-requirements/extract.spec.ts |  4 +--
 .../manager/helm-requirements/update.spec.ts  |  2 +-
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../__snapshots__/update.spec.ts.snap         |  0
 .../manager/helmfile/extract.spec.ts          |  2 +-
 {test => lib}/manager/helmfile/update.spec.ts |  2 +-
 .../manager/homebrew/__fixtures__}/aalib.rb   |  0
 .../manager/homebrew/__fixtures__}/aap.rb     |  0
 .../homebrew/__fixtures__}/acmetool.rb        |  0
 .../manager/homebrew/__fixtures__}/aide.rb    |  0
 .../manager/homebrew/__fixtures__}/ibazel.rb  |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../__snapshots__/update.spec.ts.snap         |  0
 .../manager/homebrew/extract.spec.ts          | 15 +++++----
 {test => lib}/manager/homebrew/update.spec.ts | 11 ++++---
 {test => lib}/manager/homebrew/util.spec.ts   |  2 +-
 {test => lib}/manager/index.spec.ts           |  2 +-
 .../__fixtures__}/array-syntax.yaml           |  0
 .../kubernetes/__fixtures__}/configmap.yaml   |  0
 .../kubernetes/__fixtures__}/gitlab-ci.yaml   |  0
 .../kubernetes/__fixtures__}/kubernetes.yaml  |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../__snapshots__/update.spec.ts.snap         |  0
 .../manager/kubernetes/extract.spec.ts        | 10 +++---
 .../manager/kubernetes/update.spec.ts         |  6 ++--
 .../leiningen/__fixtures__}/project.clj       |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../manager/leiningen/extract.spec.ts         | 10 ++----
 .../manager/leiningen/update.spec.ts          |  6 ++--
 {test => lib}/manager/manager-docs.spec.ts    |  0
 .../manager/maven/__fixtures__}/child.pom.xml |  0
 .../maven/__fixtures__}/grouping.pom.xml      |  0
 .../maven/__fixtures__}/minimum.pom.xml       |  0
 .../maven/__fixtures__}/parent.pom.xml        |  0
 .../maven/__fixtures__}/simple.pom.xml        |  0
 .../maven/__snapshots__/extract.spec.ts.snap  |  0
 .../maven/__snapshots__/index.spec.ts.snap    |  0
 {test => lib}/manager/maven/extract.spec.ts   |  6 ++--
 {test => lib}/manager/maven/index.spec.ts     | 22 +++++--------
 .../manager/meteor/__fixtures__}/package-1.js |  0
 .../manager/meteor/__fixtures__}/package-2.js |  0
 .../meteor/__snapshots__/extract.spec.ts.snap |  0
 .../meteor/__snapshots__/update.spec.ts.snap  |  0
 {test => lib}/manager/meteor/extract.spec.ts  |  4 +--
 {test => lib}/manager/meteor/update.spec.ts   |  4 +--
 .../manager/mix/__fixtures__}/mix.exs         |  0
 .../mix/__snapshots__/artifacts.spec.ts.snap  |  0
 .../mix/__snapshots__/extract.spec.ts.snap    |  0
 {test => lib}/manager/mix/artifacts.spec.ts   | 16 +++++-----
 {test => lib}/manager/mix/extract.spec.ts     |  4 +--
 {test => lib}/manager/mix/update.spec.ts      |  4 +--
 .../npm/__fixtures__}/inputs/01-glob.json     |  0
 .../manager/npm/__fixtures__}/inputs/01.json  |  0
 .../manager/npm/__fixtures__}/inputs/02.json  |  0
 .../npm/__fixtures__}/inputs/workspaces.json  |  0
 .../npm/__fixtures__}/invalid-name.json       |  0
 .../manager/npm/__fixtures__}/is-object.json  |  0
 .../npm/__fixtures__}/outputs/011.json        |  0
 .../npm/__fixtures__}/outputs/012.json        |  0
 .../npm/__fixtures__}/outputs/013.json        |  0
 .../npm/__snapshots__/update.spec.ts.snap     |  0
 .../extract/__snapshots__/index.spec.ts.snap  |  0
 .../locked-versions.spec.ts.snap              |  0
 .../__snapshots__/monorepo.spec.ts.snap       |  0
 .../extract/__snapshots__/npm.spec.ts.snap    |  0
 .../extract/__snapshots__/yarn.spec.ts.snap   |  0
 .../manager/npm/extract/index.spec.ts         |  8 ++---
 .../npm/extract/locked-versions.spec.ts       | 10 +++---
 .../manager/npm/extract/monorepo.spec.ts      |  2 +-
 {test => lib}/manager/npm/extract/npm.spec.ts |  4 +--
 .../manager/npm/extract/type.spec.ts          |  2 +-
 .../manager/npm/extract/yarn.spec.ts          |  4 +--
 {test => lib}/manager/npm/range.spec.ts       |  4 +--
 {test => lib}/manager/npm/update.spec.ts      |  6 ++--
 .../nuget/__snapshots__/extract.spec.ts.snap  |  0
 .../nuget/__snapshots__/update.spec.ts.snap   |  0
 {test => lib}/manager/nuget/extract.spec.ts   |  2 +-
 {test => lib}/manager/nuget/update.spec.ts    |  2 +-
 .../nvm/__snapshots__/extract.spec.ts.snap    |  0
 .../nvm/__snapshots__/update.spec.ts.snap     |  0
 {test => lib}/manager/nvm/extract.spec.ts     |  2 +-
 {test => lib}/manager/nvm/update.spec.ts      |  2 +-
 .../__fixtures__}/requirements1.txt           |  0
 .../__fixtures__}/requirements2.txt           |  0
 .../__fixtures__}/requirements3.txt           |  0
 .../__fixtures__}/requirements4.txt           |  0
 .../__fixtures__}/requirements5.txt           |  0
 .../__fixtures__}/requirements6.txt           |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../__snapshots__/update.spec.ts.snap         |  0
 .../manager/pip_requirements/extract.spec.ts  | 14 ++++----
 .../manager/pip_requirements/range.spec.ts    |  4 +--
 .../manager/pip_requirements/update.spec.ts   | 12 +++----
 .../pip_setup/__fixtures__}/setup-2.py        |  0
 .../manager/pip_setup/__fixtures__}/setup.py  |  0
 .../pip_setup/__fixtures__}/setup.py.json     |  0
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../__snapshots__/index.spec.ts.snap          |  2 +-
 .../manager/pip_setup/extract.spec.ts         | 10 +++---
 {test => lib}/manager/pip_setup/index.spec.ts | 18 +++++------
 .../manager/pipenv/__fixtures__}/Pipfile1     |  0
 .../manager/pipenv/__fixtures__}/Pipfile2     |  0
 .../manager/pipenv/__fixtures__}/Pipfile3     |  0
 .../manager/pipenv/__fixtures__}/Pipfile4     |  0
 .../manager/pipenv/__fixtures__}/Pipfile5     |  0
 .../__snapshots__/artifacts.spec.ts.snap      |  0
 .../pipenv/__snapshots__/extract.spec.ts.snap |  0
 .../pipenv/__snapshots__/update.spec.ts.snap  |  0
 .../manager/pipenv/artifacts.spec.ts          | 18 +++++------
 {test => lib}/manager/pipenv/extract.spec.ts  | 12 +++----
 {test => lib}/manager/pipenv/update.spec.ts   |  7 ++--
 .../poetry/__fixtures__}/pyproject.1.toml     |  0
 .../poetry/__fixtures__}/pyproject.2.toml     |  0
 .../poetry/__fixtures__}/pyproject.3.toml     |  0
 .../poetry/__fixtures__}/pyproject.4.toml     |  0
 .../poetry/__fixtures__}/pyproject.5.toml     |  0
 .../poetry/__fixtures__}/pyproject.6.toml     |  0
 .../poetry/__fixtures__}/pyproject.7.toml     |  0
 .../poetry/__fixtures__}/pyproject.8.toml     |  0
 .../__snapshots__/artifacts.spec.ts.snap      |  0
 .../poetry/__snapshots__/extract.spec.ts.snap |  0
 .../poetry/__snapshots__/update.spec.ts.snap  |  0
 .../manager/poetry/artifacts.spec.ts          | 16 +++++-----
 {test => lib}/manager/poetry/extract.spec.ts  | 18 +++++------
 {test => lib}/manager/poetry/update.spec.ts   |  6 ++--
 .../manager/pub/__fixtures__}/extract.yaml    |  0
 .../manager/pub/__fixtures__}/update.yaml     |  0
 .../pub/__snapshots__/extract.spec.ts.snap    |  0
 .../pub/__snapshots__/update.spec.ts.snap     |  0
 {test => lib}/manager/pub/extract.spec.ts     |  6 ++--
 {test => lib}/manager/pub/update.spec.ts      |  4 +--
 {test => lib}/manager/range.spec.ts           |  4 +--
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../__snapshots__/update.spec.ts.snap         |  0
 .../manager/ruby-version/extract.spec.ts      |  2 +-
 .../manager/ruby-version/update.spec.ts       |  2 +-
 .../sbt/__fixtures__}/dependency-file.scala   |  0
 .../__fixtures__}/missing-scala-version.sbt   |  0
 .../manager/sbt/__fixtures__}/sample.sbt      |  0
 .../__fixtures__}/scala-version-variable.sbt  |  0
 .../sbt/__snapshots__/extract.spec.ts.snap    |  0
 {test => lib}/manager/sbt/extract.spec.ts     | 13 +++++---
 {test => lib}/manager/sbt/update.spec.ts      |  8 ++---
 .../swift/__fixtures__}/SamplePackage.swift   |  0
 .../swift/__snapshots__/index.spec.ts.snap    |  0
 {test => lib}/manager/swift/index.spec.ts     |  6 ++--
 .../__snapshots__/extract.spec.ts.snap        |  0
 .../manager/terraform/extract.spec.ts         |  2 +-
 .../manager/terraform/update.spec.ts          |  2 +-
 .../manager/travis/__fixtures__}/invalid.yml  |  0
 .../manager/travis/__fixtures__}/travis.yml   |  0
 .../travis/__snapshots__/extract.spec.ts.snap |  0
 .../travis/__snapshots__/package.spec.ts.snap |  0
 .../travis/__snapshots__/update.spec.ts.snap  |  0
 {test => lib}/manager/travis/extract.spec.ts  |  4 +--
 {test => lib}/manager/travis/package.spec.ts  |  8 ++---
 {test => lib}/manager/travis/update.spec.ts   |  4 +--
 package.json                                  |  5 +--
 test/static-files.spec.ts                     |  8 +++--
 tsconfig.app.json                             |  3 +-
 293 files changed, 387 insertions(+), 379 deletions(-)
 rename {test/manager/ansible/_fixtures => lib/manager/ansible/__fixtures__}/main1.yaml (100%)
 rename {test/manager/ansible/_fixtures => lib/manager/ansible/__fixtures__}/main2.yaml (100%)
 rename {test => lib}/manager/ansible/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/ansible/extract.spec.ts (82%)
 rename {test => lib}/manager/ansible/update.spec.ts (91%)
 rename {test/manager/bazel/_fixtures => lib/manager/bazel/__fixtures__}/WORKSPACE1 (100%)
 rename {test/manager/bazel/_fixtures => lib/manager/bazel/__fixtures__}/container_pull (100%)
 rename {test/manager/bazel/_fixtures => lib/manager/bazel/__fixtures__}/repositories.bzl (100%)
 rename {test => lib}/manager/bazel/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/bazel/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/bazel/extract.spec.ts (94%)
 rename {test => lib}/manager/bazel/update.spec.ts (96%)
 rename {test/manager/buildkite/_fixtures => lib/manager/buildkite/__fixtures__}/pipeline1.yml (100%)
 rename {test/manager/buildkite/_fixtures => lib/manager/buildkite/__fixtures__}/pipeline2.yml (100%)
 rename {test/manager/buildkite/_fixtures => lib/manager/buildkite/__fixtures__}/pipeline3.yml (100%)
 rename {test/manager/buildkite/_fixtures => lib/manager/buildkite/__fixtures__}/pipeline4.yml (100%)
 rename {test => lib}/manager/buildkite/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/buildkite/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/buildkite/extract.spec.ts (80%)
 rename {test => lib}/manager/buildkite/update.spec.ts (89%)
 rename {test/manager/bundler/_fixtures => lib/manager/bundler/__fixtures__}/Gemfile.gitlab-foss (100%)
 rename {test/manager/bundler/_fixtures => lib/manager/bundler/__fixtures__}/Gemfile.gitlab-foss.lock (100%)
 rename {test/manager/bundler/_fixtures => lib/manager/bundler/__fixtures__}/Gemfile.mastodon (100%)
 rename {test/manager/bundler/_fixtures => lib/manager/bundler/__fixtures__}/Gemfile.mastodon.lock (100%)
 rename {test/manager/bundler/_fixtures => lib/manager/bundler/__fixtures__}/Gemfile.rails (100%)
 rename {test/manager/bundler/_fixtures => lib/manager/bundler/__fixtures__}/Gemfile.rails.lock (100%)
 rename {test/manager/bundler/_fixtures => lib/manager/bundler/__fixtures__}/Gemfile.rubyci (100%)
 rename {test/manager/bundler/_fixtures => lib/manager/bundler/__fixtures__}/Gemfile.rubyci.lock (100%)
 rename {test/manager/bundler/_fixtures => lib/manager/bundler/__fixtures__}/Gemfile.sourceBlockWithNewLines (100%)
 rename {test/manager/bundler/_fixtures => lib/manager/bundler/__fixtures__}/Gemfile.sourceBlockWithNewLines.lock (100%)
 rename {test/manager/bundler/_fixtures => lib/manager/bundler/__fixtures__}/Gemfile.sourceGroup (100%)
 rename {test/manager/bundler/_fixtures => lib/manager/bundler/__fixtures__}/Gemfile.webpacker (100%)
 rename {test/manager/bundler/_fixtures => lib/manager/bundler/__fixtures__}/Gemfile.webpacker.lock (100%)
 rename {test => lib}/manager/bundler/__snapshots__/artifacts.spec.ts.snap (100%)
 rename {test => lib}/manager/bundler/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/bundler/__snapshots__/gemfile.spec.ts.snap (100%)
 rename {test => lib}/manager/bundler/__snapshots__/locked-version.spec.ts.snap (100%)
 rename {test => lib}/manager/bundler/artifacts.spec.ts (91%)
 rename {test => lib}/manager/bundler/extract.spec.ts (82%)
 rename {test => lib}/manager/bundler/gemfile.spec.ts (65%)
 rename {test => lib}/manager/bundler/locked-version.spec.ts (76%)
 rename {test => lib}/manager/bundler/range.spec.ts (75%)
 rename {test => lib}/manager/bundler/update.spec.ts (93%)
 rename {test/manager/cargo/_fixtures => lib/manager/cargo/__fixtures__}/Cargo.1.toml (100%)
 rename {test/manager/cargo/_fixtures => lib/manager/cargo/__fixtures__}/Cargo.2.toml (100%)
 rename {test/manager/cargo/_fixtures => lib/manager/cargo/__fixtures__}/Cargo.3.toml (100%)
 rename {test/manager/cargo/_fixtures => lib/manager/cargo/__fixtures__}/Cargo.4.toml (100%)
 rename {test/manager/cargo/_fixtures => lib/manager/cargo/__fixtures__}/Cargo.5.toml (100%)
 rename {test => lib}/manager/cargo/__snapshots__/artifacts.spec.ts.snap (100%)
 rename {test => lib}/manager/cargo/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/cargo/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/cargo/artifacts.spec.ts (86%)
 rename {test => lib}/manager/cargo/extract.spec.ts (86%)
 rename {test => lib}/manager/cargo/update.spec.ts (96%)
 rename {test/manager/cdnurl/_fixtures => lib/manager/cdnurl/__fixtures__}/sample.txt (100%)
 rename {test => lib}/manager/cdnurl/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/cdnurl/extract.spec.ts (69%)
 rename {test => lib}/manager/cdnurl/update.spec.ts (91%)
 rename {test/manager/circleci/_fixtures => lib/manager/circleci/__fixtures__}/config.yml (100%)
 rename {test/manager/circleci/_fixtures => lib/manager/circleci/__fixtures__}/config2.yml (100%)
 rename {test => lib}/manager/circleci/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/circleci/extract.spec.ts (79%)
 rename {test => lib}/manager/circleci/update.spec.ts (94%)
 rename {test/manager/composer/_fixtures => lib/manager/composer/__fixtures__}/composer1.json (100%)
 rename {test/manager/composer/_fixtures => lib/manager/composer/__fixtures__}/composer2.json (100%)
 rename {test/manager/composer/_fixtures => lib/manager/composer/__fixtures__}/composer3.json (100%)
 rename {test/manager/composer/_fixtures => lib/manager/composer/__fixtures__}/composer4.json (100%)
 rename {test/manager/composer/_fixtures => lib/manager/composer/__fixtures__}/composer5.json (100%)
 rename {test/manager/composer/_fixtures => lib/manager/composer/__fixtures__}/composer5.lock (100%)
 rename {test => lib}/manager/composer/__snapshots__/artifacts.spec.ts.snap (100%)
 rename {test => lib}/manager/composer/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/composer/artifacts.spec.ts (90%)
 rename {test => lib}/manager/composer/extract.spec.ts (82%)
 rename {test => lib}/manager/composer/range.spec.ts (91%)
 rename {test/manager/deps-edn/_fixtures => lib/manager/deps-edn/__fixtures__}/deps.edn (100%)
 rename {test => lib}/manager/deps-edn/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/deps-edn/extract.spec.ts (71%)
 rename {test => lib}/manager/deps-edn/update.spec.ts (76%)
 rename {test/manager/docker-compose/_fixtures => lib/manager/docker-compose/__fixtures__}/docker-compose.1.yml (100%)
 rename {test => lib}/manager/docker-compose/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/docker-compose/extract.spec.ts (80%)
 rename {test => lib}/manager/docker-compose/update.spec.ts (89%)
 rename {test/manager/dockerfile/_fixtures => lib/manager/dockerfile/__fixtures__}/Dockerfile1 (100%)
 rename {test => lib}/manager/dockerfile/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/dockerfile/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/dockerfile/extract.spec.ts (97%)
 rename {test => lib}/manager/dockerfile/update.spec.ts (98%)
 rename {test/manager/droneci/_fixtures => lib/manager/droneci/__fixtures__}/.drone.yml (100%)
 rename {test => lib}/manager/droneci/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/droneci/extract.spec.ts (79%)
 rename {test => lib}/manager/droneci/update.spec.ts (92%)
 rename {test/manager/git-submodules/_fixtures => lib/manager/git-submodules/__fixtures__}/.gitmodules.1 (100%)
 rename {test/manager/git-submodules/_fixtures => lib/manager/git-submodules/__fixtures__}/.gitmodules.2 (100%)
 rename {test/manager/git-submodules/_fixtures => lib/manager/git-submodules/__fixtures__}/.gitmodules.3 (100%)
 rename {test/manager/git-submodules/_fixtures => lib/manager/git-submodules/__fixtures__}/.gitmodules.4 (100%)
 rename {test => lib}/manager/git-submodules/__snapshots__/artifact.spec.ts.snap (100%)
 rename {test => lib}/manager/git-submodules/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/git-submodules/artifact.spec.ts (82%)
 rename {test => lib}/manager/git-submodules/extract.spec.ts (92%)
 rename {test => lib}/manager/git-submodules/update.spec.ts (91%)
 rename {test/manager/github-actions/_fixtures => lib/manager/github-actions/__fixtures__}/main.workflow.1 (100%)
 rename {test/manager/github-actions/_fixtures => lib/manager/github-actions/__fixtures__}/workflow.yml.1 (100%)
 rename {test => lib}/manager/github-actions/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/github-actions/extract.spec.ts (79%)
 rename {test => lib}/manager/github-actions/update.spec.ts (91%)
 rename {test/manager/gitlabci-include/_fixtures => lib/manager/gitlabci-include/__fixtures__}/gitlab-ci.yaml (100%)
 rename {test => lib}/manager/gitlabci-include/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/gitlabci-include/extract.spec.ts (86%)
 rename {test => lib}/manager/gitlabci-include/update.spec.ts (86%)
 rename {test/manager/gitlabci/_fixtures => lib/manager/gitlabci/__fixtures__}/gitlab-ci.1.yaml (100%)
 rename {test/manager/gitlabci/_fixtures => lib/manager/gitlabci/__fixtures__}/gitlab-ci.yaml (100%)
 rename {test => lib}/manager/gitlabci/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/gitlabci/extract.spec.ts (79%)
 rename {test => lib}/manager/gitlabci/update.spec.ts (96%)
 rename {test/manager/gomod/_fixtures => lib/manager/gomod/__fixtures__}/1/go.mod (100%)
 rename {test/manager/gomod/_fixtures => lib/manager/gomod/__fixtures__}/2/go.mod (100%)
 rename {test => lib}/manager/gomod/__snapshots__/artifacts.spec.ts.snap (100%)
 rename {test => lib}/manager/gomod/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/gomod/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/gomod/artifacts.spec.ts (91%)
 rename {test => lib}/manager/gomod/extract.spec.ts (77%)
 rename {test => lib}/manager/gomod/update.spec.ts (97%)
 rename {test => lib}/manager/gradle-wrapper/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/gradle-wrapper/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/gradle-wrapper/extract.spec.ts (90%)
 rename {test => lib}/manager/gradle-wrapper/update.spec.ts (96%)
 rename {test => lib}/manager/gradle/__snapshots__/index.spec.ts.snap (100%)
 rename {test => lib}/manager/gradle/build-gradle.spec.ts (99%)
 rename {test => lib}/manager/gradle/index.spec.ts (96%)
 rename {test => lib}/manager/helm-requirements/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/helm-requirements/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/helm-requirements/extract.spec.ts (97%)
 rename {test => lib}/manager/helm-requirements/update.spec.ts (97%)
 rename {test => lib}/manager/helmfile/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/helmfile/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/helmfile/extract.spec.ts (98%)
 rename {test => lib}/manager/helmfile/update.spec.ts (98%)
 rename {test/manager/homebrew/_fixtures => lib/manager/homebrew/__fixtures__}/aalib.rb (100%)
 rename {test/manager/homebrew/_fixtures => lib/manager/homebrew/__fixtures__}/aap.rb (100%)
 rename {test/manager/homebrew/_fixtures => lib/manager/homebrew/__fixtures__}/acmetool.rb (100%)
 rename {test/manager/homebrew/_fixtures => lib/manager/homebrew/__fixtures__}/aide.rb (100%)
 rename {test/manager/homebrew/_fixtures => lib/manager/homebrew/__fixtures__}/ibazel.rb (100%)
 rename {test => lib}/manager/homebrew/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/homebrew/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/homebrew/extract.spec.ts (95%)
 rename {test => lib}/manager/homebrew/update.spec.ts (97%)
 rename {test => lib}/manager/homebrew/util.spec.ts (82%)
 rename {test => lib}/manager/index.spec.ts (95%)
 rename {test/manager/kubernetes/_fixtures => lib/manager/kubernetes/__fixtures__}/array-syntax.yaml (100%)
 rename {test/manager/kubernetes/_fixtures => lib/manager/kubernetes/__fixtures__}/configmap.yaml (100%)
 rename {test/manager/kubernetes/_fixtures => lib/manager/kubernetes/__fixtures__}/gitlab-ci.yaml (100%)
 rename {test/manager/kubernetes/_fixtures => lib/manager/kubernetes/__fixtures__}/kubernetes.yaml (100%)
 rename {test => lib}/manager/kubernetes/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/kubernetes/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/kubernetes/extract.spec.ts (77%)
 rename {test => lib}/manager/kubernetes/update.spec.ts (89%)
 rename {test/manager/leiningen/_fixtures => lib/manager/leiningen/__fixtures__}/project.clj (100%)
 rename {test => lib}/manager/leiningen/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/leiningen/extract.spec.ts (85%)
 rename {test => lib}/manager/leiningen/update.spec.ts (76%)
 rename {test => lib}/manager/manager-docs.spec.ts (100%)
 rename {test/manager/maven/_fixtures => lib/manager/maven/__fixtures__}/child.pom.xml (100%)
 rename {test/manager/maven/_fixtures => lib/manager/maven/__fixtures__}/grouping.pom.xml (100%)
 rename {test/manager/maven/_fixtures => lib/manager/maven/__fixtures__}/minimum.pom.xml (100%)
 rename {test/manager/maven/_fixtures => lib/manager/maven/__fixtures__}/parent.pom.xml (100%)
 rename {test/manager/maven/_fixtures => lib/manager/maven/__fixtures__}/simple.pom.xml (100%)
 rename {test => lib}/manager/maven/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/maven/__snapshots__/index.spec.ts.snap (100%)
 rename {test => lib}/manager/maven/extract.spec.ts (83%)
 rename {test => lib}/manager/maven/index.spec.ts (92%)
 rename {test/manager/meteor/_fixtures => lib/manager/meteor/__fixtures__}/package-1.js (100%)
 rename {test/manager/meteor/_fixtures => lib/manager/meteor/__fixtures__}/package-2.js (100%)
 rename {test => lib}/manager/meteor/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/meteor/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/meteor/extract.spec.ts (79%)
 rename {test => lib}/manager/meteor/update.spec.ts (89%)
 rename {test/manager/mix/_fixtures => lib/manager/mix/__fixtures__}/mix.exs (100%)
 rename {test => lib}/manager/mix/__snapshots__/artifacts.spec.ts.snap (100%)
 rename {test => lib}/manager/mix/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/mix/artifacts.spec.ts (88%)
 rename {test => lib}/manager/mix/extract.spec.ts (80%)
 rename {test => lib}/manager/mix/update.spec.ts (92%)
 rename {test/manager/npm/_fixtures => lib/manager/npm/__fixtures__}/inputs/01-glob.json (100%)
 rename {test/manager/npm/_fixtures => lib/manager/npm/__fixtures__}/inputs/01.json (100%)
 rename {test/manager/npm/_fixtures => lib/manager/npm/__fixtures__}/inputs/02.json (100%)
 rename {test/manager/npm/_fixtures => lib/manager/npm/__fixtures__}/inputs/workspaces.json (100%)
 rename {test/manager/npm/_fixtures => lib/manager/npm/__fixtures__}/invalid-name.json (100%)
 rename {test/manager/npm/_fixtures => lib/manager/npm/__fixtures__}/is-object.json (100%)
 rename {test/manager/npm/_fixtures => lib/manager/npm/__fixtures__}/outputs/011.json (100%)
 rename {test/manager/npm/_fixtures => lib/manager/npm/__fixtures__}/outputs/012.json (100%)
 rename {test/manager/npm/_fixtures => lib/manager/npm/__fixtures__}/outputs/013.json (100%)
 rename {test => lib}/manager/npm/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/npm/extract/__snapshots__/index.spec.ts.snap (100%)
 rename {test => lib}/manager/npm/extract/__snapshots__/locked-versions.spec.ts.snap (100%)
 rename {test => lib}/manager/npm/extract/__snapshots__/monorepo.spec.ts.snap (100%)
 rename {test => lib}/manager/npm/extract/__snapshots__/npm.spec.ts.snap (100%)
 rename {test => lib}/manager/npm/extract/__snapshots__/yarn.spec.ts.snap (100%)
 rename {test => lib}/manager/npm/extract/index.spec.ts (97%)
 rename {test => lib}/manager/npm/extract/locked-versions.spec.ts (84%)
 rename {test => lib}/manager/npm/extract/monorepo.spec.ts (96%)
 rename {test => lib}/manager/npm/extract/npm.spec.ts (87%)
 rename {test => lib}/manager/npm/extract/type.spec.ts (87%)
 rename {test => lib}/manager/npm/extract/yarn.spec.ts (84%)
 rename {test => lib}/manager/npm/range.spec.ts (92%)
 rename {test => lib}/manager/npm/update.spec.ts (97%)
 rename {test => lib}/manager/nuget/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/nuget/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/nuget/extract.spec.ts (88%)
 rename {test => lib}/manager/nuget/update.spec.ts (94%)
 rename {test => lib}/manager/nvm/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/nvm/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/nvm/extract.spec.ts (87%)
 rename {test => lib}/manager/nvm/update.spec.ts (80%)
 rename {test/manager/pip_requirements/_fixtures => lib/manager/pip_requirements/__fixtures__}/requirements1.txt (100%)
 rename {test/manager/pip_requirements/_fixtures => lib/manager/pip_requirements/__fixtures__}/requirements2.txt (100%)
 rename {test/manager/pip_requirements/_fixtures => lib/manager/pip_requirements/__fixtures__}/requirements3.txt (100%)
 rename {test/manager/pip_requirements/_fixtures => lib/manager/pip_requirements/__fixtures__}/requirements4.txt (100%)
 rename {test/manager/pip_requirements/_fixtures => lib/manager/pip_requirements/__fixtures__}/requirements5.txt (100%)
 rename {test/manager/pip_requirements/_fixtures => lib/manager/pip_requirements/__fixtures__}/requirements6.txt (100%)
 rename {test => lib}/manager/pip_requirements/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/pip_requirements/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/pip_requirements/extract.spec.ts (86%)
 rename {test => lib}/manager/pip_requirements/range.spec.ts (72%)
 rename {test => lib}/manager/pip_requirements/update.spec.ts (88%)
 rename {test/manager/pip_setup/_fixtures => lib/manager/pip_setup/__fixtures__}/setup-2.py (100%)
 rename {test/manager/pip_setup/_fixtures => lib/manager/pip_setup/__fixtures__}/setup.py (100%)
 rename {test/manager/pip_setup/_fixtures => lib/manager/pip_setup/__fixtures__}/setup.py.json (100%)
 rename {test => lib}/manager/pip_setup/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/pip_setup/__snapshots__/index.spec.ts.snap (99%)
 rename {test => lib}/manager/pip_setup/extract.spec.ts (88%)
 rename {test => lib}/manager/pip_setup/index.spec.ts (87%)
 rename {test/manager/pipenv/_fixtures => lib/manager/pipenv/__fixtures__}/Pipfile1 (100%)
 rename {test/manager/pipenv/_fixtures => lib/manager/pipenv/__fixtures__}/Pipfile2 (100%)
 rename {test/manager/pipenv/_fixtures => lib/manager/pipenv/__fixtures__}/Pipfile3 (100%)
 rename {test/manager/pipenv/_fixtures => lib/manager/pipenv/__fixtures__}/Pipfile4 (100%)
 rename {test/manager/pipenv/_fixtures => lib/manager/pipenv/__fixtures__}/Pipfile5 (100%)
 rename {test => lib}/manager/pipenv/__snapshots__/artifacts.spec.ts.snap (100%)
 rename {test => lib}/manager/pipenv/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/pipenv/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/pipenv/artifacts.spec.ts (85%)
 rename {test => lib}/manager/pipenv/extract.spec.ts (91%)
 rename {test => lib}/manager/pipenv/update.spec.ts (91%)
 rename {test/manager/poetry/_fixtures => lib/manager/poetry/__fixtures__}/pyproject.1.toml (100%)
 rename {test/manager/poetry/_fixtures => lib/manager/poetry/__fixtures__}/pyproject.2.toml (100%)
 rename {test/manager/poetry/_fixtures => lib/manager/poetry/__fixtures__}/pyproject.3.toml (100%)
 rename {test/manager/poetry/_fixtures => lib/manager/poetry/__fixtures__}/pyproject.4.toml (100%)
 rename {test/manager/poetry/_fixtures => lib/manager/poetry/__fixtures__}/pyproject.5.toml (100%)
 rename {test/manager/poetry/_fixtures => lib/manager/poetry/__fixtures__}/pyproject.6.toml (100%)
 rename {test/manager/poetry/_fixtures => lib/manager/poetry/__fixtures__}/pyproject.7.toml (100%)
 rename {test/manager/poetry/_fixtures => lib/manager/poetry/__fixtures__}/pyproject.8.toml (100%)
 rename {test => lib}/manager/poetry/__snapshots__/artifacts.spec.ts.snap (100%)
 rename {test => lib}/manager/poetry/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/poetry/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/poetry/artifacts.spec.ts (87%)
 rename {test => lib}/manager/poetry/extract.spec.ts (89%)
 rename {test => lib}/manager/poetry/update.spec.ts (96%)
 rename {test/manager/pub/_fixtures => lib/manager/pub/__fixtures__}/extract.yaml (100%)
 rename {test/manager/pub/_fixtures => lib/manager/pub/__fixtures__}/update.yaml (100%)
 rename {test => lib}/manager/pub/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/pub/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/pub/extract.spec.ts (82%)
 rename {test => lib}/manager/pub/update.spec.ts (94%)
 rename {test => lib}/manager/range.spec.ts (89%)
 rename {test => lib}/manager/ruby-version/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/ruby-version/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/ruby-version/extract.spec.ts (86%)
 rename {test => lib}/manager/ruby-version/update.spec.ts (78%)
 rename {test/manager/sbt/_fixtures => lib/manager/sbt/__fixtures__}/dependency-file.scala (100%)
 rename {test/manager/sbt/_fixtures => lib/manager/sbt/__fixtures__}/missing-scala-version.sbt (100%)
 rename {test/manager/sbt/_fixtures => lib/manager/sbt/__fixtures__}/sample.sbt (100%)
 rename {test/manager/sbt/_fixtures => lib/manager/sbt/__fixtures__}/scala-version-variable.sbt (100%)
 rename {test => lib}/manager/sbt/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/sbt/extract.spec.ts (84%)
 rename {test => lib}/manager/sbt/update.spec.ts (85%)
 rename {test/manager/swift/_fixtures => lib/manager/swift/__fixtures__}/SamplePackage.swift (100%)
 rename {test => lib}/manager/swift/__snapshots__/index.spec.ts.snap (100%)
 rename {test => lib}/manager/swift/index.spec.ts (97%)
 rename {test => lib}/manager/terraform/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/terraform/extract.spec.ts (97%)
 rename {test => lib}/manager/terraform/update.spec.ts (98%)
 rename {test/manager/travis/_fixtures => lib/manager/travis/__fixtures__}/invalid.yml (100%)
 rename {test/manager/travis/_fixtures => lib/manager/travis/__fixtures__}/travis.yml (100%)
 rename {test => lib}/manager/travis/__snapshots__/extract.spec.ts.snap (100%)
 rename {test => lib}/manager/travis/__snapshots__/package.spec.ts.snap (100%)
 rename {test => lib}/manager/travis/__snapshots__/update.spec.ts.snap (100%)
 rename {test => lib}/manager/travis/extract.spec.ts (84%)
 rename {test => lib}/manager/travis/package.spec.ts (87%)
 rename {test => lib}/manager/travis/update.spec.ts (91%)

diff --git a/.eslintignore b/.eslintignore
index 0434a7df0d..fe9c21c4a5 100644
--- a/.eslintignore
+++ b/.eslintignore
@@ -6,7 +6,8 @@ dist
 coverage
 
 # don't lint test stuff
-test/**/**/_fixtures
-lib/types/**/*.d.ts
-**/__mocks__/**/*.ts
+**/__fixtures__/**
+**/_fixtures/**
+**/__mocks__/**
+**/*.d.ts
 /config.js
diff --git a/.prettierignore b/.prettierignore
index 4a209236dc..03c406723e 100644
--- a/.prettierignore
+++ b/.prettierignore
@@ -1,4 +1,4 @@
-# It would be nice to remove this file and use .gitignore instead however we need to add package.json and _fixtures
+# It would be nice to remove this file and use .gitignore instead however we need to add package.json and __fixtures__
 
 /node_modules
 /config.js
@@ -9,5 +9,7 @@
 .cache
 /*.log
 package.json
-test/**/**/_fixtures
+**/__fixtures__/
+**/_fixtures/
+**/__mocks__/
 bin/yarn*
diff --git a/test/manager/ansible/_fixtures/main1.yaml b/lib/manager/ansible/__fixtures__/main1.yaml
similarity index 100%
rename from test/manager/ansible/_fixtures/main1.yaml
rename to lib/manager/ansible/__fixtures__/main1.yaml
diff --git a/test/manager/ansible/_fixtures/main2.yaml b/lib/manager/ansible/__fixtures__/main2.yaml
similarity index 100%
rename from test/manager/ansible/_fixtures/main2.yaml
rename to lib/manager/ansible/__fixtures__/main2.yaml
diff --git a/test/manager/ansible/__snapshots__/extract.spec.ts.snap b/lib/manager/ansible/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/ansible/__snapshots__/extract.spec.ts.snap
rename to lib/manager/ansible/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/ansible/extract.spec.ts b/lib/manager/ansible/extract.spec.ts
similarity index 82%
rename from test/manager/ansible/extract.spec.ts
rename to lib/manager/ansible/extract.spec.ts
index 832a02c757..a6728e1234 100644
--- a/test/manager/ansible/extract.spec.ts
+++ b/lib/manager/ansible/extract.spec.ts
@@ -1,12 +1,12 @@
 import { readFileSync } from 'fs';
-import extractPackageFile from '../../../lib/manager/ansible/extract';
+import extractPackageFile from './extract';
 
 const yamlFile1 = readFileSync(
-  'test/manager/ansible/_fixtures/main1.yaml',
+  'lib/manager/ansible/__fixtures__/main1.yaml',
   'utf8'
 );
 const yamlFile2 = readFileSync(
-  'test/manager/ansible/_fixtures/main2.yaml',
+  'lib/manager/ansible/__fixtures__/main2.yaml',
   'utf8'
 );
 
diff --git a/test/manager/ansible/update.spec.ts b/lib/manager/ansible/update.spec.ts
similarity index 91%
rename from test/manager/ansible/update.spec.ts
rename to lib/manager/ansible/update.spec.ts
index 44a444ed46..a03c1cf416 100644
--- a/test/manager/ansible/update.spec.ts
+++ b/lib/manager/ansible/update.spec.ts
@@ -1,12 +1,12 @@
 import { readFileSync } from 'fs';
-import updateDependency from '../../../lib/manager/ansible/update';
+import updateDependency from './update';
 
 const yamlFile1 = readFileSync(
-  'test/manager/ansible/_fixtures/main1.yaml',
+  'lib/manager/ansible/__fixtures__/main1.yaml',
   'utf8'
 );
 const yamlFile2 = readFileSync(
-  'test/manager/ansible/_fixtures/main2.yaml',
+  'lib/manager/ansible/__fixtures__/main2.yaml',
   'utf8'
 );
 
diff --git a/test/manager/bazel/_fixtures/WORKSPACE1 b/lib/manager/bazel/__fixtures__/WORKSPACE1
similarity index 100%
rename from test/manager/bazel/_fixtures/WORKSPACE1
rename to lib/manager/bazel/__fixtures__/WORKSPACE1
diff --git a/test/manager/bazel/_fixtures/container_pull b/lib/manager/bazel/__fixtures__/container_pull
similarity index 100%
rename from test/manager/bazel/_fixtures/container_pull
rename to lib/manager/bazel/__fixtures__/container_pull
diff --git a/test/manager/bazel/_fixtures/repositories.bzl b/lib/manager/bazel/__fixtures__/repositories.bzl
similarity index 100%
rename from test/manager/bazel/_fixtures/repositories.bzl
rename to lib/manager/bazel/__fixtures__/repositories.bzl
diff --git a/test/manager/bazel/__snapshots__/extract.spec.ts.snap b/lib/manager/bazel/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/bazel/__snapshots__/extract.spec.ts.snap
rename to lib/manager/bazel/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/bazel/__snapshots__/update.spec.ts.snap b/lib/manager/bazel/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/bazel/__snapshots__/update.spec.ts.snap
rename to lib/manager/bazel/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/bazel/extract.spec.ts b/lib/manager/bazel/extract.spec.ts
similarity index 94%
rename from test/manager/bazel/extract.spec.ts
rename to lib/manager/bazel/extract.spec.ts
index 4844a4835b..472ee68340 100644
--- a/test/manager/bazel/extract.spec.ts
+++ b/lib/manager/bazel/extract.spec.ts
@@ -1,13 +1,13 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/bazel/extract';
+import { extractPackageFile } from './extract';
 
 const workspaceFile = readFileSync(
-  'test/manager/bazel/_fixtures/WORKSPACE1',
+  'lib/manager/bazel/__fixtures__/WORKSPACE1',
   'utf8'
 );
 
 const fileWithBzlExtension = readFileSync(
-  'test/manager/bazel/_fixtures/repositories.bzl',
+  'lib/manager/bazel/__fixtures__/repositories.bzl',
   'utf8'
 );
 
diff --git a/test/manager/bazel/update.spec.ts b/lib/manager/bazel/update.spec.ts
similarity index 96%
rename from test/manager/bazel/update.spec.ts
rename to lib/manager/bazel/update.spec.ts
index ab7ec4c0e6..400c43eb4b 100644
--- a/test/manager/bazel/update.spec.ts
+++ b/lib/manager/bazel/update.spec.ts
@@ -1,25 +1,25 @@
 import { readFileSync } from 'fs';
 import { fromStream as _fromStream } from 'hasha';
 import { resolve } from 'path';
-import { updateDependency } from '../../../lib/manager/bazel/update';
+import { updateDependency } from './update';
 
 jest.mock('hasha');
-jest.mock('../../../lib/util/got');
+jest.mock('../../util/got');
 
 const fromStream: jest.Mock<Promise<string>> = _fromStream as any;
 
 const content = readFileSync(
-  resolve('test/manager/bazel/_fixtures/WORKSPACE1'),
+  resolve('lib/manager/bazel/__fixtures__/WORKSPACE1'),
   'utf8'
 );
 
 const contentContainerPull = readFileSync(
-  resolve('test/manager/bazel/_fixtures/container_pull'),
+  resolve('lib/manager/bazel/__fixtures__/container_pull'),
   'utf8'
 );
 
 const fileWithBzlExtension = readFileSync(
-  'test/manager/bazel/_fixtures/repositories.bzl',
+  'lib/manager/bazel/__fixtures__/repositories.bzl',
   'utf8'
 );
 
diff --git a/test/manager/buildkite/_fixtures/pipeline1.yml b/lib/manager/buildkite/__fixtures__/pipeline1.yml
similarity index 100%
rename from test/manager/buildkite/_fixtures/pipeline1.yml
rename to lib/manager/buildkite/__fixtures__/pipeline1.yml
diff --git a/test/manager/buildkite/_fixtures/pipeline2.yml b/lib/manager/buildkite/__fixtures__/pipeline2.yml
similarity index 100%
rename from test/manager/buildkite/_fixtures/pipeline2.yml
rename to lib/manager/buildkite/__fixtures__/pipeline2.yml
diff --git a/test/manager/buildkite/_fixtures/pipeline3.yml b/lib/manager/buildkite/__fixtures__/pipeline3.yml
similarity index 100%
rename from test/manager/buildkite/_fixtures/pipeline3.yml
rename to lib/manager/buildkite/__fixtures__/pipeline3.yml
diff --git a/test/manager/buildkite/_fixtures/pipeline4.yml b/lib/manager/buildkite/__fixtures__/pipeline4.yml
similarity index 100%
rename from test/manager/buildkite/_fixtures/pipeline4.yml
rename to lib/manager/buildkite/__fixtures__/pipeline4.yml
diff --git a/test/manager/buildkite/__snapshots__/extract.spec.ts.snap b/lib/manager/buildkite/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/buildkite/__snapshots__/extract.spec.ts.snap
rename to lib/manager/buildkite/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/buildkite/__snapshots__/update.spec.ts.snap b/lib/manager/buildkite/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/buildkite/__snapshots__/update.spec.ts.snap
rename to lib/manager/buildkite/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/buildkite/extract.spec.ts b/lib/manager/buildkite/extract.spec.ts
similarity index 80%
rename from test/manager/buildkite/extract.spec.ts
rename to lib/manager/buildkite/extract.spec.ts
index 90ad26d5ac..0c653f6438 100644
--- a/test/manager/buildkite/extract.spec.ts
+++ b/lib/manager/buildkite/extract.spec.ts
@@ -1,20 +1,20 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/buildkite/extract';
+import { extractPackageFile } from './extract';
 
 const pipeline1 = readFileSync(
-  'test/manager/buildkite/_fixtures/pipeline1.yml',
+  'lib/manager/buildkite/__fixtures__/pipeline1.yml',
   'utf8'
 );
 const pipeline2 = readFileSync(
-  'test/manager/buildkite/_fixtures/pipeline2.yml',
+  'lib/manager/buildkite/__fixtures__/pipeline2.yml',
   'utf8'
 );
 const pipeline3 = readFileSync(
-  'test/manager/buildkite/_fixtures/pipeline3.yml',
+  'lib/manager/buildkite/__fixtures__/pipeline3.yml',
   'utf8'
 );
 const pipeline4 = readFileSync(
-  'test/manager/buildkite/_fixtures/pipeline4.yml',
+  'lib/manager/buildkite/__fixtures__/pipeline4.yml',
   'utf8'
 );
 
diff --git a/test/manager/buildkite/update.spec.ts b/lib/manager/buildkite/update.spec.ts
similarity index 89%
rename from test/manager/buildkite/update.spec.ts
rename to lib/manager/buildkite/update.spec.ts
index 15240183d1..6c6c2ec2d8 100644
--- a/test/manager/buildkite/update.spec.ts
+++ b/lib/manager/buildkite/update.spec.ts
@@ -1,16 +1,16 @@
 import { readFileSync } from 'fs';
-import { updateDependency } from '../../../lib/manager/buildkite/update';
+import { updateDependency } from './update';
 
 const pipeline1 = readFileSync(
-  'test/manager/buildkite/_fixtures/pipeline1.yml',
+  'lib/manager/buildkite/__fixtures__/pipeline1.yml',
   'utf8'
 );
 const pipeline2 = readFileSync(
-  'test/manager/buildkite/_fixtures/pipeline2.yml',
+  'lib/manager/buildkite/__fixtures__/pipeline2.yml',
   'utf8'
 );
 const pipeline4 = readFileSync(
-  'test/manager/buildkite/_fixtures/pipeline4.yml',
+  'lib/manager/buildkite/__fixtures__/pipeline4.yml',
   'utf8'
 );
 
diff --git a/test/manager/bundler/_fixtures/Gemfile.gitlab-foss b/lib/manager/bundler/__fixtures__/Gemfile.gitlab-foss
similarity index 100%
rename from test/manager/bundler/_fixtures/Gemfile.gitlab-foss
rename to lib/manager/bundler/__fixtures__/Gemfile.gitlab-foss
diff --git a/test/manager/bundler/_fixtures/Gemfile.gitlab-foss.lock b/lib/manager/bundler/__fixtures__/Gemfile.gitlab-foss.lock
similarity index 100%
rename from test/manager/bundler/_fixtures/Gemfile.gitlab-foss.lock
rename to lib/manager/bundler/__fixtures__/Gemfile.gitlab-foss.lock
diff --git a/test/manager/bundler/_fixtures/Gemfile.mastodon b/lib/manager/bundler/__fixtures__/Gemfile.mastodon
similarity index 100%
rename from test/manager/bundler/_fixtures/Gemfile.mastodon
rename to lib/manager/bundler/__fixtures__/Gemfile.mastodon
diff --git a/test/manager/bundler/_fixtures/Gemfile.mastodon.lock b/lib/manager/bundler/__fixtures__/Gemfile.mastodon.lock
similarity index 100%
rename from test/manager/bundler/_fixtures/Gemfile.mastodon.lock
rename to lib/manager/bundler/__fixtures__/Gemfile.mastodon.lock
diff --git a/test/manager/bundler/_fixtures/Gemfile.rails b/lib/manager/bundler/__fixtures__/Gemfile.rails
similarity index 100%
rename from test/manager/bundler/_fixtures/Gemfile.rails
rename to lib/manager/bundler/__fixtures__/Gemfile.rails
diff --git a/test/manager/bundler/_fixtures/Gemfile.rails.lock b/lib/manager/bundler/__fixtures__/Gemfile.rails.lock
similarity index 100%
rename from test/manager/bundler/_fixtures/Gemfile.rails.lock
rename to lib/manager/bundler/__fixtures__/Gemfile.rails.lock
diff --git a/test/manager/bundler/_fixtures/Gemfile.rubyci b/lib/manager/bundler/__fixtures__/Gemfile.rubyci
similarity index 100%
rename from test/manager/bundler/_fixtures/Gemfile.rubyci
rename to lib/manager/bundler/__fixtures__/Gemfile.rubyci
diff --git a/test/manager/bundler/_fixtures/Gemfile.rubyci.lock b/lib/manager/bundler/__fixtures__/Gemfile.rubyci.lock
similarity index 100%
rename from test/manager/bundler/_fixtures/Gemfile.rubyci.lock
rename to lib/manager/bundler/__fixtures__/Gemfile.rubyci.lock
diff --git a/test/manager/bundler/_fixtures/Gemfile.sourceBlockWithNewLines b/lib/manager/bundler/__fixtures__/Gemfile.sourceBlockWithNewLines
similarity index 100%
rename from test/manager/bundler/_fixtures/Gemfile.sourceBlockWithNewLines
rename to lib/manager/bundler/__fixtures__/Gemfile.sourceBlockWithNewLines
diff --git a/test/manager/bundler/_fixtures/Gemfile.sourceBlockWithNewLines.lock b/lib/manager/bundler/__fixtures__/Gemfile.sourceBlockWithNewLines.lock
similarity index 100%
rename from test/manager/bundler/_fixtures/Gemfile.sourceBlockWithNewLines.lock
rename to lib/manager/bundler/__fixtures__/Gemfile.sourceBlockWithNewLines.lock
diff --git a/test/manager/bundler/_fixtures/Gemfile.sourceGroup b/lib/manager/bundler/__fixtures__/Gemfile.sourceGroup
similarity index 100%
rename from test/manager/bundler/_fixtures/Gemfile.sourceGroup
rename to lib/manager/bundler/__fixtures__/Gemfile.sourceGroup
diff --git a/test/manager/bundler/_fixtures/Gemfile.webpacker b/lib/manager/bundler/__fixtures__/Gemfile.webpacker
similarity index 100%
rename from test/manager/bundler/_fixtures/Gemfile.webpacker
rename to lib/manager/bundler/__fixtures__/Gemfile.webpacker
diff --git a/test/manager/bundler/_fixtures/Gemfile.webpacker.lock b/lib/manager/bundler/__fixtures__/Gemfile.webpacker.lock
similarity index 100%
rename from test/manager/bundler/_fixtures/Gemfile.webpacker.lock
rename to lib/manager/bundler/__fixtures__/Gemfile.webpacker.lock
diff --git a/test/manager/bundler/__snapshots__/artifacts.spec.ts.snap b/lib/manager/bundler/__snapshots__/artifacts.spec.ts.snap
similarity index 100%
rename from test/manager/bundler/__snapshots__/artifacts.spec.ts.snap
rename to lib/manager/bundler/__snapshots__/artifacts.spec.ts.snap
diff --git a/test/manager/bundler/__snapshots__/extract.spec.ts.snap b/lib/manager/bundler/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/bundler/__snapshots__/extract.spec.ts.snap
rename to lib/manager/bundler/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/bundler/__snapshots__/gemfile.spec.ts.snap b/lib/manager/bundler/__snapshots__/gemfile.spec.ts.snap
similarity index 100%
rename from test/manager/bundler/__snapshots__/gemfile.spec.ts.snap
rename to lib/manager/bundler/__snapshots__/gemfile.spec.ts.snap
diff --git a/test/manager/bundler/__snapshots__/locked-version.spec.ts.snap b/lib/manager/bundler/__snapshots__/locked-version.spec.ts.snap
similarity index 100%
rename from test/manager/bundler/__snapshots__/locked-version.spec.ts.snap
rename to lib/manager/bundler/__snapshots__/locked-version.spec.ts.snap
diff --git a/test/manager/bundler/artifacts.spec.ts b/lib/manager/bundler/artifacts.spec.ts
similarity index 91%
rename from test/manager/bundler/artifacts.spec.ts
rename to lib/manager/bundler/artifacts.spec.ts
index 26b15659b4..0f09448895 100644
--- a/test/manager/bundler/artifacts.spec.ts
+++ b/lib/manager/bundler/artifacts.spec.ts
@@ -2,15 +2,15 @@ import { join } from 'upath';
 import _fs from 'fs-extra';
 import { exec as _exec } from 'child_process';
 import Git from 'simple-git/promise';
-import { updateArtifacts } from '../../../lib/manager/bundler';
-import { platform as _platform } from '../../../lib/platform';
-import * as _datasource from '../../../lib/datasource/docker';
-import { mocked } from '../../util';
-import { envMock, mockExecAll } from '../../execUtil';
-import * as _env from '../../../lib/util/exec/env';
-import { BinarySource } from '../../../lib/util/exec/common';
-import { setUtilConfig } from '../../../lib/util';
-import { resetPrefetchedImages } from '../../../lib/util/exec/docker';
+import { updateArtifacts } from '.';
+import { platform as _platform } from '../../platform';
+import * as _datasource from '../../datasource/docker';
+import { mocked } from '../../../test/util';
+import { envMock, mockExecAll } from '../../../test/execUtil';
+import * as _env from '../../util/exec/env';
+import { BinarySource } from '../../util/exec/common';
+import { setUtilConfig } from '../../util';
+import { resetPrefetchedImages } from '../../util/exec/docker';
 
 const fs: jest.Mocked<typeof _fs> = _fs as any;
 const exec: jest.Mock<typeof _exec> = _exec as any;
@@ -20,9 +20,9 @@ const datasource = mocked(_datasource);
 
 jest.mock('fs-extra');
 jest.mock('child_process');
-jest.mock('../../../lib/util/exec/env');
-jest.mock('../../../lib/platform');
-jest.mock('../../../lib/datasource/docker');
+jest.mock('../../util/exec/env');
+jest.mock('../../platform');
+jest.mock('../../datasource/docker');
 
 let config;
 
diff --git a/test/manager/bundler/extract.spec.ts b/lib/manager/bundler/extract.spec.ts
similarity index 82%
rename from test/manager/bundler/extract.spec.ts
rename to lib/manager/bundler/extract.spec.ts
index 5f12548bdd..16dc25d857 100644
--- a/test/manager/bundler/extract.spec.ts
+++ b/lib/manager/bundler/extract.spec.ts
@@ -1,62 +1,62 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/bundler/extract';
-import { platform as _platform } from '../../../lib/platform';
-import { isValid } from '../../../lib/versioning/ruby';
+import { extractPackageFile } from './extract';
+import { platform as _platform } from '../../platform';
+import { isValid } from '../../versioning/ruby';
 
 const platform: any = _platform;
 
 const railsGemfile = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.rails',
+  'lib/manager/bundler/__fixtures__/Gemfile.rails',
   'utf8'
 );
 const railsGemfileLock = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.rails.lock',
+  'lib/manager/bundler/__fixtures__/Gemfile.rails.lock',
   'utf8'
 );
 
 const sourceGroupGemfile = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.sourceGroup',
+  'lib/manager/bundler/__fixtures__/Gemfile.sourceGroup',
   'utf8'
 );
 const webPackerGemfile = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.webpacker',
+  'lib/manager/bundler/__fixtures__/Gemfile.webpacker',
   'utf8'
 );
 const webPackerGemfileLock = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.webpacker.lock',
+  'lib/manager/bundler/__fixtures__/Gemfile.webpacker.lock',
   'utf8'
 );
 const mastodonGemfile = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.mastodon',
+  'lib/manager/bundler/__fixtures__/Gemfile.mastodon',
   'utf8'
 );
 const mastodonGemfileLock = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.mastodon.lock',
+  'lib/manager/bundler/__fixtures__/Gemfile.mastodon.lock',
   'utf8'
 );
 const rubyCIGemfileLock = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.rubyci.lock',
+  'lib/manager/bundler/__fixtures__/Gemfile.rubyci.lock',
   'utf8'
 );
 
 const rubyCIGemfile = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.rubyci',
+  'lib/manager/bundler/__fixtures__/Gemfile.rubyci',
   'utf8'
 );
 const gitlabFossGemfileLock = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.gitlab-foss.lock',
+  'lib/manager/bundler/__fixtures__/Gemfile.gitlab-foss.lock',
   'utf8'
 );
 const gitlabFossGemfile = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.gitlab-foss',
+  'lib/manager/bundler/__fixtures__/Gemfile.gitlab-foss',
   'utf8'
 );
 const sourceBlockWithNewLinesGemfileLock = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.sourceBlockWithNewLines.lock',
+  'lib/manager/bundler/__fixtures__/Gemfile.sourceBlockWithNewLines.lock',
   'utf8'
 );
 const sourceBlockWithNewLinesGemfile = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.sourceBlockWithNewLines',
+  'lib/manager/bundler/__fixtures__/Gemfile.sourceBlockWithNewLines',
   'utf8'
 );
 
diff --git a/test/manager/bundler/gemfile.spec.ts b/lib/manager/bundler/gemfile.spec.ts
similarity index 65%
rename from test/manager/bundler/gemfile.spec.ts
rename to lib/manager/bundler/gemfile.spec.ts
index fb765ef2a3..cee947b8a8 100644
--- a/test/manager/bundler/gemfile.spec.ts
+++ b/lib/manager/bundler/gemfile.spec.ts
@@ -1,8 +1,8 @@
 import { readFileSync } from 'fs';
-import { extractLockFileEntries } from '../../../lib/manager/bundler/locked-version';
+import { extractLockFileEntries } from './locked-version';
 
 const gemLockFile = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.rails.lock',
+  'lib/manager/bundler/__fixtures__/Gemfile.rails.lock',
   'utf8'
 );
 describe('extract lib/manager/bundler/gemfile.rails.lock', () => {
diff --git a/test/manager/bundler/locked-version.spec.ts b/lib/manager/bundler/locked-version.spec.ts
similarity index 76%
rename from test/manager/bundler/locked-version.spec.ts
rename to lib/manager/bundler/locked-version.spec.ts
index b7d9564c41..6670a10aa4 100644
--- a/test/manager/bundler/locked-version.spec.ts
+++ b/lib/manager/bundler/locked-version.spec.ts
@@ -1,24 +1,24 @@
 import { readFileSync } from 'fs';
-import { extractLockFileEntries } from '../../../lib/manager/bundler/locked-version';
+import { extractLockFileEntries } from './locked-version';
 
 const railsGemfileLock = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.rails.lock',
+  'lib/manager/bundler/__fixtures__/Gemfile.rails.lock',
   'utf8'
 );
 const webPackerGemfileLock = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.webpacker.lock',
+  'lib/manager/bundler/__fixtures__/Gemfile.webpacker.lock',
   'utf8'
 );
 const mastodonGemfileLock = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.mastodon.lock',
+  'lib/manager/bundler/__fixtures__/Gemfile.mastodon.lock',
   'utf8'
 );
 const rubyCIGemfileLock = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.rubyci.lock',
+  'lib/manager/bundler/__fixtures__/Gemfile.rubyci.lock',
   'utf8'
 );
 const gitlabFossGemfileLock = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.gitlab-foss.lock',
+  'lib/manager/bundler/__fixtures__/Gemfile.gitlab-foss.lock',
   'utf8'
 );
 describe('/lib/manager/bundler/locked-version', () => {
diff --git a/test/manager/bundler/range.spec.ts b/lib/manager/bundler/range.spec.ts
similarity index 75%
rename from test/manager/bundler/range.spec.ts
rename to lib/manager/bundler/range.spec.ts
index 9983e51d5d..a14cce7bdb 100644
--- a/test/manager/bundler/range.spec.ts
+++ b/lib/manager/bundler/range.spec.ts
@@ -1,4 +1,4 @@
-import { getRangeStrategy } from '../../../lib/manager/bundler';
+import { getRangeStrategy } from '.';
 
 describe('lib/manager/bundler/range', () => {
   describe('getRangeStrategy()', () => {
diff --git a/test/manager/bundler/update.spec.ts b/lib/manager/bundler/update.spec.ts
similarity index 93%
rename from test/manager/bundler/update.spec.ts
rename to lib/manager/bundler/update.spec.ts
index ff4db0833d..045487bb28 100644
--- a/test/manager/bundler/update.spec.ts
+++ b/lib/manager/bundler/update.spec.ts
@@ -1,8 +1,8 @@
 import { readFileSync } from 'fs';
-import { updateDependency } from '../../../lib/manager/bundler/update';
+import { updateDependency } from './update';
 
 const railsGemfile = readFileSync(
-  'test/manager/bundler/_fixtures/Gemfile.rails',
+  'lib/manager/bundler/__fixtures__/Gemfile.rails',
   'utf8'
 );
 
diff --git a/test/manager/cargo/_fixtures/Cargo.1.toml b/lib/manager/cargo/__fixtures__/Cargo.1.toml
similarity index 100%
rename from test/manager/cargo/_fixtures/Cargo.1.toml
rename to lib/manager/cargo/__fixtures__/Cargo.1.toml
diff --git a/test/manager/cargo/_fixtures/Cargo.2.toml b/lib/manager/cargo/__fixtures__/Cargo.2.toml
similarity index 100%
rename from test/manager/cargo/_fixtures/Cargo.2.toml
rename to lib/manager/cargo/__fixtures__/Cargo.2.toml
diff --git a/test/manager/cargo/_fixtures/Cargo.3.toml b/lib/manager/cargo/__fixtures__/Cargo.3.toml
similarity index 100%
rename from test/manager/cargo/_fixtures/Cargo.3.toml
rename to lib/manager/cargo/__fixtures__/Cargo.3.toml
diff --git a/test/manager/cargo/_fixtures/Cargo.4.toml b/lib/manager/cargo/__fixtures__/Cargo.4.toml
similarity index 100%
rename from test/manager/cargo/_fixtures/Cargo.4.toml
rename to lib/manager/cargo/__fixtures__/Cargo.4.toml
diff --git a/test/manager/cargo/_fixtures/Cargo.5.toml b/lib/manager/cargo/__fixtures__/Cargo.5.toml
similarity index 100%
rename from test/manager/cargo/_fixtures/Cargo.5.toml
rename to lib/manager/cargo/__fixtures__/Cargo.5.toml
diff --git a/test/manager/cargo/__snapshots__/artifacts.spec.ts.snap b/lib/manager/cargo/__snapshots__/artifacts.spec.ts.snap
similarity index 100%
rename from test/manager/cargo/__snapshots__/artifacts.spec.ts.snap
rename to lib/manager/cargo/__snapshots__/artifacts.spec.ts.snap
diff --git a/test/manager/cargo/__snapshots__/extract.spec.ts.snap b/lib/manager/cargo/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/cargo/__snapshots__/extract.spec.ts.snap
rename to lib/manager/cargo/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/cargo/__snapshots__/update.spec.ts.snap b/lib/manager/cargo/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/cargo/__snapshots__/update.spec.ts.snap
rename to lib/manager/cargo/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/cargo/artifacts.spec.ts b/lib/manager/cargo/artifacts.spec.ts
similarity index 86%
rename from test/manager/cargo/artifacts.spec.ts
rename to lib/manager/cargo/artifacts.spec.ts
index e7faa0f00c..24724a361c 100644
--- a/test/manager/cargo/artifacts.spec.ts
+++ b/lib/manager/cargo/artifacts.spec.ts
@@ -1,18 +1,18 @@
 import { join } from 'upath';
 import _fs from 'fs-extra';
 import { exec as _exec } from 'child_process';
-import * as cargo from '../../../lib/manager/cargo/artifacts';
-import { platform as _platform } from '../../../lib/platform';
-import { mocked } from '../../util';
-import { envMock, mockExecAll } from '../../execUtil';
-import * as _env from '../../../lib/util/exec/env';
-import { setExecConfig } from '../../../lib/util/exec';
-import { BinarySource } from '../../../lib/util/exec/common';
-import { resetPrefetchedImages } from '../../../lib/util/exec/docker';
+import * as cargo from './artifacts';
+import { platform as _platform } from '../../platform';
+import { mocked } from '../../../test/util';
+import { envMock, mockExecAll } from '../../../test/execUtil';
+import * as _env from '../../util/exec/env';
+import { setExecConfig } from '../../util/exec';
+import { BinarySource } from '../../util/exec/common';
+import { resetPrefetchedImages } from '../../util/exec/docker';
 
 jest.mock('fs-extra');
 jest.mock('child_process');
-jest.mock('../../../lib/util/exec/env');
+jest.mock('../../util/exec/env');
 
 const fs: jest.Mocked<typeof _fs> = _fs as any;
 const exec: jest.Mock<typeof _exec> = _exec as any;
diff --git a/test/manager/cargo/extract.spec.ts b/lib/manager/cargo/extract.spec.ts
similarity index 86%
rename from test/manager/cargo/extract.spec.ts
rename to lib/manager/cargo/extract.spec.ts
index 9694f6682c..363d74700d 100644
--- a/test/manager/cargo/extract.spec.ts
+++ b/lib/manager/cargo/extract.spec.ts
@@ -1,24 +1,24 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/cargo/extract';
+import { extractPackageFile } from './extract';
 
 const cargo1toml = readFileSync(
-  'test/manager/cargo/_fixtures/Cargo.1.toml',
+  'lib/manager/cargo/__fixtures__/Cargo.1.toml',
   'utf8'
 );
 const cargo2toml = readFileSync(
-  'test/manager/cargo/_fixtures/Cargo.2.toml',
+  'lib/manager/cargo/__fixtures__/Cargo.2.toml',
   'utf8'
 );
 const cargo3toml = readFileSync(
-  'test/manager/cargo/_fixtures/Cargo.3.toml',
+  'lib/manager/cargo/__fixtures__/Cargo.3.toml',
   'utf8'
 );
 const cargo4toml = readFileSync(
-  'test/manager/cargo/_fixtures/Cargo.4.toml',
+  'lib/manager/cargo/__fixtures__/Cargo.4.toml',
   'utf8'
 );
 const cargo5toml = readFileSync(
-  'test/manager/cargo/_fixtures/Cargo.5.toml',
+  'lib/manager/cargo/__fixtures__/Cargo.5.toml',
   'utf8'
 );
 
diff --git a/test/manager/cargo/update.spec.ts b/lib/manager/cargo/update.spec.ts
similarity index 96%
rename from test/manager/cargo/update.spec.ts
rename to lib/manager/cargo/update.spec.ts
index d74c3657cd..1cbb15280e 100644
--- a/test/manager/cargo/update.spec.ts
+++ b/lib/manager/cargo/update.spec.ts
@@ -1,16 +1,16 @@
 import { readFileSync } from 'fs';
-import { updateDependency } from '../../../lib/manager/cargo/update';
+import { updateDependency } from './update';
 
 const cargo1toml = readFileSync(
-  'test/manager/cargo/_fixtures/Cargo.1.toml',
+  'lib/manager/cargo/__fixtures__/Cargo.1.toml',
   'utf8'
 );
 const cargo4toml = readFileSync(
-  'test/manager/cargo/_fixtures/Cargo.4.toml',
+  'lib/manager/cargo/__fixtures__/Cargo.4.toml',
   'utf8'
 );
 const cargo5toml = readFileSync(
-  'test/manager/cargo/_fixtures/Cargo.5.toml',
+  'lib/manager/cargo/__fixtures__/Cargo.5.toml',
   'utf8'
 );
 
diff --git a/test/manager/cdnurl/_fixtures/sample.txt b/lib/manager/cdnurl/__fixtures__/sample.txt
similarity index 100%
rename from test/manager/cdnurl/_fixtures/sample.txt
rename to lib/manager/cdnurl/__fixtures__/sample.txt
diff --git a/test/manager/cdnurl/__snapshots__/extract.spec.ts.snap b/lib/manager/cdnurl/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/cdnurl/__snapshots__/extract.spec.ts.snap
rename to lib/manager/cdnurl/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/cdnurl/extract.spec.ts b/lib/manager/cdnurl/extract.spec.ts
similarity index 69%
rename from test/manager/cdnurl/extract.spec.ts
rename to lib/manager/cdnurl/extract.spec.ts
index d6075fe3a1..bbd4fdf0ff 100644
--- a/test/manager/cdnurl/extract.spec.ts
+++ b/lib/manager/cdnurl/extract.spec.ts
@@ -1,9 +1,9 @@
 import { readFileSync } from 'fs';
 import { resolve } from 'path';
-import { extractPackageFile } from '../../../lib/manager/cdnurl';
+import { extractPackageFile } from '.';
 
 const input = readFileSync(
-  resolve(__dirname, `./_fixtures/sample.txt`),
+  resolve(__dirname, `./__fixtures__/sample.txt`),
   'utf8'
 );
 
diff --git a/test/manager/cdnurl/update.spec.ts b/lib/manager/cdnurl/update.spec.ts
similarity index 91%
rename from test/manager/cdnurl/update.spec.ts
rename to lib/manager/cdnurl/update.spec.ts
index 21d7bd4964..c57f770bce 100644
--- a/test/manager/cdnurl/update.spec.ts
+++ b/lib/manager/cdnurl/update.spec.ts
@@ -1,12 +1,9 @@
 import { readFileSync } from 'fs';
 import { resolve } from 'path';
-import {
-  extractPackageFile,
-  updateDependency,
-} from '../../../lib/manager/cdnurl';
+import { extractPackageFile, updateDependency } from '.';
 
 const content = readFileSync(
-  resolve(__dirname, `./_fixtures/sample.txt`),
+  resolve(__dirname, `./__fixtures__/sample.txt`),
   'utf8'
 );
 
diff --git a/test/manager/circleci/_fixtures/config.yml b/lib/manager/circleci/__fixtures__/config.yml
similarity index 100%
rename from test/manager/circleci/_fixtures/config.yml
rename to lib/manager/circleci/__fixtures__/config.yml
diff --git a/test/manager/circleci/_fixtures/config2.yml b/lib/manager/circleci/__fixtures__/config2.yml
similarity index 100%
rename from test/manager/circleci/_fixtures/config2.yml
rename to lib/manager/circleci/__fixtures__/config2.yml
diff --git a/test/manager/circleci/__snapshots__/extract.spec.ts.snap b/lib/manager/circleci/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/circleci/__snapshots__/extract.spec.ts.snap
rename to lib/manager/circleci/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/circleci/extract.spec.ts b/lib/manager/circleci/extract.spec.ts
similarity index 79%
rename from test/manager/circleci/extract.spec.ts
rename to lib/manager/circleci/extract.spec.ts
index 35c2b5e6eb..949821fddb 100644
--- a/test/manager/circleci/extract.spec.ts
+++ b/lib/manager/circleci/extract.spec.ts
@@ -1,12 +1,12 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/circleci/extract';
+import { extractPackageFile } from './extract';
 
 const file1 = readFileSync(
-  'test/manager/circleci/_fixtures/config.yml',
+  'lib/manager/circleci/__fixtures__/config.yml',
   'utf8'
 );
 const file2 = readFileSync(
-  'test/manager/circleci/_fixtures/config2.yml',
+  'lib/manager/circleci/__fixtures__/config2.yml',
   'utf8'
 );
 
diff --git a/test/manager/circleci/update.spec.ts b/lib/manager/circleci/update.spec.ts
similarity index 94%
rename from test/manager/circleci/update.spec.ts
rename to lib/manager/circleci/update.spec.ts
index 6c22cfd363..83b7f0ef39 100644
--- a/test/manager/circleci/update.spec.ts
+++ b/lib/manager/circleci/update.spec.ts
@@ -1,12 +1,12 @@
 import { readFileSync } from 'fs';
-import * as dcUpdate from '../../../lib/manager/circleci/update';
+import * as dcUpdate from './update';
 
 const yamlFile = readFileSync(
-  'test/manager/circleci/_fixtures/config.yml',
+  'lib/manager/circleci/__fixtures__/config.yml',
   'utf8'
 );
 const yamlFile2 = readFileSync(
-  'test/manager/circleci/_fixtures/config2.yml',
+  'lib/manager/circleci/__fixtures__/config2.yml',
   'utf8'
 );
 
diff --git a/test/manager/composer/_fixtures/composer1.json b/lib/manager/composer/__fixtures__/composer1.json
similarity index 100%
rename from test/manager/composer/_fixtures/composer1.json
rename to lib/manager/composer/__fixtures__/composer1.json
diff --git a/test/manager/composer/_fixtures/composer2.json b/lib/manager/composer/__fixtures__/composer2.json
similarity index 100%
rename from test/manager/composer/_fixtures/composer2.json
rename to lib/manager/composer/__fixtures__/composer2.json
diff --git a/test/manager/composer/_fixtures/composer3.json b/lib/manager/composer/__fixtures__/composer3.json
similarity index 100%
rename from test/manager/composer/_fixtures/composer3.json
rename to lib/manager/composer/__fixtures__/composer3.json
diff --git a/test/manager/composer/_fixtures/composer4.json b/lib/manager/composer/__fixtures__/composer4.json
similarity index 100%
rename from test/manager/composer/_fixtures/composer4.json
rename to lib/manager/composer/__fixtures__/composer4.json
diff --git a/test/manager/composer/_fixtures/composer5.json b/lib/manager/composer/__fixtures__/composer5.json
similarity index 100%
rename from test/manager/composer/_fixtures/composer5.json
rename to lib/manager/composer/__fixtures__/composer5.json
diff --git a/test/manager/composer/_fixtures/composer5.lock b/lib/manager/composer/__fixtures__/composer5.lock
similarity index 100%
rename from test/manager/composer/_fixtures/composer5.lock
rename to lib/manager/composer/__fixtures__/composer5.lock
diff --git a/test/manager/composer/__snapshots__/artifacts.spec.ts.snap b/lib/manager/composer/__snapshots__/artifacts.spec.ts.snap
similarity index 100%
rename from test/manager/composer/__snapshots__/artifacts.spec.ts.snap
rename to lib/manager/composer/__snapshots__/artifacts.spec.ts.snap
diff --git a/test/manager/composer/__snapshots__/extract.spec.ts.snap b/lib/manager/composer/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/composer/__snapshots__/extract.spec.ts.snap
rename to lib/manager/composer/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/composer/artifacts.spec.ts b/lib/manager/composer/artifacts.spec.ts
similarity index 90%
rename from test/manager/composer/artifacts.spec.ts
rename to lib/manager/composer/artifacts.spec.ts
index 514999cded..86659a1dc0 100644
--- a/test/manager/composer/artifacts.spec.ts
+++ b/lib/manager/composer/artifacts.spec.ts
@@ -1,22 +1,22 @@
 import { join } from 'upath';
 import _fs from 'fs-extra';
 import { exec as _exec } from 'child_process';
-import * as composer from '../../../lib/manager/composer/artifacts';
-import { platform as _platform } from '../../../lib/platform';
-import { mocked } from '../../util';
-import { StatusResult } from '../../../lib/platform/git/storage';
-import { envMock, mockExecAll } from '../../execUtil';
-import * as _env from '../../../lib/util/exec/env';
-import { BinarySource } from '../../../lib/util/exec/common';
-import { setUtilConfig } from '../../../lib/util';
-import { resetPrefetchedImages } from '../../../lib/util/exec/docker';
+import * as composer from './artifacts';
+import { platform as _platform } from '../../platform';
+import { mocked } from '../../../test/util';
+import { StatusResult } from '../../platform/git/storage';
+import { envMock, mockExecAll } from '../../../test/execUtil';
+import * as _env from '../../util/exec/env';
+import { BinarySource } from '../../util/exec/common';
+import { setUtilConfig } from '../../util';
+import { resetPrefetchedImages } from '../../util/exec/docker';
 
 jest.mock('fs-extra');
 jest.mock('child_process');
-jest.mock('../../../lib/util/exec/env');
-jest.mock('../../../lib/util/host-rules');
+jest.mock('../../util/exec/env');
+jest.mock('../../util/host-rules');
 
-const hostRules = require('../../../lib/util/host-rules');
+const hostRules = require('../../util/host-rules');
 
 const fs: jest.Mocked<typeof _fs> = _fs as any;
 const exec: jest.Mock<typeof _exec> = _exec as any;
diff --git a/test/manager/composer/extract.spec.ts b/lib/manager/composer/extract.spec.ts
similarity index 82%
rename from test/manager/composer/extract.spec.ts
rename to lib/manager/composer/extract.spec.ts
index 008d52fd9d..a05394e49d 100644
--- a/test/manager/composer/extract.spec.ts
+++ b/lib/manager/composer/extract.spec.ts
@@ -1,31 +1,31 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/composer/extract';
-import { platform as _platform, Platform } from '../../../lib/platform';
+import { extractPackageFile } from './extract';
+import { platform as _platform, Platform } from '../../platform';
 
 const platform: jest.Mocked<Platform> = _platform as any;
 
 const requirements1 = readFileSync(
-  'test/manager/composer/_fixtures/composer1.json',
+  'lib/manager/composer/__fixtures__/composer1.json',
   'utf8'
 );
 const requirements2 = readFileSync(
-  'test/manager/composer/_fixtures/composer2.json',
+  'lib/manager/composer/__fixtures__/composer2.json',
   'utf8'
 );
 const requirements3 = readFileSync(
-  'test/manager/composer/_fixtures/composer3.json',
+  'lib/manager/composer/__fixtures__/composer3.json',
   'utf8'
 );
 const requirements4 = readFileSync(
-  'test/manager/composer/_fixtures/composer4.json',
+  'lib/manager/composer/__fixtures__/composer4.json',
   'utf8'
 );
 const requirements5 = readFileSync(
-  'test/manager/composer/_fixtures/composer5.json',
+  'lib/manager/composer/__fixtures__/composer5.json',
   'utf8'
 );
 const requirements5Lock = readFileSync(
-  'test/manager/composer/_fixtures/composer5.lock',
+  'lib/manager/composer/__fixtures__/composer5.lock',
   'utf8'
 );
 
diff --git a/test/manager/composer/range.spec.ts b/lib/manager/composer/range.spec.ts
similarity index 91%
rename from test/manager/composer/range.spec.ts
rename to lib/manager/composer/range.spec.ts
index c7a01066b2..51b4c9f5f9 100644
--- a/test/manager/composer/range.spec.ts
+++ b/lib/manager/composer/range.spec.ts
@@ -1,5 +1,5 @@
-import { getRangeStrategy } from '../../../lib/manager/composer';
-import { RangeConfig } from '../../../lib/manager/common';
+import { getRangeStrategy } from '.';
+import { RangeConfig } from '../common';
 
 describe('getRangeStrategy', () => {
   it('returns same if not auto', () => {
diff --git a/test/manager/deps-edn/_fixtures/deps.edn b/lib/manager/deps-edn/__fixtures__/deps.edn
similarity index 100%
rename from test/manager/deps-edn/_fixtures/deps.edn
rename to lib/manager/deps-edn/__fixtures__/deps.edn
diff --git a/test/manager/deps-edn/__snapshots__/extract.spec.ts.snap b/lib/manager/deps-edn/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/deps-edn/__snapshots__/extract.spec.ts.snap
rename to lib/manager/deps-edn/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/deps-edn/extract.spec.ts b/lib/manager/deps-edn/extract.spec.ts
similarity index 71%
rename from test/manager/deps-edn/extract.spec.ts
rename to lib/manager/deps-edn/extract.spec.ts
index d3f41c6263..fb39266bcb 100644
--- a/test/manager/deps-edn/extract.spec.ts
+++ b/lib/manager/deps-edn/extract.spec.ts
@@ -1,10 +1,10 @@
 /* eslint-disable no-template-curly-in-string */
 import { readFileSync } from 'fs';
 import { resolve } from 'path';
-import { extractPackageFile } from '../../../lib/manager/deps-edn/extract';
+import { extractPackageFile } from './extract';
 
 const depsEdn = readFileSync(
-  resolve(__dirname, `./_fixtures/deps.edn`),
+  resolve(__dirname, `./__fixtures__/deps.edn`),
   'utf8'
 );
 
diff --git a/test/manager/deps-edn/update.spec.ts b/lib/manager/deps-edn/update.spec.ts
similarity index 76%
rename from test/manager/deps-edn/update.spec.ts
rename to lib/manager/deps-edn/update.spec.ts
index 4d71d698d3..126a9462f1 100644
--- a/test/manager/deps-edn/update.spec.ts
+++ b/lib/manager/deps-edn/update.spec.ts
@@ -1,11 +1,11 @@
 /* eslint-disable no-template-curly-in-string */
 import { readFileSync } from 'fs';
 import { resolve } from 'path';
-import { extractPackageFile } from '../../../lib/manager/deps-edn/extract';
-import { updateDependency } from '../../../lib/manager/deps-edn/update';
+import { extractPackageFile } from './extract';
+import { updateDependency } from './update';
 
 const depsEdn = readFileSync(
-  resolve(__dirname, `./_fixtures/deps.edn`),
+  resolve(__dirname, `./__fixtures__/deps.edn`),
   'utf8'
 );
 
diff --git a/test/manager/docker-compose/_fixtures/docker-compose.1.yml b/lib/manager/docker-compose/__fixtures__/docker-compose.1.yml
similarity index 100%
rename from test/manager/docker-compose/_fixtures/docker-compose.1.yml
rename to lib/manager/docker-compose/__fixtures__/docker-compose.1.yml
diff --git a/test/manager/docker-compose/__snapshots__/extract.spec.ts.snap b/lib/manager/docker-compose/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/docker-compose/__snapshots__/extract.spec.ts.snap
rename to lib/manager/docker-compose/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/docker-compose/extract.spec.ts b/lib/manager/docker-compose/extract.spec.ts
similarity index 80%
rename from test/manager/docker-compose/extract.spec.ts
rename to lib/manager/docker-compose/extract.spec.ts
index 34dce2b893..19727a4e3d 100644
--- a/test/manager/docker-compose/extract.spec.ts
+++ b/lib/manager/docker-compose/extract.spec.ts
@@ -1,8 +1,8 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/docker-compose/extract';
+import { extractPackageFile } from './extract';
 
 const yamlFile = readFileSync(
-  'test/manager/docker-compose/_fixtures/docker-compose.1.yml',
+  'lib/manager/docker-compose/__fixtures__/docker-compose.1.yml',
   'utf8'
 );
 
diff --git a/test/manager/docker-compose/update.spec.ts b/lib/manager/docker-compose/update.spec.ts
similarity index 89%
rename from test/manager/docker-compose/update.spec.ts
rename to lib/manager/docker-compose/update.spec.ts
index 4b21559318..c65940ed39 100644
--- a/test/manager/docker-compose/update.spec.ts
+++ b/lib/manager/docker-compose/update.spec.ts
@@ -1,8 +1,8 @@
 import { readFileSync } from 'fs';
-import { updateDependency } from '../../../lib/manager/docker-compose/update';
+import { updateDependency } from './update';
 
 const yamlFile = readFileSync(
-  'test/manager/docker-compose/_fixtures/docker-compose.1.yml',
+  'lib/manager/docker-compose/__fixtures__/docker-compose.1.yml',
   'utf8'
 );
 
diff --git a/test/manager/dockerfile/_fixtures/Dockerfile1 b/lib/manager/dockerfile/__fixtures__/Dockerfile1
similarity index 100%
rename from test/manager/dockerfile/_fixtures/Dockerfile1
rename to lib/manager/dockerfile/__fixtures__/Dockerfile1
diff --git a/test/manager/dockerfile/__snapshots__/extract.spec.ts.snap b/lib/manager/dockerfile/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/dockerfile/__snapshots__/extract.spec.ts.snap
rename to lib/manager/dockerfile/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/dockerfile/__snapshots__/update.spec.ts.snap b/lib/manager/dockerfile/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/dockerfile/__snapshots__/update.spec.ts.snap
rename to lib/manager/dockerfile/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/dockerfile/extract.spec.ts b/lib/manager/dockerfile/extract.spec.ts
similarity index 97%
rename from test/manager/dockerfile/extract.spec.ts
rename to lib/manager/dockerfile/extract.spec.ts
index 310d7cadff..d6639f7150 100644
--- a/test/manager/dockerfile/extract.spec.ts
+++ b/lib/manager/dockerfile/extract.spec.ts
@@ -1,8 +1,8 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/dockerfile/extract';
+import { extractPackageFile } from './extract';
 
 const d1 = readFileSync(
-  'test/manager/dockerfile/_fixtures/Dockerfile1',
+  'lib/manager/dockerfile/__fixtures__/Dockerfile1',
   'utf8'
 );
 
diff --git a/test/manager/dockerfile/update.spec.ts b/lib/manager/dockerfile/update.spec.ts
similarity index 98%
rename from test/manager/dockerfile/update.spec.ts
rename to lib/manager/dockerfile/update.spec.ts
index c9a65e8b91..c4d39734a6 100644
--- a/test/manager/dockerfile/update.spec.ts
+++ b/lib/manager/dockerfile/update.spec.ts
@@ -1,4 +1,4 @@
-import * as dockerfile from '../../../lib/manager/dockerfile/update';
+import * as dockerfile from './update';
 
 describe('manager/dockerfile/update', () => {
   describe('updateDependency', () => {
diff --git a/test/manager/droneci/_fixtures/.drone.yml b/lib/manager/droneci/__fixtures__/.drone.yml
similarity index 100%
rename from test/manager/droneci/_fixtures/.drone.yml
rename to lib/manager/droneci/__fixtures__/.drone.yml
diff --git a/test/manager/droneci/__snapshots__/extract.spec.ts.snap b/lib/manager/droneci/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/droneci/__snapshots__/extract.spec.ts.snap
rename to lib/manager/droneci/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/droneci/extract.spec.ts b/lib/manager/droneci/extract.spec.ts
similarity index 79%
rename from test/manager/droneci/extract.spec.ts
rename to lib/manager/droneci/extract.spec.ts
index ca2ea0a1f2..85697f4494 100644
--- a/test/manager/droneci/extract.spec.ts
+++ b/lib/manager/droneci/extract.spec.ts
@@ -1,10 +1,10 @@
 import { readFileSync } from 'fs';
 import { resolve } from 'path';
 
-const { extractPackageFile } = require('../../../lib/manager/droneci/extract');
+import { extractPackageFile } from './extract';
 
 const droneYAML = readFileSync(
-  resolve('test/manager/droneci/_fixtures/.drone.yml'),
+  resolve('lib/manager/droneci/__fixtures__/.drone.yml'),
   'utf8'
 );
 
diff --git a/test/manager/droneci/update.spec.ts b/lib/manager/droneci/update.spec.ts
similarity index 92%
rename from test/manager/droneci/update.spec.ts
rename to lib/manager/droneci/update.spec.ts
index 3e2b0c3e21..f78643ced6 100644
--- a/test/manager/droneci/update.spec.ts
+++ b/lib/manager/droneci/update.spec.ts
@@ -1,10 +1,10 @@
 import { readFileSync } from 'fs';
 import { resolve } from 'path';
 
-const { updateDependency } = require('../../../lib/manager/droneci/update');
+import { updateDependency } from './update';
 
 const droneYAML = readFileSync(
-  resolve('test/manager/droneci/_fixtures/.drone.yml'),
+  resolve('lib/manager/droneci/__fixtures__/.drone.yml'),
   'utf8'
 );
 
diff --git a/test/manager/git-submodules/_fixtures/.gitmodules.1 b/lib/manager/git-submodules/__fixtures__/.gitmodules.1
similarity index 100%
rename from test/manager/git-submodules/_fixtures/.gitmodules.1
rename to lib/manager/git-submodules/__fixtures__/.gitmodules.1
diff --git a/test/manager/git-submodules/_fixtures/.gitmodules.2 b/lib/manager/git-submodules/__fixtures__/.gitmodules.2
similarity index 100%
rename from test/manager/git-submodules/_fixtures/.gitmodules.2
rename to lib/manager/git-submodules/__fixtures__/.gitmodules.2
diff --git a/test/manager/git-submodules/_fixtures/.gitmodules.3 b/lib/manager/git-submodules/__fixtures__/.gitmodules.3
similarity index 100%
rename from test/manager/git-submodules/_fixtures/.gitmodules.3
rename to lib/manager/git-submodules/__fixtures__/.gitmodules.3
diff --git a/test/manager/git-submodules/_fixtures/.gitmodules.4 b/lib/manager/git-submodules/__fixtures__/.gitmodules.4
similarity index 100%
rename from test/manager/git-submodules/_fixtures/.gitmodules.4
rename to lib/manager/git-submodules/__fixtures__/.gitmodules.4
diff --git a/test/manager/git-submodules/__snapshots__/artifact.spec.ts.snap b/lib/manager/git-submodules/__snapshots__/artifact.spec.ts.snap
similarity index 100%
rename from test/manager/git-submodules/__snapshots__/artifact.spec.ts.snap
rename to lib/manager/git-submodules/__snapshots__/artifact.spec.ts.snap
diff --git a/test/manager/git-submodules/__snapshots__/extract.spec.ts.snap b/lib/manager/git-submodules/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/git-submodules/__snapshots__/extract.spec.ts.snap
rename to lib/manager/git-submodules/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/git-submodules/artifact.spec.ts b/lib/manager/git-submodules/artifact.spec.ts
similarity index 82%
rename from test/manager/git-submodules/artifact.spec.ts
rename to lib/manager/git-submodules/artifact.spec.ts
index 5df38c961d..75c0d66c4b 100644
--- a/test/manager/git-submodules/artifact.spec.ts
+++ b/lib/manager/git-submodules/artifact.spec.ts
@@ -1,4 +1,4 @@
-import updateArtifacts from '../../../lib/manager/git-submodules/artifacts';
+import updateArtifacts from './artifacts';
 
 describe('lib/manager/gitsubmodules/artifacts', () => {
   describe('updateArtifacts()', () => {
diff --git a/test/manager/git-submodules/extract.spec.ts b/lib/manager/git-submodules/extract.spec.ts
similarity index 92%
rename from test/manager/git-submodules/extract.spec.ts
rename to lib/manager/git-submodules/extract.spec.ts
index acc882241d..7edb63cd4a 100644
--- a/test/manager/git-submodules/extract.spec.ts
+++ b/lib/manager/git-submodules/extract.spec.ts
@@ -1,11 +1,11 @@
 import _simpleGit from 'simple-git/promise';
-import extractPackageFile from '../../../lib/manager/git-submodules/extract';
+import extractPackageFile from './extract';
 
 jest.mock('simple-git/promise.js');
 const simpleGit: any = _simpleGit;
 const Git = jest.requireActual('simple-git/promise');
 
-const localDir = `${__dirname}/_fixtures`;
+const localDir = `${__dirname}/__fixtures__`;
 
 describe('lib/manager/gitsubmodules/extract', () => {
   beforeAll(() => {
diff --git a/test/manager/git-submodules/update.spec.ts b/lib/manager/git-submodules/update.spec.ts
similarity index 91%
rename from test/manager/git-submodules/update.spec.ts
rename to lib/manager/git-submodules/update.spec.ts
index 60eee16fc0..6bda3dfa25 100644
--- a/test/manager/git-submodules/update.spec.ts
+++ b/lib/manager/git-submodules/update.spec.ts
@@ -1,7 +1,7 @@
 import _simpleGit from 'simple-git/promise';
 import { dir } from 'tmp-promise';
 
-import updateDependency from '../../../lib/manager/git-submodules/update';
+import updateDependency from './update';
 
 jest.mock('simple-git/promise.js');
 const simpleGit: any = _simpleGit;
diff --git a/test/manager/github-actions/_fixtures/main.workflow.1 b/lib/manager/github-actions/__fixtures__/main.workflow.1
similarity index 100%
rename from test/manager/github-actions/_fixtures/main.workflow.1
rename to lib/manager/github-actions/__fixtures__/main.workflow.1
diff --git a/test/manager/github-actions/_fixtures/workflow.yml.1 b/lib/manager/github-actions/__fixtures__/workflow.yml.1
similarity index 100%
rename from test/manager/github-actions/_fixtures/workflow.yml.1
rename to lib/manager/github-actions/__fixtures__/workflow.yml.1
diff --git a/test/manager/github-actions/__snapshots__/extract.spec.ts.snap b/lib/manager/github-actions/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/github-actions/__snapshots__/extract.spec.ts.snap
rename to lib/manager/github-actions/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/github-actions/extract.spec.ts b/lib/manager/github-actions/extract.spec.ts
similarity index 79%
rename from test/manager/github-actions/extract.spec.ts
rename to lib/manager/github-actions/extract.spec.ts
index a6cffc6dcc..346ba1ea32 100644
--- a/test/manager/github-actions/extract.spec.ts
+++ b/lib/manager/github-actions/extract.spec.ts
@@ -1,13 +1,13 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/github-actions/extract';
+import { extractPackageFile } from './extract';
 
 const workflow1 = readFileSync(
-  'test/manager/github-actions/_fixtures/main.workflow.1',
+  'lib/manager/github-actions/__fixtures__/main.workflow.1',
   'utf8'
 );
 
 const workflow2 = readFileSync(
-  'test/manager/github-actions/_fixtures/workflow.yml.1',
+  'lib/manager/github-actions/__fixtures__/workflow.yml.1',
   'utf8'
 );
 
diff --git a/test/manager/github-actions/update.spec.ts b/lib/manager/github-actions/update.spec.ts
similarity index 91%
rename from test/manager/github-actions/update.spec.ts
rename to lib/manager/github-actions/update.spec.ts
index ba9067b483..4a85c91fce 100644
--- a/test/manager/github-actions/update.spec.ts
+++ b/lib/manager/github-actions/update.spec.ts
@@ -1,13 +1,13 @@
 import { readFileSync } from 'fs';
-import { updateDependency } from '../../../lib/manager/github-actions/update';
+import { updateDependency } from './update';
 
 const workflow1 = readFileSync(
-  'test/manager/github-actions/_fixtures/main.workflow.1',
+  'lib/manager/github-actions/__fixtures__/main.workflow.1',
   'utf8'
 );
 
 const workflow2 = readFileSync(
-  'test/manager/github-actions/_fixtures/workflow.yml.1',
+  'lib/manager/github-actions/__fixtures__/workflow.yml.1',
   'utf8'
 );
 
diff --git a/test/manager/gitlabci-include/_fixtures/gitlab-ci.yaml b/lib/manager/gitlabci-include/__fixtures__/gitlab-ci.yaml
similarity index 100%
rename from test/manager/gitlabci-include/_fixtures/gitlab-ci.yaml
rename to lib/manager/gitlabci-include/__fixtures__/gitlab-ci.yaml
diff --git a/test/manager/gitlabci-include/__snapshots__/extract.spec.ts.snap b/lib/manager/gitlabci-include/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/gitlabci-include/__snapshots__/extract.spec.ts.snap
rename to lib/manager/gitlabci-include/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/gitlabci-include/extract.spec.ts b/lib/manager/gitlabci-include/extract.spec.ts
similarity index 86%
rename from test/manager/gitlabci-include/extract.spec.ts
rename to lib/manager/gitlabci-include/extract.spec.ts
index c44d73000d..ac845e8dfa 100644
--- a/test/manager/gitlabci-include/extract.spec.ts
+++ b/lib/manager/gitlabci-include/extract.spec.ts
@@ -1,8 +1,8 @@
 import fs from 'fs';
-import { extractPackageFile } from '../../../lib/manager/gitlabci-include/extract';
+import { extractPackageFile } from './extract';
 
 const yamlFile = fs.readFileSync(
-  'test/manager/gitlabci-include/_fixtures/gitlab-ci.yaml',
+  'lib/manager/gitlabci-include/__fixtures__/gitlab-ci.yaml',
   'utf8'
 );
 
diff --git a/test/manager/gitlabci-include/update.spec.ts b/lib/manager/gitlabci-include/update.spec.ts
similarity index 86%
rename from test/manager/gitlabci-include/update.spec.ts
rename to lib/manager/gitlabci-include/update.spec.ts
index 6c3dddff72..7a22839281 100644
--- a/test/manager/gitlabci-include/update.spec.ts
+++ b/lib/manager/gitlabci-include/update.spec.ts
@@ -1,8 +1,8 @@
 import { readFileSync } from 'fs';
-import { updateDependency } from '../../../lib/manager/gitlabci-include/update';
+import { updateDependency } from './update';
 
 const yamlFile = readFileSync(
-  'test/manager/gitlabci-include/_fixtures/gitlab-ci.yaml',
+  'lib/manager/gitlabci-include/__fixtures__/gitlab-ci.yaml',
   'utf8'
 );
 
diff --git a/test/manager/gitlabci/_fixtures/gitlab-ci.1.yaml b/lib/manager/gitlabci/__fixtures__/gitlab-ci.1.yaml
similarity index 100%
rename from test/manager/gitlabci/_fixtures/gitlab-ci.1.yaml
rename to lib/manager/gitlabci/__fixtures__/gitlab-ci.1.yaml
diff --git a/test/manager/gitlabci/_fixtures/gitlab-ci.yaml b/lib/manager/gitlabci/__fixtures__/gitlab-ci.yaml
similarity index 100%
rename from test/manager/gitlabci/_fixtures/gitlab-ci.yaml
rename to lib/manager/gitlabci/__fixtures__/gitlab-ci.yaml
diff --git a/test/manager/gitlabci/__snapshots__/extract.spec.ts.snap b/lib/manager/gitlabci/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/gitlabci/__snapshots__/extract.spec.ts.snap
rename to lib/manager/gitlabci/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/gitlabci/extract.spec.ts b/lib/manager/gitlabci/extract.spec.ts
similarity index 79%
rename from test/manager/gitlabci/extract.spec.ts
rename to lib/manager/gitlabci/extract.spec.ts
index 879ee96c88..60e8a17ac3 100644
--- a/test/manager/gitlabci/extract.spec.ts
+++ b/lib/manager/gitlabci/extract.spec.ts
@@ -1,13 +1,13 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/gitlabci/extract';
+import { extractPackageFile } from './extract';
 
 const yamlFile = readFileSync(
-  'test/manager/gitlabci/_fixtures/gitlab-ci.yaml',
+  'lib/manager/gitlabci/__fixtures__/gitlab-ci.yaml',
   'utf8'
 );
 
 const yamlFile1 = readFileSync(
-  'test/manager/gitlabci/_fixtures/gitlab-ci.1.yaml',
+  'lib/manager/gitlabci/__fixtures__/gitlab-ci.1.yaml',
   'utf8'
 );
 
diff --git a/test/manager/gitlabci/update.spec.ts b/lib/manager/gitlabci/update.spec.ts
similarity index 96%
rename from test/manager/gitlabci/update.spec.ts
rename to lib/manager/gitlabci/update.spec.ts
index 9f0032abc5..36f957e8f0 100644
--- a/test/manager/gitlabci/update.spec.ts
+++ b/lib/manager/gitlabci/update.spec.ts
@@ -1,8 +1,8 @@
 import { readFileSync } from 'fs';
-import { updateDependency } from '../../../lib/manager/gitlabci/update';
+import { updateDependency } from './update';
 
 const yamlFile = readFileSync(
-  'test/manager/gitlabci/_fixtures/gitlab-ci.yaml',
+  'lib/manager/gitlabci/__fixtures__/gitlab-ci.yaml',
   'utf8'
 );
 
diff --git a/test/manager/gomod/_fixtures/1/go.mod b/lib/manager/gomod/__fixtures__/1/go.mod
similarity index 100%
rename from test/manager/gomod/_fixtures/1/go.mod
rename to lib/manager/gomod/__fixtures__/1/go.mod
diff --git a/test/manager/gomod/_fixtures/2/go.mod b/lib/manager/gomod/__fixtures__/2/go.mod
similarity index 100%
rename from test/manager/gomod/_fixtures/2/go.mod
rename to lib/manager/gomod/__fixtures__/2/go.mod
diff --git a/test/manager/gomod/__snapshots__/artifacts.spec.ts.snap b/lib/manager/gomod/__snapshots__/artifacts.spec.ts.snap
similarity index 100%
rename from test/manager/gomod/__snapshots__/artifacts.spec.ts.snap
rename to lib/manager/gomod/__snapshots__/artifacts.spec.ts.snap
diff --git a/test/manager/gomod/__snapshots__/extract.spec.ts.snap b/lib/manager/gomod/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/gomod/__snapshots__/extract.spec.ts.snap
rename to lib/manager/gomod/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/gomod/__snapshots__/update.spec.ts.snap b/lib/manager/gomod/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/gomod/__snapshots__/update.spec.ts.snap
rename to lib/manager/gomod/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/gomod/artifacts.spec.ts b/lib/manager/gomod/artifacts.spec.ts
similarity index 91%
rename from test/manager/gomod/artifacts.spec.ts
rename to lib/manager/gomod/artifacts.spec.ts
index 3ef66fda9d..47902cf24b 100644
--- a/test/manager/gomod/artifacts.spec.ts
+++ b/lib/manager/gomod/artifacts.spec.ts
@@ -1,19 +1,19 @@
 import _fs from 'fs-extra';
 import { exec as _exec } from 'child_process';
-import * as gomod from '../../../lib/manager/gomod/artifacts';
-import { platform as _platform } from '../../../lib/platform';
-import { mocked } from '../../util';
-import { StatusResult } from '../../../lib/platform/git/storage';
-import { envMock, mockExecAll } from '../../execUtil';
-import * as _env from '../../../lib/util/exec/env';
-import { BinarySource } from '../../../lib/util/exec/common';
+import * as gomod from './artifacts';
+import { platform as _platform } from '../../platform';
+import { mocked } from '../../../test/util';
+import { StatusResult } from '../../platform/git/storage';
+import { envMock, mockExecAll } from '../../../test/execUtil';
+import * as _env from '../../util/exec/env';
+import { BinarySource } from '../../util/exec/common';
 
 jest.mock('fs-extra');
 jest.mock('child_process');
-jest.mock('../../../lib/util/exec/env');
-jest.mock('../../../lib/util/host-rules');
+jest.mock('../../util/exec/env');
+jest.mock('../../util/host-rules');
 
-const hostRules = require('../../../lib/util/host-rules');
+const hostRules = require('../../util/host-rules');
 
 const fs: jest.Mocked<typeof _fs> = _fs as any;
 const exec: jest.Mock<typeof _exec> = _exec as any;
diff --git a/test/manager/gomod/extract.spec.ts b/lib/manager/gomod/extract.spec.ts
similarity index 77%
rename from test/manager/gomod/extract.spec.ts
rename to lib/manager/gomod/extract.spec.ts
index 405070a926..e59be32d25 100644
--- a/test/manager/gomod/extract.spec.ts
+++ b/lib/manager/gomod/extract.spec.ts
@@ -1,8 +1,8 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/gomod/extract';
+import { extractPackageFile } from './extract';
 
-const gomod1 = readFileSync('test/manager/gomod/_fixtures/1/go.mod', 'utf8');
-const gomod2 = readFileSync('test/manager/gomod/_fixtures/2/go.mod', 'utf8');
+const gomod1 = readFileSync('lib/manager/gomod/__fixtures__/1/go.mod', 'utf8');
+const gomod2 = readFileSync('lib/manager/gomod/__fixtures__/2/go.mod', 'utf8');
 
 describe('lib/manager/gomod/extract', () => {
   describe('extractPackageFile()', () => {
diff --git a/test/manager/gomod/update.spec.ts b/lib/manager/gomod/update.spec.ts
similarity index 97%
rename from test/manager/gomod/update.spec.ts
rename to lib/manager/gomod/update.spec.ts
index 4b3de3ee3b..3782c7c44c 100644
--- a/test/manager/gomod/update.spec.ts
+++ b/lib/manager/gomod/update.spec.ts
@@ -1,8 +1,8 @@
 import { readFileSync } from 'fs';
-import { updateDependency } from '../../../lib/manager/gomod/update';
+import { updateDependency } from './update';
 
-const gomod1 = readFileSync('test/manager/gomod/_fixtures/1/go.mod', 'utf8');
-const gomod2 = readFileSync('test/manager/gomod/_fixtures/2/go.mod', 'utf8');
+const gomod1 = readFileSync('lib/manager/gomod/__fixtures__/1/go.mod', 'utf8');
+const gomod2 = readFileSync('lib/manager/gomod/__fixtures__/2/go.mod', 'utf8');
 
 describe('manager/gomod/update', () => {
   describe('updateDependency', () => {
diff --git a/test/manager/gradle-wrapper/__snapshots__/extract.spec.ts.snap b/lib/manager/gradle-wrapper/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/gradle-wrapper/__snapshots__/extract.spec.ts.snap
rename to lib/manager/gradle-wrapper/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/gradle-wrapper/__snapshots__/update.spec.ts.snap b/lib/manager/gradle-wrapper/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/gradle-wrapper/__snapshots__/update.spec.ts.snap
rename to lib/manager/gradle-wrapper/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/gradle-wrapper/extract.spec.ts b/lib/manager/gradle-wrapper/extract.spec.ts
similarity index 90%
rename from test/manager/gradle-wrapper/extract.spec.ts
rename to lib/manager/gradle-wrapper/extract.spec.ts
index 419c468fa6..122f1f5ca4 100644
--- a/test/manager/gradle-wrapper/extract.spec.ts
+++ b/lib/manager/gradle-wrapper/extract.spec.ts
@@ -1,5 +1,5 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/gradle-wrapper/extract';
+import { extractPackageFile } from './extract';
 
 const propertiesFile1 = readFileSync(
   'test/datasource/gradle-wrapper/_fixtures/gradle-wrapper-1.properties',
diff --git a/test/manager/gradle-wrapper/update.spec.ts b/lib/manager/gradle-wrapper/update.spec.ts
similarity index 96%
rename from test/manager/gradle-wrapper/update.spec.ts
rename to lib/manager/gradle-wrapper/update.spec.ts
index f1466f0888..f692bcf1b5 100644
--- a/test/manager/gradle-wrapper/update.spec.ts
+++ b/lib/manager/gradle-wrapper/update.spec.ts
@@ -1,8 +1,8 @@
 import fs from 'fs';
-import * as dcUpdate from '../../../lib/manager/gradle-wrapper';
-import _got from '../../../lib/util/got';
+import * as dcUpdate from '.';
+import _got from '../../util/got';
 
-jest.mock('../../../lib/util/got');
+jest.mock('../../util/got');
 
 const got: jest.Mock<any> = _got as any;
 
diff --git a/test/manager/gradle/__snapshots__/index.spec.ts.snap b/lib/manager/gradle/__snapshots__/index.spec.ts.snap
similarity index 100%
rename from test/manager/gradle/__snapshots__/index.spec.ts.snap
rename to lib/manager/gradle/__snapshots__/index.spec.ts.snap
diff --git a/test/manager/gradle/build-gradle.spec.ts b/lib/manager/gradle/build-gradle.spec.ts
similarity index 99%
rename from test/manager/gradle/build-gradle.spec.ts
rename to lib/manager/gradle/build-gradle.spec.ts
index 3bc3114329..802ca2e75d 100644
--- a/test/manager/gradle/build-gradle.spec.ts
+++ b/lib/manager/gradle/build-gradle.spec.ts
@@ -2,7 +2,7 @@ import {
   init,
   updateGradleVersion,
   collectVersionVariables,
-} from '../../../lib/manager/gradle/build-gradle';
+} from './build-gradle';
 
 describe('lib/manager/gradle/updateGradleVersion', () => {
   beforeEach(() => {
diff --git a/test/manager/gradle/index.spec.ts b/lib/manager/gradle/index.spec.ts
similarity index 96%
rename from test/manager/gradle/index.spec.ts
rename to lib/manager/gradle/index.spec.ts
index 141cf4ca05..20cc691dde 100644
--- a/test/manager/gradle/index.spec.ts
+++ b/lib/manager/gradle/index.spec.ts
@@ -2,16 +2,16 @@ import { toUnix } from 'upath';
 import _fs from 'fs-extra';
 import fsReal from 'fs';
 import { exec as _exec } from 'child_process';
-import * as manager from '../../../lib/manager/gradle';
-import { platform as _platform, Platform } from '../../../lib/platform';
-import { envMock, mockExecAll } from '../../execUtil';
-import * as _env from '../../../lib/util/exec/env';
-import { mocked } from '../../util';
-import { BinarySource } from '../../../lib/util/exec/common';
+import * as manager from '.';
+import { platform as _platform, Platform } from '../../platform';
+import { envMock, mockExecAll } from '../../../test/execUtil';
+import * as _env from '../../util/exec/env';
+import { mocked } from '../../../test/util';
+import { BinarySource } from '../../util/exec/common';
 
 jest.mock('fs-extra');
 jest.mock('child_process');
-jest.mock('../../../lib/util/exec/env');
+jest.mock('../../util/exec/env');
 
 const platform: jest.Mocked<Platform> = _platform as any;
 const fs: jest.Mocked<typeof _fs> = _fs as any;
diff --git a/test/manager/helm-requirements/__snapshots__/extract.spec.ts.snap b/lib/manager/helm-requirements/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/helm-requirements/__snapshots__/extract.spec.ts.snap
rename to lib/manager/helm-requirements/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/helm-requirements/__snapshots__/update.spec.ts.snap b/lib/manager/helm-requirements/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/helm-requirements/__snapshots__/update.spec.ts.snap
rename to lib/manager/helm-requirements/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/helm-requirements/extract.spec.ts b/lib/manager/helm-requirements/extract.spec.ts
similarity index 97%
rename from test/manager/helm-requirements/extract.spec.ts
rename to lib/manager/helm-requirements/extract.spec.ts
index df1ec9f0e9..0723607e6a 100644
--- a/test/manager/helm-requirements/extract.spec.ts
+++ b/lib/manager/helm-requirements/extract.spec.ts
@@ -1,5 +1,5 @@
-import { extractPackageFile } from '../../../lib/manager/helm-requirements/extract';
-import { platform as _platform } from '../../../lib/platform';
+import { extractPackageFile } from './extract';
+import { platform as _platform } from '../../platform';
 
 const platform: any = _platform;
 
diff --git a/test/manager/helm-requirements/update.spec.ts b/lib/manager/helm-requirements/update.spec.ts
similarity index 97%
rename from test/manager/helm-requirements/update.spec.ts
rename to lib/manager/helm-requirements/update.spec.ts
index 81c8139f42..68e4de7802 100644
--- a/test/manager/helm-requirements/update.spec.ts
+++ b/lib/manager/helm-requirements/update.spec.ts
@@ -1,4 +1,4 @@
-import { updateDependency } from '../../../lib/manager/helm-requirements/update';
+import { updateDependency } from './update';
 
 describe('lib/manager/helm/extract', () => {
   describe('updateDependency()', () => {
diff --git a/test/manager/helmfile/__snapshots__/extract.spec.ts.snap b/lib/manager/helmfile/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/helmfile/__snapshots__/extract.spec.ts.snap
rename to lib/manager/helmfile/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/helmfile/__snapshots__/update.spec.ts.snap b/lib/manager/helmfile/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/helmfile/__snapshots__/update.spec.ts.snap
rename to lib/manager/helmfile/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/helmfile/extract.spec.ts b/lib/manager/helmfile/extract.spec.ts
similarity index 98%
rename from test/manager/helmfile/extract.spec.ts
rename to lib/manager/helmfile/extract.spec.ts
index 1360aa8a9f..d25d072ee1 100644
--- a/test/manager/helmfile/extract.spec.ts
+++ b/lib/manager/helmfile/extract.spec.ts
@@ -1,4 +1,4 @@
-import { extractPackageFile } from '../../../lib/manager/helmfile/extract';
+import { extractPackageFile } from './extract';
 
 describe('lib/manager/helmfile/extract', () => {
   describe('extractPackageFile()', () => {
diff --git a/test/manager/helmfile/update.spec.ts b/lib/manager/helmfile/update.spec.ts
similarity index 98%
rename from test/manager/helmfile/update.spec.ts
rename to lib/manager/helmfile/update.spec.ts
index 06cd8df1c5..4025077833 100644
--- a/test/manager/helmfile/update.spec.ts
+++ b/lib/manager/helmfile/update.spec.ts
@@ -1,4 +1,4 @@
-import { updateDependency } from '../../../lib/manager/helmfile/update';
+import { updateDependency } from './update';
 
 describe('lib/manager/helmfile/extract', () => {
   describe('updateDependency()', () => {
diff --git a/test/manager/homebrew/_fixtures/aalib.rb b/lib/manager/homebrew/__fixtures__/aalib.rb
similarity index 100%
rename from test/manager/homebrew/_fixtures/aalib.rb
rename to lib/manager/homebrew/__fixtures__/aalib.rb
diff --git a/test/manager/homebrew/_fixtures/aap.rb b/lib/manager/homebrew/__fixtures__/aap.rb
similarity index 100%
rename from test/manager/homebrew/_fixtures/aap.rb
rename to lib/manager/homebrew/__fixtures__/aap.rb
diff --git a/test/manager/homebrew/_fixtures/acmetool.rb b/lib/manager/homebrew/__fixtures__/acmetool.rb
similarity index 100%
rename from test/manager/homebrew/_fixtures/acmetool.rb
rename to lib/manager/homebrew/__fixtures__/acmetool.rb
diff --git a/test/manager/homebrew/_fixtures/aide.rb b/lib/manager/homebrew/__fixtures__/aide.rb
similarity index 100%
rename from test/manager/homebrew/_fixtures/aide.rb
rename to lib/manager/homebrew/__fixtures__/aide.rb
diff --git a/test/manager/homebrew/_fixtures/ibazel.rb b/lib/manager/homebrew/__fixtures__/ibazel.rb
similarity index 100%
rename from test/manager/homebrew/_fixtures/ibazel.rb
rename to lib/manager/homebrew/__fixtures__/ibazel.rb
diff --git a/test/manager/homebrew/__snapshots__/extract.spec.ts.snap b/lib/manager/homebrew/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/homebrew/__snapshots__/extract.spec.ts.snap
rename to lib/manager/homebrew/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/homebrew/__snapshots__/update.spec.ts.snap b/lib/manager/homebrew/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/homebrew/__snapshots__/update.spec.ts.snap
rename to lib/manager/homebrew/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/homebrew/extract.spec.ts b/lib/manager/homebrew/extract.spec.ts
similarity index 95%
rename from test/manager/homebrew/extract.spec.ts
rename to lib/manager/homebrew/extract.spec.ts
index 1993ba0bd4..112c757eb8 100644
--- a/test/manager/homebrew/extract.spec.ts
+++ b/lib/manager/homebrew/extract.spec.ts
@@ -1,18 +1,21 @@
 import fs from 'fs';
-import { extractPackageFile } from '../../../lib/manager/homebrew/extract';
+import { extractPackageFile } from './extract';
 
 const aalib = fs.readFileSync(
-  'test/manager/homebrew/_fixtures/aalib.rb',
+  'lib/manager/homebrew/__fixtures__/aalib.rb',
   'utf8'
 );
-const aap = fs.readFileSync('test/manager/homebrew/_fixtures/aap.rb', 'utf8');
+const aap = fs.readFileSync('lib/manager/homebrew/__fixtures__/aap.rb', 'utf8');
 const acmetool = fs.readFileSync(
-  'test/manager/homebrew/_fixtures/acmetool.rb',
+  'lib/manager/homebrew/__fixtures__/acmetool.rb',
+  'utf8'
+);
+const aide = fs.readFileSync(
+  'lib/manager/homebrew/__fixtures__/aide.rb',
   'utf8'
 );
-const aide = fs.readFileSync('test/manager/homebrew/_fixtures/aide.rb', 'utf8');
 const ibazel = fs.readFileSync(
-  'test/manager/homebrew/_fixtures/ibazel.rb',
+  'lib/manager/homebrew/__fixtures__/ibazel.rb',
   'utf8'
 );
 
diff --git a/test/manager/homebrew/update.spec.ts b/lib/manager/homebrew/update.spec.ts
similarity index 97%
rename from test/manager/homebrew/update.spec.ts
rename to lib/manager/homebrew/update.spec.ts
index 85bc3b79a4..c66887f47b 100644
--- a/test/manager/homebrew/update.spec.ts
+++ b/lib/manager/homebrew/update.spec.ts
@@ -1,15 +1,18 @@
 import fs from 'fs';
 import { fromStream as _fromStream } from 'hasha';
-import { updateDependency } from '../../../lib/manager/homebrew/update';
+import { updateDependency } from './update';
 
 jest.mock('hasha');
-jest.mock('../../../lib/util/got');
+jest.mock('../../util/got');
 
 const fromStream: jest.Mock<Promise<string>> = _fromStream as any;
 
-const aide = fs.readFileSync('test/manager/homebrew/_fixtures/aide.rb', 'utf8');
+const aide = fs.readFileSync(
+  'lib/manager/homebrew/__fixtures__/aide.rb',
+  'utf8'
+);
 const ibazel = fs.readFileSync(
-  'test/manager/homebrew/_fixtures/ibazel.rb',
+  'lib/manager/homebrew/__fixtures__/ibazel.rb',
   'utf8'
 );
 
diff --git a/test/manager/homebrew/util.spec.ts b/lib/manager/homebrew/util.spec.ts
similarity index 82%
rename from test/manager/homebrew/util.spec.ts
rename to lib/manager/homebrew/util.spec.ts
index 7276dd7bf9..b5213c02fe 100644
--- a/test/manager/homebrew/util.spec.ts
+++ b/lib/manager/homebrew/util.spec.ts
@@ -1,4 +1,4 @@
-import { skip } from '../../../lib/manager/homebrew/util';
+import { skip } from './util';
 
 describe('lib/manager/homebrew/util', () => {
   describe('skip()', () => {
diff --git a/test/manager/index.spec.ts b/lib/manager/index.spec.ts
similarity index 95%
rename from test/manager/index.spec.ts
rename to lib/manager/index.spec.ts
index 2b847612c1..352263e2b4 100644
--- a/test/manager/index.spec.ts
+++ b/lib/manager/index.spec.ts
@@ -1,4 +1,4 @@
-import * as manager from '../../lib/manager';
+import * as manager from '.';
 
 describe('manager', () => {
   describe('get()', () => {
diff --git a/test/manager/kubernetes/_fixtures/array-syntax.yaml b/lib/manager/kubernetes/__fixtures__/array-syntax.yaml
similarity index 100%
rename from test/manager/kubernetes/_fixtures/array-syntax.yaml
rename to lib/manager/kubernetes/__fixtures__/array-syntax.yaml
diff --git a/test/manager/kubernetes/_fixtures/configmap.yaml b/lib/manager/kubernetes/__fixtures__/configmap.yaml
similarity index 100%
rename from test/manager/kubernetes/_fixtures/configmap.yaml
rename to lib/manager/kubernetes/__fixtures__/configmap.yaml
diff --git a/test/manager/kubernetes/_fixtures/gitlab-ci.yaml b/lib/manager/kubernetes/__fixtures__/gitlab-ci.yaml
similarity index 100%
rename from test/manager/kubernetes/_fixtures/gitlab-ci.yaml
rename to lib/manager/kubernetes/__fixtures__/gitlab-ci.yaml
diff --git a/test/manager/kubernetes/_fixtures/kubernetes.yaml b/lib/manager/kubernetes/__fixtures__/kubernetes.yaml
similarity index 100%
rename from test/manager/kubernetes/_fixtures/kubernetes.yaml
rename to lib/manager/kubernetes/__fixtures__/kubernetes.yaml
diff --git a/test/manager/kubernetes/__snapshots__/extract.spec.ts.snap b/lib/manager/kubernetes/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/kubernetes/__snapshots__/extract.spec.ts.snap
rename to lib/manager/kubernetes/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/kubernetes/__snapshots__/update.spec.ts.snap b/lib/manager/kubernetes/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/kubernetes/__snapshots__/update.spec.ts.snap
rename to lib/manager/kubernetes/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/kubernetes/extract.spec.ts b/lib/manager/kubernetes/extract.spec.ts
similarity index 77%
rename from test/manager/kubernetes/extract.spec.ts
rename to lib/manager/kubernetes/extract.spec.ts
index ba871d08ec..de9bca52e3 100644
--- a/test/manager/kubernetes/extract.spec.ts
+++ b/lib/manager/kubernetes/extract.spec.ts
@@ -1,23 +1,23 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/kubernetes/extract';
+import { extractPackageFile } from './extract';
 
 const kubernetesImagesFile = readFileSync(
-  'test/manager/kubernetes/_fixtures/kubernetes.yaml',
+  'lib/manager/kubernetes/__fixtures__/kubernetes.yaml',
   'utf8'
 );
 
 const kubernetesConfigMapFile = readFileSync(
-  'test/manager/kubernetes/_fixtures/configmap.yaml',
+  'lib/manager/kubernetes/__fixtures__/configmap.yaml',
   'utf8'
 );
 
 const kubernetesArraySyntaxFile = readFileSync(
-  'test/manager/kubernetes/_fixtures/array-syntax.yaml',
+  'lib/manager/kubernetes/__fixtures__/array-syntax.yaml',
   'utf8'
 );
 
 const otherYamlFile = readFileSync(
-  'test/manager/kubernetes/_fixtures/gitlab-ci.yaml',
+  'lib/manager/kubernetes/__fixtures__/gitlab-ci.yaml',
   'utf8'
 );
 
diff --git a/test/manager/kubernetes/update.spec.ts b/lib/manager/kubernetes/update.spec.ts
similarity index 89%
rename from test/manager/kubernetes/update.spec.ts
rename to lib/manager/kubernetes/update.spec.ts
index 036a82fa14..100422c20a 100644
--- a/test/manager/kubernetes/update.spec.ts
+++ b/lib/manager/kubernetes/update.spec.ts
@@ -1,13 +1,13 @@
 import { readFileSync } from 'fs';
-import { updateDependency } from '../../../lib/manager/kubernetes/update';
+import { updateDependency } from './update';
 
 const yamlFile = readFileSync(
-  'test/manager/kubernetes/_fixtures/kubernetes.yaml',
+  'lib/manager/kubernetes/__fixtures__/kubernetes.yaml',
   'utf8'
 );
 
 const arraySyntaxFile = readFileSync(
-  'test/manager/kubernetes/_fixtures/array-syntax.yaml',
+  'lib/manager/kubernetes/__fixtures__/array-syntax.yaml',
   'utf8'
 );
 
diff --git a/test/manager/leiningen/_fixtures/project.clj b/lib/manager/leiningen/__fixtures__/project.clj
similarity index 100%
rename from test/manager/leiningen/_fixtures/project.clj
rename to lib/manager/leiningen/__fixtures__/project.clj
diff --git a/test/manager/leiningen/__snapshots__/extract.spec.ts.snap b/lib/manager/leiningen/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/leiningen/__snapshots__/extract.spec.ts.snap
rename to lib/manager/leiningen/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/leiningen/extract.spec.ts b/lib/manager/leiningen/extract.spec.ts
similarity index 85%
rename from test/manager/leiningen/extract.spec.ts
rename to lib/manager/leiningen/extract.spec.ts
index 593d675860..4a61d4b134 100644
--- a/test/manager/leiningen/extract.spec.ts
+++ b/lib/manager/leiningen/extract.spec.ts
@@ -1,15 +1,11 @@
 /* eslint-disable no-template-curly-in-string */
 import { readFileSync } from 'fs';
 import { resolve } from 'path';
-import {
-  trimAtKey,
-  extractFromVectors,
-  extractPackageFile,
-} from '../../../lib/manager/leiningen/extract';
-import { DATASOURCE_MAVEN } from '../../../lib/constants/data-binary-source';
+import { trimAtKey, extractFromVectors, extractPackageFile } from './extract';
+import { DATASOURCE_MAVEN } from '../../constants/data-binary-source';
 
 const leinProjectClj = readFileSync(
-  resolve(__dirname, `./_fixtures/project.clj`),
+  resolve(__dirname, `./__fixtures__/project.clj`),
   'utf8'
 );
 
diff --git a/test/manager/leiningen/update.spec.ts b/lib/manager/leiningen/update.spec.ts
similarity index 76%
rename from test/manager/leiningen/update.spec.ts
rename to lib/manager/leiningen/update.spec.ts
index 10d7452ee8..6a9ae00db5 100644
--- a/test/manager/leiningen/update.spec.ts
+++ b/lib/manager/leiningen/update.spec.ts
@@ -1,11 +1,11 @@
 /* eslint-disable no-template-curly-in-string */
 import { readFileSync } from 'fs';
 import { resolve } from 'path';
-import { extractPackageFile } from '../../../lib/manager/leiningen/extract';
-import { updateDependency } from '../../../lib/manager/leiningen/update';
+import { extractPackageFile } from './extract';
+import { updateDependency } from './update';
 
 const leinProjectClj = readFileSync(
-  resolve(__dirname, `./_fixtures/project.clj`),
+  resolve(__dirname, `./__fixtures__/project.clj`),
   'utf8'
 );
 
diff --git a/test/manager/manager-docs.spec.ts b/lib/manager/manager-docs.spec.ts
similarity index 100%
rename from test/manager/manager-docs.spec.ts
rename to lib/manager/manager-docs.spec.ts
diff --git a/test/manager/maven/_fixtures/child.pom.xml b/lib/manager/maven/__fixtures__/child.pom.xml
similarity index 100%
rename from test/manager/maven/_fixtures/child.pom.xml
rename to lib/manager/maven/__fixtures__/child.pom.xml
diff --git a/test/manager/maven/_fixtures/grouping.pom.xml b/lib/manager/maven/__fixtures__/grouping.pom.xml
similarity index 100%
rename from test/manager/maven/_fixtures/grouping.pom.xml
rename to lib/manager/maven/__fixtures__/grouping.pom.xml
diff --git a/test/manager/maven/_fixtures/minimum.pom.xml b/lib/manager/maven/__fixtures__/minimum.pom.xml
similarity index 100%
rename from test/manager/maven/_fixtures/minimum.pom.xml
rename to lib/manager/maven/__fixtures__/minimum.pom.xml
diff --git a/test/manager/maven/_fixtures/parent.pom.xml b/lib/manager/maven/__fixtures__/parent.pom.xml
similarity index 100%
rename from test/manager/maven/_fixtures/parent.pom.xml
rename to lib/manager/maven/__fixtures__/parent.pom.xml
diff --git a/test/manager/maven/_fixtures/simple.pom.xml b/lib/manager/maven/__fixtures__/simple.pom.xml
similarity index 100%
rename from test/manager/maven/_fixtures/simple.pom.xml
rename to lib/manager/maven/__fixtures__/simple.pom.xml
diff --git a/test/manager/maven/__snapshots__/extract.spec.ts.snap b/lib/manager/maven/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/maven/__snapshots__/extract.spec.ts.snap
rename to lib/manager/maven/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/maven/__snapshots__/index.spec.ts.snap b/lib/manager/maven/__snapshots__/index.spec.ts.snap
similarity index 100%
rename from test/manager/maven/__snapshots__/index.spec.ts.snap
rename to lib/manager/maven/__snapshots__/index.spec.ts.snap
diff --git a/test/manager/maven/extract.spec.ts b/lib/manager/maven/extract.spec.ts
similarity index 83%
rename from test/manager/maven/extract.spec.ts
rename to lib/manager/maven/extract.spec.ts
index b209b00259..f1531d2f64 100644
--- a/test/manager/maven/extract.spec.ts
+++ b/lib/manager/maven/extract.spec.ts
@@ -1,15 +1,15 @@
 /* eslint-disable no-template-curly-in-string */
 import { readFileSync } from 'fs';
 import { resolve } from 'path';
-import { extractPackage } from '../../../lib/manager/maven/extract';
+import { extractPackage } from './extract';
 
 const minimumContent = readFileSync(
-  resolve(__dirname, `./_fixtures/minimum.pom.xml`),
+  resolve(__dirname, `./__fixtures__/minimum.pom.xml`),
   'utf8'
 );
 
 const simpleContent = readFileSync(
-  resolve(__dirname, `./_fixtures/simple.pom.xml`),
+  resolve(__dirname, `./__fixtures__/simple.pom.xml`),
   'utf8'
 );
 
diff --git a/test/manager/maven/index.spec.ts b/lib/manager/maven/index.spec.ts
similarity index 92%
rename from test/manager/maven/index.spec.ts
rename to lib/manager/maven/index.spec.ts
index 081ce23e79..86b6561850 100644
--- a/test/manager/maven/index.spec.ts
+++ b/lib/manager/maven/index.spec.ts
@@ -1,31 +1,25 @@
 import { readFileSync } from 'fs';
-import {
-  extractPackage,
-  resolveParents,
-} from '../../../lib/manager/maven/extract';
-import {
-  extractAllPackageFiles,
-  updateDependency,
-} from '../../../lib/manager/maven/index';
-import { PackageDependency, PackageFile } from '../../../lib/manager/common';
-import { platform as _platform } from '../../../lib/platform';
+import { extractPackage, resolveParents } from './extract';
+import { extractAllPackageFiles, updateDependency } from './index';
+import { PackageDependency, PackageFile } from '../common';
+import { platform as _platform } from '../../platform';
 
 const platform: any = _platform;
 
 const pomContent = readFileSync(
-  'test/manager/maven/_fixtures/simple.pom.xml',
+  'lib/manager/maven/__fixtures__/simple.pom.xml',
   'utf8'
 );
 const pomParent = readFileSync(
-  'test/manager/maven/_fixtures/parent.pom.xml',
+  'lib/manager/maven/__fixtures__/parent.pom.xml',
   'utf8'
 );
 const pomChild = readFileSync(
-  'test/manager/maven/_fixtures/child.pom.xml',
+  'lib/manager/maven/__fixtures__/child.pom.xml',
   'utf8'
 );
 const origContent = readFileSync(
-  'test/manager/maven/_fixtures/grouping.pom.xml',
+  'lib/manager/maven/__fixtures__/grouping.pom.xml',
   'utf8'
 );
 
diff --git a/test/manager/meteor/_fixtures/package-1.js b/lib/manager/meteor/__fixtures__/package-1.js
similarity index 100%
rename from test/manager/meteor/_fixtures/package-1.js
rename to lib/manager/meteor/__fixtures__/package-1.js
diff --git a/test/manager/meteor/_fixtures/package-2.js b/lib/manager/meteor/__fixtures__/package-2.js
similarity index 100%
rename from test/manager/meteor/_fixtures/package-2.js
rename to lib/manager/meteor/__fixtures__/package-2.js
diff --git a/test/manager/meteor/__snapshots__/extract.spec.ts.snap b/lib/manager/meteor/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/meteor/__snapshots__/extract.spec.ts.snap
rename to lib/manager/meteor/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/meteor/__snapshots__/update.spec.ts.snap b/lib/manager/meteor/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/meteor/__snapshots__/update.spec.ts.snap
rename to lib/manager/meteor/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/meteor/extract.spec.ts b/lib/manager/meteor/extract.spec.ts
similarity index 79%
rename from test/manager/meteor/extract.spec.ts
rename to lib/manager/meteor/extract.spec.ts
index e4b9a68188..5219e7a91c 100644
--- a/test/manager/meteor/extract.spec.ts
+++ b/lib/manager/meteor/extract.spec.ts
@@ -1,9 +1,9 @@
 import { readFileSync } from 'fs';
 import { resolve } from 'path';
-import { extractPackageFile } from '../../../lib/manager/meteor/extract';
+import { extractPackageFile } from './extract';
 
 function readFixture(fixture: string) {
-  return readFileSync(resolve(__dirname, `./_fixtures/${fixture}`), 'utf8');
+  return readFileSync(resolve(__dirname, `./__fixtures__/${fixture}`), 'utf8');
 }
 
 const input01Content = readFixture('package-1.js');
diff --git a/test/manager/meteor/update.spec.ts b/lib/manager/meteor/update.spec.ts
similarity index 89%
rename from test/manager/meteor/update.spec.ts
rename to lib/manager/meteor/update.spec.ts
index 5c7acc426b..1f00b68a54 100644
--- a/test/manager/meteor/update.spec.ts
+++ b/lib/manager/meteor/update.spec.ts
@@ -1,9 +1,9 @@
 import { readFileSync } from 'fs';
 import { resolve } from 'path';
-import { updateDependency } from '../../../lib/manager/meteor/update';
+import { updateDependency } from './update';
 
 function readFixture(fixture: string) {
-  return readFileSync(resolve(__dirname, `./_fixtures/${fixture}`), 'utf8');
+  return readFileSync(resolve(__dirname, `./__fixtures__/${fixture}`), 'utf8');
 }
 
 const input01Content = readFixture('package-1.js');
diff --git a/test/manager/mix/_fixtures/mix.exs b/lib/manager/mix/__fixtures__/mix.exs
similarity index 100%
rename from test/manager/mix/_fixtures/mix.exs
rename to lib/manager/mix/__fixtures__/mix.exs
diff --git a/test/manager/mix/__snapshots__/artifacts.spec.ts.snap b/lib/manager/mix/__snapshots__/artifacts.spec.ts.snap
similarity index 100%
rename from test/manager/mix/__snapshots__/artifacts.spec.ts.snap
rename to lib/manager/mix/__snapshots__/artifacts.spec.ts.snap
diff --git a/test/manager/mix/__snapshots__/extract.spec.ts.snap b/lib/manager/mix/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/mix/__snapshots__/extract.spec.ts.snap
rename to lib/manager/mix/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/mix/artifacts.spec.ts b/lib/manager/mix/artifacts.spec.ts
similarity index 88%
rename from test/manager/mix/artifacts.spec.ts
rename to lib/manager/mix/artifacts.spec.ts
index 621d271d31..c7aa70267d 100644
--- a/test/manager/mix/artifacts.spec.ts
+++ b/lib/manager/mix/artifacts.spec.ts
@@ -1,11 +1,11 @@
 import _fs from 'fs-extra';
 import { exec as _exec } from 'child_process';
-import { platform as _platform } from '../../../lib/platform';
-import { updateArtifacts } from '../../../lib/manager/mix';
-import { mocked } from '../../util';
-import { envMock, mockExecAll } from '../../execUtil';
-import * as _env from '../../../lib/util/exec/env';
-import { BinarySource } from '../../../lib/util/exec/common';
+import { platform as _platform } from '../../platform';
+import { updateArtifacts } from '.';
+import { mocked } from '../../../test/util';
+import { envMock, mockExecAll } from '../../../test/execUtil';
+import * as _env from '../../util/exec/env';
+import { BinarySource } from '../../util/exec/common';
 
 const fs: jest.Mocked<typeof _fs> = _fs as any;
 const exec: jest.Mock<typeof _exec> = _exec as any;
@@ -14,8 +14,8 @@ const env = mocked(_env);
 
 jest.mock('fs-extra');
 jest.mock('child_process');
-jest.mock('../../../lib/platform');
-jest.mock('../../../lib/util/exec/env');
+jest.mock('../../platform');
+jest.mock('../../util/exec/env');
 
 const config = {
   localDir: '/tmp/github/some/repo',
diff --git a/test/manager/mix/extract.spec.ts b/lib/manager/mix/extract.spec.ts
similarity index 80%
rename from test/manager/mix/extract.spec.ts
rename to lib/manager/mix/extract.spec.ts
index ea4ccd93e0..ac6d5aebe5 100644
--- a/test/manager/mix/extract.spec.ts
+++ b/lib/manager/mix/extract.spec.ts
@@ -1,9 +1,9 @@
 import fs from 'fs-extra';
 import path from 'path';
-import { extractPackageFile } from '../../../lib/manager/mix';
+import { extractPackageFile } from '.';
 
 const sample = fs.readFileSync(
-  path.resolve(__dirname, './_fixtures/mix.exs'),
+  path.resolve(__dirname, './__fixtures__/mix.exs'),
   'utf-8'
 );
 
diff --git a/test/manager/mix/update.spec.ts b/lib/manager/mix/update.spec.ts
similarity index 92%
rename from test/manager/mix/update.spec.ts
rename to lib/manager/mix/update.spec.ts
index 3c7bdd48d8..1ecd8425b5 100644
--- a/test/manager/mix/update.spec.ts
+++ b/lib/manager/mix/update.spec.ts
@@ -1,9 +1,9 @@
 import fs from 'fs-extra';
 import path from 'path';
-import { updateDependency } from '../../../lib/manager/mix';
+import { updateDependency } from '.';
 
 const sample = fs.readFileSync(
-  path.resolve(__dirname, './_fixtures/mix.exs'),
+  path.resolve(__dirname, './__fixtures__/mix.exs'),
   'utf-8'
 );
 
diff --git a/test/manager/npm/_fixtures/inputs/01-glob.json b/lib/manager/npm/__fixtures__/inputs/01-glob.json
similarity index 100%
rename from test/manager/npm/_fixtures/inputs/01-glob.json
rename to lib/manager/npm/__fixtures__/inputs/01-glob.json
diff --git a/test/manager/npm/_fixtures/inputs/01.json b/lib/manager/npm/__fixtures__/inputs/01.json
similarity index 100%
rename from test/manager/npm/_fixtures/inputs/01.json
rename to lib/manager/npm/__fixtures__/inputs/01.json
diff --git a/test/manager/npm/_fixtures/inputs/02.json b/lib/manager/npm/__fixtures__/inputs/02.json
similarity index 100%
rename from test/manager/npm/_fixtures/inputs/02.json
rename to lib/manager/npm/__fixtures__/inputs/02.json
diff --git a/test/manager/npm/_fixtures/inputs/workspaces.json b/lib/manager/npm/__fixtures__/inputs/workspaces.json
similarity index 100%
rename from test/manager/npm/_fixtures/inputs/workspaces.json
rename to lib/manager/npm/__fixtures__/inputs/workspaces.json
diff --git a/test/manager/npm/_fixtures/invalid-name.json b/lib/manager/npm/__fixtures__/invalid-name.json
similarity index 100%
rename from test/manager/npm/_fixtures/invalid-name.json
rename to lib/manager/npm/__fixtures__/invalid-name.json
diff --git a/test/manager/npm/_fixtures/is-object.json b/lib/manager/npm/__fixtures__/is-object.json
similarity index 100%
rename from test/manager/npm/_fixtures/is-object.json
rename to lib/manager/npm/__fixtures__/is-object.json
diff --git a/test/manager/npm/_fixtures/outputs/011.json b/lib/manager/npm/__fixtures__/outputs/011.json
similarity index 100%
rename from test/manager/npm/_fixtures/outputs/011.json
rename to lib/manager/npm/__fixtures__/outputs/011.json
diff --git a/test/manager/npm/_fixtures/outputs/012.json b/lib/manager/npm/__fixtures__/outputs/012.json
similarity index 100%
rename from test/manager/npm/_fixtures/outputs/012.json
rename to lib/manager/npm/__fixtures__/outputs/012.json
diff --git a/test/manager/npm/_fixtures/outputs/013.json b/lib/manager/npm/__fixtures__/outputs/013.json
similarity index 100%
rename from test/manager/npm/_fixtures/outputs/013.json
rename to lib/manager/npm/__fixtures__/outputs/013.json
diff --git a/test/manager/npm/__snapshots__/update.spec.ts.snap b/lib/manager/npm/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/npm/__snapshots__/update.spec.ts.snap
rename to lib/manager/npm/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/npm/extract/__snapshots__/index.spec.ts.snap b/lib/manager/npm/extract/__snapshots__/index.spec.ts.snap
similarity index 100%
rename from test/manager/npm/extract/__snapshots__/index.spec.ts.snap
rename to lib/manager/npm/extract/__snapshots__/index.spec.ts.snap
diff --git a/test/manager/npm/extract/__snapshots__/locked-versions.spec.ts.snap b/lib/manager/npm/extract/__snapshots__/locked-versions.spec.ts.snap
similarity index 100%
rename from test/manager/npm/extract/__snapshots__/locked-versions.spec.ts.snap
rename to lib/manager/npm/extract/__snapshots__/locked-versions.spec.ts.snap
diff --git a/test/manager/npm/extract/__snapshots__/monorepo.spec.ts.snap b/lib/manager/npm/extract/__snapshots__/monorepo.spec.ts.snap
similarity index 100%
rename from test/manager/npm/extract/__snapshots__/monorepo.spec.ts.snap
rename to lib/manager/npm/extract/__snapshots__/monorepo.spec.ts.snap
diff --git a/test/manager/npm/extract/__snapshots__/npm.spec.ts.snap b/lib/manager/npm/extract/__snapshots__/npm.spec.ts.snap
similarity index 100%
rename from test/manager/npm/extract/__snapshots__/npm.spec.ts.snap
rename to lib/manager/npm/extract/__snapshots__/npm.spec.ts.snap
diff --git a/test/manager/npm/extract/__snapshots__/yarn.spec.ts.snap b/lib/manager/npm/extract/__snapshots__/yarn.spec.ts.snap
similarity index 100%
rename from test/manager/npm/extract/__snapshots__/yarn.spec.ts.snap
rename to lib/manager/npm/extract/__snapshots__/yarn.spec.ts.snap
diff --git a/test/manager/npm/extract/index.spec.ts b/lib/manager/npm/extract/index.spec.ts
similarity index 97%
rename from test/manager/npm/extract/index.spec.ts
rename to lib/manager/npm/extract/index.spec.ts
index fa0154a8f5..55fefce357 100644
--- a/test/manager/npm/extract/index.spec.ts
+++ b/lib/manager/npm/extract/index.spec.ts
@@ -1,8 +1,8 @@
 import fs from 'fs';
 import path from 'path';
-import * as npmExtract from '../../../../lib/manager/npm/extract';
-import { getConfig } from '../../../../lib/config/defaults';
-import { platform as _platform } from '../../../../lib/platform';
+import * as npmExtract from '.';
+import { getConfig } from '../../../config/defaults';
+import { platform as _platform } from '../../../platform';
 
 // TODO: fix types
 const defaultConfig = getConfig() as any;
@@ -10,7 +10,7 @@ const platform: any = _platform;
 
 function readFixture(fixture) {
   return fs.readFileSync(
-    path.resolve(__dirname, `../_fixtures/${fixture}`),
+    path.resolve(__dirname, `../__fixtures__/${fixture}`),
     'utf8'
   );
 }
diff --git a/test/manager/npm/extract/locked-versions.spec.ts b/lib/manager/npm/extract/locked-versions.spec.ts
similarity index 84%
rename from test/manager/npm/extract/locked-versions.spec.ts
rename to lib/manager/npm/extract/locked-versions.spec.ts
index 3ec6d05d27..af28c9cde1 100644
--- a/test/manager/npm/extract/locked-versions.spec.ts
+++ b/lib/manager/npm/extract/locked-versions.spec.ts
@@ -1,12 +1,12 @@
-import { getLockedVersions } from '../../../../lib/manager/npm/extract/locked-versions';
+import { getLockedVersions } from './locked-versions';
 
 /** @type any */
-const npm = require('../../../../lib/manager/npm/extract/npm');
+const npm = require('./npm');
 /** @type any */
-const yarn = require('../../../../lib/manager/npm/extract/yarn');
+const yarn = require('./yarn');
 
-jest.mock('../../../../lib/manager/npm/extract/npm');
-jest.mock('../../../../lib/manager/npm/extract/yarn');
+jest.mock('./npm');
+jest.mock('./yarn');
 
 describe('manager/npm/extract/locked-versions', () => {
   describe('.getLockedVersions()', () => {
diff --git a/test/manager/npm/extract/monorepo.spec.ts b/lib/manager/npm/extract/monorepo.spec.ts
similarity index 96%
rename from test/manager/npm/extract/monorepo.spec.ts
rename to lib/manager/npm/extract/monorepo.spec.ts
index 0eb257519a..0ba304d20c 100644
--- a/test/manager/npm/extract/monorepo.spec.ts
+++ b/lib/manager/npm/extract/monorepo.spec.ts
@@ -1,4 +1,4 @@
-import { detectMonorepos } from '../../../../lib/manager/npm/extract/monorepo';
+import { detectMonorepos } from './monorepo';
 
 describe('manager/npm/extract', () => {
   describe('.extractPackageFile()', () => {
diff --git a/test/manager/npm/extract/npm.spec.ts b/lib/manager/npm/extract/npm.spec.ts
similarity index 87%
rename from test/manager/npm/extract/npm.spec.ts
rename to lib/manager/npm/extract/npm.spec.ts
index 09ebd5e9f1..1a5b7c5626 100644
--- a/test/manager/npm/extract/npm.spec.ts
+++ b/lib/manager/npm/extract/npm.spec.ts
@@ -1,6 +1,6 @@
 import { readFileSync } from 'fs';
-import { getNpmLock } from '../../../../lib/manager/npm/extract/npm';
-import { platform as _platform } from '../../../../lib/platform';
+import { getNpmLock } from './npm';
+import { platform as _platform } from '../../../platform';
 
 const platform: any = _platform;
 
diff --git a/test/manager/npm/extract/type.spec.ts b/lib/manager/npm/extract/type.spec.ts
similarity index 87%
rename from test/manager/npm/extract/type.spec.ts
rename to lib/manager/npm/extract/type.spec.ts
index fffc6565ee..4d7901c307 100644
--- a/test/manager/npm/extract/type.spec.ts
+++ b/lib/manager/npm/extract/type.spec.ts
@@ -1,4 +1,4 @@
-import { mightBeABrowserLibrary } from '../../../../lib/manager/npm/extract/type';
+import { mightBeABrowserLibrary } from './type';
 
 describe('manager/npm/extract/type', () => {
   describe('.mightBeABrowserLibrary()', () => {
diff --git a/test/manager/npm/extract/yarn.spec.ts b/lib/manager/npm/extract/yarn.spec.ts
similarity index 84%
rename from test/manager/npm/extract/yarn.spec.ts
rename to lib/manager/npm/extract/yarn.spec.ts
index f991f890d6..e8cf1f19d5 100644
--- a/test/manager/npm/extract/yarn.spec.ts
+++ b/lib/manager/npm/extract/yarn.spec.ts
@@ -1,6 +1,6 @@
 import { readFileSync } from 'fs';
-import { getYarnLock } from '../../../../lib/manager/npm/extract/yarn';
-import { platform as _platform } from '../../../../lib/platform';
+import { getYarnLock } from './yarn';
+import { platform as _platform } from '../../../platform';
 
 const platform: any = _platform;
 
diff --git a/test/manager/npm/range.spec.ts b/lib/manager/npm/range.spec.ts
similarity index 92%
rename from test/manager/npm/range.spec.ts
rename to lib/manager/npm/range.spec.ts
index fcf4314cd5..ce8962793c 100644
--- a/test/manager/npm/range.spec.ts
+++ b/lib/manager/npm/range.spec.ts
@@ -1,5 +1,5 @@
-import { getRangeStrategy } from '../../../lib/manager/npm';
-import { RangeConfig } from '../../../lib/manager/common';
+import { getRangeStrategy } from '.';
+import { RangeConfig } from '../common';
 
 describe('getRangeStrategy', () => {
   it('returns same if not auto', () => {
diff --git a/test/manager/npm/update.spec.ts b/lib/manager/npm/update.spec.ts
similarity index 97%
rename from test/manager/npm/update.spec.ts
rename to lib/manager/npm/update.spec.ts
index 4b852ea26e..98354a0740 100644
--- a/test/manager/npm/update.spec.ts
+++ b/lib/manager/npm/update.spec.ts
@@ -1,10 +1,10 @@
 import fs from 'fs';
 import path from 'path';
-import * as npmUpdater from '../../../lib/manager/npm/update';
+import * as npmUpdater from './update';
 
 function readFixture(fixture) {
   return fs.readFileSync(
-    path.resolve(__dirname, `./_fixtures/${fixture}`),
+    path.resolve(__dirname, `./__fixtures__/${fixture}`),
     'utf8'
   );
 }
@@ -193,7 +193,7 @@ describe('workers/branch/package-json', () => {
           throw new Error('semver inc');
         },
       }));
-      const npmUpdater1 = await import('../../../lib/manager/npm/update');
+      const npmUpdater1 = await import('./update');
       const res = npmUpdater1.bumpPackageVersion(content, '0.0.2', true as any);
       expect(res).toEqual(content);
     });
diff --git a/test/manager/nuget/__snapshots__/extract.spec.ts.snap b/lib/manager/nuget/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/nuget/__snapshots__/extract.spec.ts.snap
rename to lib/manager/nuget/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/nuget/__snapshots__/update.spec.ts.snap b/lib/manager/nuget/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/nuget/__snapshots__/update.spec.ts.snap
rename to lib/manager/nuget/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/nuget/extract.spec.ts b/lib/manager/nuget/extract.spec.ts
similarity index 88%
rename from test/manager/nuget/extract.spec.ts
rename to lib/manager/nuget/extract.spec.ts
index 959918f94f..87c6235944 100644
--- a/test/manager/nuget/extract.spec.ts
+++ b/lib/manager/nuget/extract.spec.ts
@@ -1,5 +1,5 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/nuget/extract';
+import { extractPackageFile } from './extract';
 
 const sample = readFileSync(
   'test/datasource/nuget/_fixtures/sample.csproj',
diff --git a/test/manager/nuget/update.spec.ts b/lib/manager/nuget/update.spec.ts
similarity index 94%
rename from test/manager/nuget/update.spec.ts
rename to lib/manager/nuget/update.spec.ts
index a0a5c61b06..a829cb806b 100644
--- a/test/manager/nuget/update.spec.ts
+++ b/lib/manager/nuget/update.spec.ts
@@ -1,5 +1,5 @@
 import { readFileSync } from 'fs';
-import { updateDependency } from '../../../lib/manager/nuget/update';
+import { updateDependency } from './update';
 
 const csProj = readFileSync(
   'test/datasource/nuget/_fixtures/sample.csproj',
diff --git a/test/manager/nvm/__snapshots__/extract.spec.ts.snap b/lib/manager/nvm/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/nvm/__snapshots__/extract.spec.ts.snap
rename to lib/manager/nvm/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/nvm/__snapshots__/update.spec.ts.snap b/lib/manager/nvm/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/nvm/__snapshots__/update.spec.ts.snap
rename to lib/manager/nvm/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/nvm/extract.spec.ts b/lib/manager/nvm/extract.spec.ts
similarity index 87%
rename from test/manager/nvm/extract.spec.ts
rename to lib/manager/nvm/extract.spec.ts
index 72c24462fa..bf17e6e5d6 100644
--- a/test/manager/nvm/extract.spec.ts
+++ b/lib/manager/nvm/extract.spec.ts
@@ -1,4 +1,4 @@
-import { extractPackageFile } from '../../../lib/manager/nvm/extract';
+import { extractPackageFile } from './extract';
 
 describe('lib/manager/nvm/extract', () => {
   describe('extractPackageFile()', () => {
diff --git a/test/manager/nvm/update.spec.ts b/lib/manager/nvm/update.spec.ts
similarity index 80%
rename from test/manager/nvm/update.spec.ts
rename to lib/manager/nvm/update.spec.ts
index 93fd26b5e6..a12cd2f71a 100644
--- a/test/manager/nvm/update.spec.ts
+++ b/lib/manager/nvm/update.spec.ts
@@ -1,4 +1,4 @@
-import { updateDependency } from '../../../lib/manager/nvm/update';
+import { updateDependency } from './update';
 
 describe('manager/nvm/update', () => {
   describe('updateDependency', () => {
diff --git a/test/manager/pip_requirements/_fixtures/requirements1.txt b/lib/manager/pip_requirements/__fixtures__/requirements1.txt
similarity index 100%
rename from test/manager/pip_requirements/_fixtures/requirements1.txt
rename to lib/manager/pip_requirements/__fixtures__/requirements1.txt
diff --git a/test/manager/pip_requirements/_fixtures/requirements2.txt b/lib/manager/pip_requirements/__fixtures__/requirements2.txt
similarity index 100%
rename from test/manager/pip_requirements/_fixtures/requirements2.txt
rename to lib/manager/pip_requirements/__fixtures__/requirements2.txt
diff --git a/test/manager/pip_requirements/_fixtures/requirements3.txt b/lib/manager/pip_requirements/__fixtures__/requirements3.txt
similarity index 100%
rename from test/manager/pip_requirements/_fixtures/requirements3.txt
rename to lib/manager/pip_requirements/__fixtures__/requirements3.txt
diff --git a/test/manager/pip_requirements/_fixtures/requirements4.txt b/lib/manager/pip_requirements/__fixtures__/requirements4.txt
similarity index 100%
rename from test/manager/pip_requirements/_fixtures/requirements4.txt
rename to lib/manager/pip_requirements/__fixtures__/requirements4.txt
diff --git a/test/manager/pip_requirements/_fixtures/requirements5.txt b/lib/manager/pip_requirements/__fixtures__/requirements5.txt
similarity index 100%
rename from test/manager/pip_requirements/_fixtures/requirements5.txt
rename to lib/manager/pip_requirements/__fixtures__/requirements5.txt
diff --git a/test/manager/pip_requirements/_fixtures/requirements6.txt b/lib/manager/pip_requirements/__fixtures__/requirements6.txt
similarity index 100%
rename from test/manager/pip_requirements/_fixtures/requirements6.txt
rename to lib/manager/pip_requirements/__fixtures__/requirements6.txt
diff --git a/test/manager/pip_requirements/__snapshots__/extract.spec.ts.snap b/lib/manager/pip_requirements/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/pip_requirements/__snapshots__/extract.spec.ts.snap
rename to lib/manager/pip_requirements/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/pip_requirements/__snapshots__/update.spec.ts.snap b/lib/manager/pip_requirements/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/pip_requirements/__snapshots__/update.spec.ts.snap
rename to lib/manager/pip_requirements/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/pip_requirements/extract.spec.ts b/lib/manager/pip_requirements/extract.spec.ts
similarity index 86%
rename from test/manager/pip_requirements/extract.spec.ts
rename to lib/manager/pip_requirements/extract.spec.ts
index bbc50d8101..a961a81298 100644
--- a/test/manager/pip_requirements/extract.spec.ts
+++ b/lib/manager/pip_requirements/extract.spec.ts
@@ -1,31 +1,31 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/pip_requirements/extract';
+import { extractPackageFile } from './extract';
 
 const requirements1 = readFileSync(
-  'test/manager/pip_requirements/_fixtures/requirements1.txt',
+  'lib/manager/pip_requirements/__fixtures__/requirements1.txt',
   'utf8'
 );
 const requirements2 = readFileSync(
-  'test/manager/pip_requirements/_fixtures/requirements2.txt',
+  'lib/manager/pip_requirements/__fixtures__/requirements2.txt',
   'utf8'
 );
 const requirements3 = readFileSync(
-  'test/manager/pip_requirements/_fixtures/requirements3.txt',
+  'lib/manager/pip_requirements/__fixtures__/requirements3.txt',
   'utf8'
 );
 
 const requirements4 = readFileSync(
-  'test/manager/pip_requirements/_fixtures/requirements4.txt',
+  'lib/manager/pip_requirements/__fixtures__/requirements4.txt',
   'utf8'
 );
 
 const requirements5 = readFileSync(
-  'test/manager/pip_requirements/_fixtures/requirements5.txt',
+  'lib/manager/pip_requirements/__fixtures__/requirements5.txt',
   'utf8'
 );
 
 const requirements6 = readFileSync(
-  'test/manager/pip_requirements/_fixtures/requirements6.txt',
+  'lib/manager/pip_requirements/__fixtures__/requirements6.txt',
   'utf8'
 );
 
diff --git a/test/manager/pip_requirements/range.spec.ts b/lib/manager/pip_requirements/range.spec.ts
similarity index 72%
rename from test/manager/pip_requirements/range.spec.ts
rename to lib/manager/pip_requirements/range.spec.ts
index 1aa41f835d..72d07ac6e7 100644
--- a/test/manager/pip_requirements/range.spec.ts
+++ b/lib/manager/pip_requirements/range.spec.ts
@@ -1,5 +1,5 @@
-import { getRangeStrategy } from '../../../lib/manager/pip_requirements';
-import { RangeConfig } from '../../../lib/manager/common';
+import { getRangeStrategy } from '.';
+import { RangeConfig } from '../common';
 
 describe('getRangeStrategy', () => {
   it('returns same if not auto', () => {
diff --git a/test/manager/pip_requirements/update.spec.ts b/lib/manager/pip_requirements/update.spec.ts
similarity index 88%
rename from test/manager/pip_requirements/update.spec.ts
rename to lib/manager/pip_requirements/update.spec.ts
index 157336e11e..69b85f9af1 100644
--- a/test/manager/pip_requirements/update.spec.ts
+++ b/lib/manager/pip_requirements/update.spec.ts
@@ -1,28 +1,28 @@
 import { readFileSync } from 'fs';
-import { updateDependency } from '../../../lib/manager/pip_requirements/update';
+import { updateDependency } from './update';
 
 const requirements = readFileSync(
-  'test/manager/pip_requirements/_fixtures/requirements1.txt',
+  'lib/manager/pip_requirements/__fixtures__/requirements1.txt',
   'utf8'
 );
 
 const requirements3 = readFileSync(
-  'test/manager/pip_requirements/_fixtures/requirements3.txt',
+  'lib/manager/pip_requirements/__fixtures__/requirements3.txt',
   'utf8'
 );
 
 const requirements4 = readFileSync(
-  'test/manager/pip_requirements/_fixtures/requirements4.txt',
+  'lib/manager/pip_requirements/__fixtures__/requirements4.txt',
   'utf8'
 );
 
 const setupPy1 = readFileSync(
-  'test/manager/pip_setup/_fixtures/setup.py',
+  'lib/manager/pip_setup/__fixtures__/setup.py',
   'utf-8'
 );
 
 const setupPy2 = readFileSync(
-  'test/manager/pip_setup/_fixtures/setup-2.py',
+  'lib/manager/pip_setup/__fixtures__/setup-2.py',
   'utf-8'
 );
 
diff --git a/test/manager/pip_setup/_fixtures/setup-2.py b/lib/manager/pip_setup/__fixtures__/setup-2.py
similarity index 100%
rename from test/manager/pip_setup/_fixtures/setup-2.py
rename to lib/manager/pip_setup/__fixtures__/setup-2.py
diff --git a/test/manager/pip_setup/_fixtures/setup.py b/lib/manager/pip_setup/__fixtures__/setup.py
similarity index 100%
rename from test/manager/pip_setup/_fixtures/setup.py
rename to lib/manager/pip_setup/__fixtures__/setup.py
diff --git a/test/manager/pip_setup/_fixtures/setup.py.json b/lib/manager/pip_setup/__fixtures__/setup.py.json
similarity index 100%
rename from test/manager/pip_setup/_fixtures/setup.py.json
rename to lib/manager/pip_setup/__fixtures__/setup.py.json
diff --git a/test/manager/pip_setup/__snapshots__/extract.spec.ts.snap b/lib/manager/pip_setup/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/pip_setup/__snapshots__/extract.spec.ts.snap
rename to lib/manager/pip_setup/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/pip_setup/__snapshots__/index.spec.ts.snap b/lib/manager/pip_setup/__snapshots__/index.spec.ts.snap
similarity index 99%
rename from test/manager/pip_setup/__snapshots__/index.spec.ts.snap
rename to lib/manager/pip_setup/__snapshots__/index.spec.ts.snap
index b49b25d685..da14d26c1d 100644
--- a/test/manager/pip_setup/__snapshots__/index.spec.ts.snap
+++ b/lib/manager/pip_setup/__snapshots__/index.spec.ts.snap
@@ -377,7 +377,7 @@ Array [
     },
   },
   Object {
-    "cmd": "<extract.py> \\"test/manager/pip_setup/_fixtures/setup.py\\"",
+    "cmd": "<extract.py> \\"lib/manager/pip_setup/__fixtures__/setup.py\\"",
     "options": Object {
       "cwd": "/tmp/github/some/repo",
       "encoding": "utf-8",
diff --git a/test/manager/pip_setup/extract.spec.ts b/lib/manager/pip_setup/extract.spec.ts
similarity index 88%
rename from test/manager/pip_setup/extract.spec.ts
rename to lib/manager/pip_setup/extract.spec.ts
index 3c9ce423cb..2555930a70 100644
--- a/test/manager/pip_setup/extract.spec.ts
+++ b/lib/manager/pip_setup/extract.spec.ts
@@ -5,16 +5,16 @@ import {
   parsePythonVersion,
   getPythonAlias,
   pythonVersions,
-} from '../../../lib/manager/pip_setup/extract';
-import { envMock, mockExecSequence } from '../../execUtil';
-import * as _env from '../../../lib/util/exec/env';
-import { mocked } from '../../util';
+} from './extract';
+import { envMock, mockExecSequence } from '../../../test/execUtil';
+import * as _env from '../../util/exec/env';
+import { mocked } from '../../../test/util';
 
 const exec: jest.Mock<typeof _exec> = _exec as any;
 const env = mocked(_env);
 
 jest.mock('child_process');
-jest.mock('../../../lib/util/exec/env');
+jest.mock('../../util/exec/env');
 
 describe('lib/manager/pip_setup/extract', () => {
   beforeEach(() => {
diff --git a/test/manager/pip_setup/index.spec.ts b/lib/manager/pip_setup/index.spec.ts
similarity index 87%
rename from test/manager/pip_setup/index.spec.ts
rename to lib/manager/pip_setup/index.spec.ts
index 2cd0ca8824..e400f02b5c 100644
--- a/test/manager/pip_setup/index.spec.ts
+++ b/lib/manager/pip_setup/index.spec.ts
@@ -1,21 +1,21 @@
 import { readFileSync } from 'fs';
 import { exec as _exec } from 'child_process';
-import * as extract from '../../../lib/manager/pip_setup/extract';
-import { extractPackageFile } from '../../../lib/manager/pip_setup';
+import * as extract from './extract';
+import { extractPackageFile } from '.';
 import {
   ExecSnapshots,
   envMock,
   mockExecAll,
   mockExecSequence,
-} from '../../execUtil';
-import * as _env from '../../../lib/util/exec/env';
-import { mocked } from '../../util';
-import { BinarySource } from '../../../lib/util/exec/common';
+} from '../../../test/execUtil';
+import * as _env from '../../util/exec/env';
+import { mocked } from '../../../test/util';
+import { BinarySource } from '../../util/exec/common';
 
-const packageFile = 'test/manager/pip_setup/_fixtures/setup.py';
+const packageFile = 'lib/manager/pip_setup/__fixtures__/setup.py';
 const content = readFileSync(packageFile, 'utf8');
 
-const packageFileJson = 'test/manager/pip_setup/_fixtures/setup.py.json';
+const packageFileJson = 'lib/manager/pip_setup/__fixtures__/setup.py.json';
 const jsonContent = readFileSync(packageFileJson, 'utf8');
 
 const config = {
@@ -26,7 +26,7 @@ const exec: jest.Mock<typeof _exec> = _exec as any;
 const env = mocked(_env);
 
 jest.mock('child_process');
-jest.mock('../../../lib/util/exec/env');
+jest.mock('../../util/exec/env');
 
 const pythonVersionCallResults = [
   { stdout: '', stderr: 'Python 2.7.17\\n' },
diff --git a/test/manager/pipenv/_fixtures/Pipfile1 b/lib/manager/pipenv/__fixtures__/Pipfile1
similarity index 100%
rename from test/manager/pipenv/_fixtures/Pipfile1
rename to lib/manager/pipenv/__fixtures__/Pipfile1
diff --git a/test/manager/pipenv/_fixtures/Pipfile2 b/lib/manager/pipenv/__fixtures__/Pipfile2
similarity index 100%
rename from test/manager/pipenv/_fixtures/Pipfile2
rename to lib/manager/pipenv/__fixtures__/Pipfile2
diff --git a/test/manager/pipenv/_fixtures/Pipfile3 b/lib/manager/pipenv/__fixtures__/Pipfile3
similarity index 100%
rename from test/manager/pipenv/_fixtures/Pipfile3
rename to lib/manager/pipenv/__fixtures__/Pipfile3
diff --git a/test/manager/pipenv/_fixtures/Pipfile4 b/lib/manager/pipenv/__fixtures__/Pipfile4
similarity index 100%
rename from test/manager/pipenv/_fixtures/Pipfile4
rename to lib/manager/pipenv/__fixtures__/Pipfile4
diff --git a/test/manager/pipenv/_fixtures/Pipfile5 b/lib/manager/pipenv/__fixtures__/Pipfile5
similarity index 100%
rename from test/manager/pipenv/_fixtures/Pipfile5
rename to lib/manager/pipenv/__fixtures__/Pipfile5
diff --git a/test/manager/pipenv/__snapshots__/artifacts.spec.ts.snap b/lib/manager/pipenv/__snapshots__/artifacts.spec.ts.snap
similarity index 100%
rename from test/manager/pipenv/__snapshots__/artifacts.spec.ts.snap
rename to lib/manager/pipenv/__snapshots__/artifacts.spec.ts.snap
diff --git a/test/manager/pipenv/__snapshots__/extract.spec.ts.snap b/lib/manager/pipenv/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/pipenv/__snapshots__/extract.spec.ts.snap
rename to lib/manager/pipenv/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/pipenv/__snapshots__/update.spec.ts.snap b/lib/manager/pipenv/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/pipenv/__snapshots__/update.spec.ts.snap
rename to lib/manager/pipenv/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/pipenv/artifacts.spec.ts b/lib/manager/pipenv/artifacts.spec.ts
similarity index 85%
rename from test/manager/pipenv/artifacts.spec.ts
rename to lib/manager/pipenv/artifacts.spec.ts
index 40b882e0f4..040484fd8f 100644
--- a/test/manager/pipenv/artifacts.spec.ts
+++ b/lib/manager/pipenv/artifacts.spec.ts
@@ -1,17 +1,17 @@
 import _fs from 'fs-extra';
 import { exec as _exec } from 'child_process';
-import * as pipenv from '../../../lib/manager/pipenv/artifacts';
-import { platform as _platform } from '../../../lib/platform';
-import { mocked } from '../../util';
-import { StatusResult } from '../../../lib/platform/git/storage';
-import { envMock, mockExecAll } from '../../execUtil';
-import * as _env from '../../../lib/util/exec/env';
-import { BinarySource } from '../../../lib/util/exec/common';
+import * as pipenv from './artifacts';
+import { platform as _platform } from '../../platform';
+import { mocked } from '../../../test/util';
+import { StatusResult } from '../../platform/git/storage';
+import { envMock, mockExecAll } from '../../../test/execUtil';
+import * as _env from '../../util/exec/env';
+import { BinarySource } from '../../util/exec/common';
 
 jest.mock('fs-extra');
 jest.mock('child_process');
-jest.mock('../../../lib/util/exec/env');
-jest.mock('../../../lib/util/host-rules');
+jest.mock('../../util/exec/env');
+jest.mock('../../util/host-rules');
 
 const fs: jest.Mocked<typeof _fs> = _fs as any;
 const exec: jest.Mock<typeof _exec> = _exec as any;
diff --git a/test/manager/pipenv/extract.spec.ts b/lib/manager/pipenv/extract.spec.ts
similarity index 91%
rename from test/manager/pipenv/extract.spec.ts
rename to lib/manager/pipenv/extract.spec.ts
index e730c0916e..114f86feac 100644
--- a/test/manager/pipenv/extract.spec.ts
+++ b/lib/manager/pipenv/extract.spec.ts
@@ -1,24 +1,24 @@
 import fs from 'fs';
-import { extractPackageFile } from '../../../lib/manager/pipenv/extract';
+import { extractPackageFile } from './extract';
 
 const pipfile1 = fs.readFileSync(
-  'test/manager/pipenv/_fixtures/Pipfile1',
+  'lib/manager/pipenv/__fixtures__/Pipfile1',
   'utf8'
 );
 const pipfile2 = fs.readFileSync(
-  'test/manager/pipenv/_fixtures/Pipfile2',
+  'lib/manager/pipenv/__fixtures__/Pipfile2',
   'utf8'
 );
 const pipfile3 = fs.readFileSync(
-  'test/manager/pipenv/_fixtures/Pipfile3',
+  'lib/manager/pipenv/__fixtures__/Pipfile3',
   'utf8'
 );
 const pipfile4 = fs.readFileSync(
-  'test/manager/pipenv/_fixtures/Pipfile4',
+  'lib/manager/pipenv/__fixtures__/Pipfile4',
   'utf8'
 );
 const pipfile5 = fs.readFileSync(
-  'test/manager/pipenv/_fixtures/Pipfile5',
+  'lib/manager/pipenv/__fixtures__/Pipfile5',
   'utf8'
 );
 
diff --git a/test/manager/pipenv/update.spec.ts b/lib/manager/pipenv/update.spec.ts
similarity index 91%
rename from test/manager/pipenv/update.spec.ts
rename to lib/manager/pipenv/update.spec.ts
index 64ecd91cb5..abff9663d1 100644
--- a/test/manager/pipenv/update.spec.ts
+++ b/lib/manager/pipenv/update.spec.ts
@@ -1,7 +1,10 @@
 import { readFileSync } from 'fs';
-import { updateDependency } from '../../../lib/manager/pipenv/update';
+import { updateDependency } from './update';
 
-const pipfile = readFileSync('test/manager/pipenv/_fixtures/Pipfile1', 'utf8');
+const pipfile = readFileSync(
+  'lib/manager/pipenv/__fixtures__/Pipfile1',
+  'utf8'
+);
 
 describe('manager/pipenv/update', () => {
   describe('updateDependency', () => {
diff --git a/test/manager/poetry/_fixtures/pyproject.1.toml b/lib/manager/poetry/__fixtures__/pyproject.1.toml
similarity index 100%
rename from test/manager/poetry/_fixtures/pyproject.1.toml
rename to lib/manager/poetry/__fixtures__/pyproject.1.toml
diff --git a/test/manager/poetry/_fixtures/pyproject.2.toml b/lib/manager/poetry/__fixtures__/pyproject.2.toml
similarity index 100%
rename from test/manager/poetry/_fixtures/pyproject.2.toml
rename to lib/manager/poetry/__fixtures__/pyproject.2.toml
diff --git a/test/manager/poetry/_fixtures/pyproject.3.toml b/lib/manager/poetry/__fixtures__/pyproject.3.toml
similarity index 100%
rename from test/manager/poetry/_fixtures/pyproject.3.toml
rename to lib/manager/poetry/__fixtures__/pyproject.3.toml
diff --git a/test/manager/poetry/_fixtures/pyproject.4.toml b/lib/manager/poetry/__fixtures__/pyproject.4.toml
similarity index 100%
rename from test/manager/poetry/_fixtures/pyproject.4.toml
rename to lib/manager/poetry/__fixtures__/pyproject.4.toml
diff --git a/test/manager/poetry/_fixtures/pyproject.5.toml b/lib/manager/poetry/__fixtures__/pyproject.5.toml
similarity index 100%
rename from test/manager/poetry/_fixtures/pyproject.5.toml
rename to lib/manager/poetry/__fixtures__/pyproject.5.toml
diff --git a/test/manager/poetry/_fixtures/pyproject.6.toml b/lib/manager/poetry/__fixtures__/pyproject.6.toml
similarity index 100%
rename from test/manager/poetry/_fixtures/pyproject.6.toml
rename to lib/manager/poetry/__fixtures__/pyproject.6.toml
diff --git a/test/manager/poetry/_fixtures/pyproject.7.toml b/lib/manager/poetry/__fixtures__/pyproject.7.toml
similarity index 100%
rename from test/manager/poetry/_fixtures/pyproject.7.toml
rename to lib/manager/poetry/__fixtures__/pyproject.7.toml
diff --git a/test/manager/poetry/_fixtures/pyproject.8.toml b/lib/manager/poetry/__fixtures__/pyproject.8.toml
similarity index 100%
rename from test/manager/poetry/_fixtures/pyproject.8.toml
rename to lib/manager/poetry/__fixtures__/pyproject.8.toml
diff --git a/test/manager/poetry/__snapshots__/artifacts.spec.ts.snap b/lib/manager/poetry/__snapshots__/artifacts.spec.ts.snap
similarity index 100%
rename from test/manager/poetry/__snapshots__/artifacts.spec.ts.snap
rename to lib/manager/poetry/__snapshots__/artifacts.spec.ts.snap
diff --git a/test/manager/poetry/__snapshots__/extract.spec.ts.snap b/lib/manager/poetry/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/poetry/__snapshots__/extract.spec.ts.snap
rename to lib/manager/poetry/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/poetry/__snapshots__/update.spec.ts.snap b/lib/manager/poetry/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/poetry/__snapshots__/update.spec.ts.snap
rename to lib/manager/poetry/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/poetry/artifacts.spec.ts b/lib/manager/poetry/artifacts.spec.ts
similarity index 87%
rename from test/manager/poetry/artifacts.spec.ts
rename to lib/manager/poetry/artifacts.spec.ts
index 5b4377d7a7..4f287b2e83 100644
--- a/test/manager/poetry/artifacts.spec.ts
+++ b/lib/manager/poetry/artifacts.spec.ts
@@ -1,17 +1,17 @@
 import { join } from 'upath';
 import _fs from 'fs-extra';
 import { exec as _exec } from 'child_process';
-import { updateArtifacts } from '../../../lib/manager/poetry/artifacts';
-import { mocked } from '../../util';
-import { envMock, mockExecAll } from '../../execUtil';
-import * as _env from '../../../lib/util/exec/env';
-import { setExecConfig } from '../../../lib/util/exec';
-import { BinarySource } from '../../../lib/util/exec/common';
-import { resetPrefetchedImages } from '../../../lib/util/exec/docker';
+import { updateArtifacts } from './artifacts';
+import { mocked } from '../../../test/util';
+import { envMock, mockExecAll } from '../../../test/execUtil';
+import * as _env from '../../util/exec/env';
+import { setExecConfig } from '../../util/exec';
+import { BinarySource } from '../../util/exec/common';
+import { resetPrefetchedImages } from '../../util/exec/docker';
 
 jest.mock('fs-extra');
 jest.mock('child_process');
-jest.mock('../../../lib/util/exec/env');
+jest.mock('../../util/exec/env');
 
 const fs: jest.Mocked<typeof _fs> = _fs as any;
 const exec: jest.Mock<typeof _exec> = _exec as any;
diff --git a/test/manager/poetry/extract.spec.ts b/lib/manager/poetry/extract.spec.ts
similarity index 89%
rename from test/manager/poetry/extract.spec.ts
rename to lib/manager/poetry/extract.spec.ts
index 3a35eed7fc..1ccdce61a8 100644
--- a/test/manager/poetry/extract.spec.ts
+++ b/lib/manager/poetry/extract.spec.ts
@@ -1,43 +1,43 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/poetry/extract';
+import { extractPackageFile } from './extract';
 
 const pyproject1toml = readFileSync(
-  'test/manager/poetry/_fixtures/pyproject.1.toml',
+  'lib/manager/poetry/__fixtures__/pyproject.1.toml',
   'utf8'
 );
 
 const pyproject2toml = readFileSync(
-  'test/manager/poetry/_fixtures/pyproject.2.toml',
+  'lib/manager/poetry/__fixtures__/pyproject.2.toml',
   'utf8'
 );
 
 const pyproject3toml = readFileSync(
-  'test/manager/poetry/_fixtures/pyproject.3.toml',
+  'lib/manager/poetry/__fixtures__/pyproject.3.toml',
   'utf8'
 );
 
 const pyproject4toml = readFileSync(
-  'test/manager/poetry/_fixtures/pyproject.4.toml',
+  'lib/manager/poetry/__fixtures__/pyproject.4.toml',
   'utf8'
 );
 
 const pyproject5toml = readFileSync(
-  'test/manager/poetry/_fixtures/pyproject.5.toml',
+  'lib/manager/poetry/__fixtures__/pyproject.5.toml',
   'utf8'
 );
 
 const pyproject6toml = readFileSync(
-  'test/manager/poetry/_fixtures/pyproject.6.toml',
+  'lib/manager/poetry/__fixtures__/pyproject.6.toml',
   'utf8'
 );
 
 const pyproject7toml = readFileSync(
-  'test/manager/poetry/_fixtures/pyproject.7.toml',
+  'lib/manager/poetry/__fixtures__/pyproject.7.toml',
   'utf8'
 );
 
 const pyproject8toml = readFileSync(
-  'test/manager/poetry/_fixtures/pyproject.8.toml',
+  'lib/manager/poetry/__fixtures__/pyproject.8.toml',
   'utf8'
 );
 
diff --git a/test/manager/poetry/update.spec.ts b/lib/manager/poetry/update.spec.ts
similarity index 96%
rename from test/manager/poetry/update.spec.ts
rename to lib/manager/poetry/update.spec.ts
index 6166108ac1..bd93f6ba60 100644
--- a/test/manager/poetry/update.spec.ts
+++ b/lib/manager/poetry/update.spec.ts
@@ -1,13 +1,13 @@
 import { readFileSync } from 'fs';
-import { updateDependency } from '../../../lib/manager/poetry/update';
+import { updateDependency } from './update';
 
 const pyproject1toml = readFileSync(
-  'test/manager/poetry/_fixtures/pyproject.1.toml',
+  'lib/manager/poetry/__fixtures__/pyproject.1.toml',
   'utf8'
 );
 
 const pyproject2toml = readFileSync(
-  'test/manager/poetry/_fixtures/pyproject.2.toml',
+  'lib/manager/poetry/__fixtures__/pyproject.2.toml',
   'utf8'
 );
 
diff --git a/test/manager/pub/_fixtures/extract.yaml b/lib/manager/pub/__fixtures__/extract.yaml
similarity index 100%
rename from test/manager/pub/_fixtures/extract.yaml
rename to lib/manager/pub/__fixtures__/extract.yaml
diff --git a/test/manager/pub/_fixtures/update.yaml b/lib/manager/pub/__fixtures__/update.yaml
similarity index 100%
rename from test/manager/pub/_fixtures/update.yaml
rename to lib/manager/pub/__fixtures__/update.yaml
diff --git a/test/manager/pub/__snapshots__/extract.spec.ts.snap b/lib/manager/pub/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/pub/__snapshots__/extract.spec.ts.snap
rename to lib/manager/pub/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/pub/__snapshots__/update.spec.ts.snap b/lib/manager/pub/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/pub/__snapshots__/update.spec.ts.snap
rename to lib/manager/pub/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/pub/extract.spec.ts b/lib/manager/pub/extract.spec.ts
similarity index 82%
rename from test/manager/pub/extract.spec.ts
rename to lib/manager/pub/extract.spec.ts
index be3ddbb4e4..6cf25d2ab7 100644
--- a/test/manager/pub/extract.spec.ts
+++ b/lib/manager/pub/extract.spec.ts
@@ -1,13 +1,13 @@
 import { readFileSync } from 'fs';
-import { extractPackageFile } from '../../../lib/manager/pub';
+import { extractPackageFile } from '.';
 
 const brokenYaml = readFileSync(
-  'test/manager/pub/_fixtures/update.yaml',
+  'lib/manager/pub/__fixtures__/update.yaml',
   'utf8'
 );
 
 const packageFile = readFileSync(
-  'test/manager/pub/_fixtures/extract.yaml',
+  'lib/manager/pub/__fixtures__/extract.yaml',
   'utf8'
 );
 
diff --git a/test/manager/pub/update.spec.ts b/lib/manager/pub/update.spec.ts
similarity index 94%
rename from test/manager/pub/update.spec.ts
rename to lib/manager/pub/update.spec.ts
index 39d811fbd3..532557c5e1 100644
--- a/test/manager/pub/update.spec.ts
+++ b/lib/manager/pub/update.spec.ts
@@ -1,8 +1,8 @@
 import { readFileSync } from 'fs';
-import { updateDependency } from '../../../lib/manager/pub';
+import { updateDependency } from '.';
 
 const fileContent = readFileSync(
-  'test/manager/pub/_fixtures/update.yaml',
+  'lib/manager/pub/__fixtures__/update.yaml',
   'utf8'
 );
 
diff --git a/test/manager/range.spec.ts b/lib/manager/range.spec.ts
similarity index 89%
rename from test/manager/range.spec.ts
rename to lib/manager/range.spec.ts
index df8892b5d6..d336eee5ef 100644
--- a/test/manager/range.spec.ts
+++ b/lib/manager/range.spec.ts
@@ -1,5 +1,5 @@
-import { getRangeStrategy } from '../../lib/manager';
-import { RangeConfig } from '../../lib/manager/common';
+import { getRangeStrategy } from '.';
+import { RangeConfig } from './common';
 
 describe('getRangeStrategy', () => {
   it('returns same if not auto', () => {
diff --git a/test/manager/ruby-version/__snapshots__/extract.spec.ts.snap b/lib/manager/ruby-version/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/ruby-version/__snapshots__/extract.spec.ts.snap
rename to lib/manager/ruby-version/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/ruby-version/__snapshots__/update.spec.ts.snap b/lib/manager/ruby-version/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/ruby-version/__snapshots__/update.spec.ts.snap
rename to lib/manager/ruby-version/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/ruby-version/extract.spec.ts b/lib/manager/ruby-version/extract.spec.ts
similarity index 86%
rename from test/manager/ruby-version/extract.spec.ts
rename to lib/manager/ruby-version/extract.spec.ts
index 2f7788601c..1dcabd3ebe 100644
--- a/test/manager/ruby-version/extract.spec.ts
+++ b/lib/manager/ruby-version/extract.spec.ts
@@ -1,4 +1,4 @@
-import { extractPackageFile } from '../../../lib/manager/ruby-version/extract';
+import { extractPackageFile } from './extract';
 
 describe('lib/manager/ruby-version/extract', () => {
   describe('extractPackageFile()', () => {
diff --git a/test/manager/ruby-version/update.spec.ts b/lib/manager/ruby-version/update.spec.ts
similarity index 78%
rename from test/manager/ruby-version/update.spec.ts
rename to lib/manager/ruby-version/update.spec.ts
index 40dc7c078b..a12cd2f71a 100644
--- a/test/manager/ruby-version/update.spec.ts
+++ b/lib/manager/ruby-version/update.spec.ts
@@ -1,4 +1,4 @@
-import { updateDependency } from '../../../lib/manager/ruby-version/update';
+import { updateDependency } from './update';
 
 describe('manager/nvm/update', () => {
   describe('updateDependency', () => {
diff --git a/test/manager/sbt/_fixtures/dependency-file.scala b/lib/manager/sbt/__fixtures__/dependency-file.scala
similarity index 100%
rename from test/manager/sbt/_fixtures/dependency-file.scala
rename to lib/manager/sbt/__fixtures__/dependency-file.scala
diff --git a/test/manager/sbt/_fixtures/missing-scala-version.sbt b/lib/manager/sbt/__fixtures__/missing-scala-version.sbt
similarity index 100%
rename from test/manager/sbt/_fixtures/missing-scala-version.sbt
rename to lib/manager/sbt/__fixtures__/missing-scala-version.sbt
diff --git a/test/manager/sbt/_fixtures/sample.sbt b/lib/manager/sbt/__fixtures__/sample.sbt
similarity index 100%
rename from test/manager/sbt/_fixtures/sample.sbt
rename to lib/manager/sbt/__fixtures__/sample.sbt
diff --git a/test/manager/sbt/_fixtures/scala-version-variable.sbt b/lib/manager/sbt/__fixtures__/scala-version-variable.sbt
similarity index 100%
rename from test/manager/sbt/_fixtures/scala-version-variable.sbt
rename to lib/manager/sbt/__fixtures__/scala-version-variable.sbt
diff --git a/test/manager/sbt/__snapshots__/extract.spec.ts.snap b/lib/manager/sbt/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/sbt/__snapshots__/extract.spec.ts.snap
rename to lib/manager/sbt/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/sbt/extract.spec.ts b/lib/manager/sbt/extract.spec.ts
similarity index 84%
rename from test/manager/sbt/extract.spec.ts
rename to lib/manager/sbt/extract.spec.ts
index 695ae19d94..fff59f7003 100644
--- a/test/manager/sbt/extract.spec.ts
+++ b/lib/manager/sbt/extract.spec.ts
@@ -1,19 +1,22 @@
 import { readFileSync } from 'fs';
 import { resolve } from 'path';
-import { extractPackageFile } from '../../../lib/manager/sbt/extract';
+import { extractPackageFile } from './extract';
 
-const sbt = readFileSync(resolve(__dirname, `./_fixtures/sample.sbt`), 'utf8');
+const sbt = readFileSync(
+  resolve(__dirname, `./__fixtures__/sample.sbt`),
+  'utf8'
+);
 const sbtScalaVersionVariable = readFileSync(
-  resolve(__dirname, `./_fixtures/scala-version-variable.sbt`),
+  resolve(__dirname, `./__fixtures__/scala-version-variable.sbt`),
   'utf8'
 );
 const sbtMissingScalaVersion = readFileSync(
-  resolve(__dirname, `./_fixtures/missing-scala-version.sbt`),
+  resolve(__dirname, `./__fixtures__/missing-scala-version.sbt`),
   'utf8'
 );
 
 const sbtDependencyFile = readFileSync(
-  resolve(__dirname, `./_fixtures/dependency-file.scala`),
+  resolve(__dirname, `./__fixtures__/dependency-file.scala`),
   'utf8'
 );
 
diff --git a/test/manager/sbt/update.spec.ts b/lib/manager/sbt/update.spec.ts
similarity index 85%
rename from test/manager/sbt/update.spec.ts
rename to lib/manager/sbt/update.spec.ts
index 20391453be..28f535397e 100644
--- a/test/manager/sbt/update.spec.ts
+++ b/lib/manager/sbt/update.spec.ts
@@ -1,10 +1,10 @@
 import { readFileSync } from 'fs';
 import { resolve } from 'path';
-import { extractPackageFile } from '../../../lib/manager/sbt/extract';
-import { updateDependency } from '../../../lib/manager/sbt/update';
-import { Upgrade } from '../../../lib/manager/common';
+import { extractPackageFile } from './extract';
+import { updateDependency } from './update';
+import { Upgrade } from '../common';
 
-const sbtPath = resolve(__dirname, `./_fixtures/sample.sbt`);
+const sbtPath = resolve(__dirname, `./__fixtures__/sample.sbt`);
 const fileContent = readFileSync(sbtPath, 'utf8');
 
 describe('lib/manager/sbt/extract', () => {
diff --git a/test/manager/swift/_fixtures/SamplePackage.swift b/lib/manager/swift/__fixtures__/SamplePackage.swift
similarity index 100%
rename from test/manager/swift/_fixtures/SamplePackage.swift
rename to lib/manager/swift/__fixtures__/SamplePackage.swift
diff --git a/test/manager/swift/__snapshots__/index.spec.ts.snap b/lib/manager/swift/__snapshots__/index.spec.ts.snap
similarity index 100%
rename from test/manager/swift/__snapshots__/index.spec.ts.snap
rename to lib/manager/swift/__snapshots__/index.spec.ts.snap
diff --git a/test/manager/swift/index.spec.ts b/lib/manager/swift/index.spec.ts
similarity index 97%
rename from test/manager/swift/index.spec.ts
rename to lib/manager/swift/index.spec.ts
index 8ce0c6c767..ae038abb6d 100644
--- a/test/manager/swift/index.spec.ts
+++ b/lib/manager/swift/index.spec.ts
@@ -1,10 +1,10 @@
 import { readFileSync } from 'fs';
 import { resolve } from 'path';
-import { extractPackageFile } from '../../../lib/manager/swift/extract';
-import { updateDependency } from '../../../lib/manager/swift/update';
+import { extractPackageFile } from './extract';
+import { updateDependency } from './update';
 
 const pkgContent = readFileSync(
-  resolve(__dirname, `./_fixtures/SamplePackage.swift`),
+  resolve(__dirname, `./__fixtures__/SamplePackage.swift`),
   'utf8'
 );
 
diff --git a/test/manager/terraform/__snapshots__/extract.spec.ts.snap b/lib/manager/terraform/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/terraform/__snapshots__/extract.spec.ts.snap
rename to lib/manager/terraform/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/terraform/extract.spec.ts b/lib/manager/terraform/extract.spec.ts
similarity index 97%
rename from test/manager/terraform/extract.spec.ts
rename to lib/manager/terraform/extract.spec.ts
index 9330d31231..6815e0be83 100644
--- a/test/manager/terraform/extract.spec.ts
+++ b/lib/manager/terraform/extract.spec.ts
@@ -3,7 +3,7 @@ import {
   extractPackageFile,
   TerraformDependencyTypes,
   getTerraformDependencyType,
-} from '../../../lib/manager/terraform/extract';
+} from './extract';
 
 const tf1 = readFileSync('test/datasource/terraform/_fixtures/1.tf', 'utf8');
 const tf2 = `module "relative" {
diff --git a/test/manager/terraform/update.spec.ts b/lib/manager/terraform/update.spec.ts
similarity index 98%
rename from test/manager/terraform/update.spec.ts
rename to lib/manager/terraform/update.spec.ts
index c83f451ab3..1d62c33825 100644
--- a/test/manager/terraform/update.spec.ts
+++ b/lib/manager/terraform/update.spec.ts
@@ -1,5 +1,5 @@
 import { readFileSync } from 'fs';
-import { updateDependency } from '../../../lib/manager/terraform/update';
+import { updateDependency } from './update';
 
 const tf1 = readFileSync('test/datasource/terraform/_fixtures/1.tf', 'utf8');
 
diff --git a/test/manager/travis/_fixtures/invalid.yml b/lib/manager/travis/__fixtures__/invalid.yml
similarity index 100%
rename from test/manager/travis/_fixtures/invalid.yml
rename to lib/manager/travis/__fixtures__/invalid.yml
diff --git a/test/manager/travis/_fixtures/travis.yml b/lib/manager/travis/__fixtures__/travis.yml
similarity index 100%
rename from test/manager/travis/_fixtures/travis.yml
rename to lib/manager/travis/__fixtures__/travis.yml
diff --git a/test/manager/travis/__snapshots__/extract.spec.ts.snap b/lib/manager/travis/__snapshots__/extract.spec.ts.snap
similarity index 100%
rename from test/manager/travis/__snapshots__/extract.spec.ts.snap
rename to lib/manager/travis/__snapshots__/extract.spec.ts.snap
diff --git a/test/manager/travis/__snapshots__/package.spec.ts.snap b/lib/manager/travis/__snapshots__/package.spec.ts.snap
similarity index 100%
rename from test/manager/travis/__snapshots__/package.spec.ts.snap
rename to lib/manager/travis/__snapshots__/package.spec.ts.snap
diff --git a/test/manager/travis/__snapshots__/update.spec.ts.snap b/lib/manager/travis/__snapshots__/update.spec.ts.snap
similarity index 100%
rename from test/manager/travis/__snapshots__/update.spec.ts.snap
rename to lib/manager/travis/__snapshots__/update.spec.ts.snap
diff --git a/test/manager/travis/extract.spec.ts b/lib/manager/travis/extract.spec.ts
similarity index 84%
rename from test/manager/travis/extract.spec.ts
rename to lib/manager/travis/extract.spec.ts
index e2124f9997..8db227e748 100644
--- a/test/manager/travis/extract.spec.ts
+++ b/lib/manager/travis/extract.spec.ts
@@ -1,9 +1,9 @@
 import { readFileSync } from 'fs';
 import { resolve } from 'path';
-import { extractPackageFile } from '../../../lib/manager/travis/extract';
+import { extractPackageFile } from './extract';
 
 const invalidYAML = readFileSync(
-  resolve('test/manager/travis/_fixtures/invalid.yml'),
+  resolve('lib/manager/travis/__fixtures__/invalid.yml'),
   'utf8'
 );
 
diff --git a/test/manager/travis/package.spec.ts b/lib/manager/travis/package.spec.ts
similarity index 87%
rename from test/manager/travis/package.spec.ts
rename to lib/manager/travis/package.spec.ts
index b9a2af1b51..1e89c097f0 100644
--- a/test/manager/travis/package.spec.ts
+++ b/lib/manager/travis/package.spec.ts
@@ -1,11 +1,11 @@
-import { getPackageUpdates } from '../../../lib/manager/travis/package';
-import { getPkgReleases as _getPkgReleases } from '../../../lib/datasource/github';
-import { getConfig } from '../../../lib/config/defaults';
+import { getPackageUpdates } from './package';
+import { getPkgReleases as _getPkgReleases } from '../../datasource/github';
+import { getConfig } from '../../config/defaults';
 
 const defaultConfig = getConfig();
 const getPkgReleases: any = _getPkgReleases;
 
-jest.mock('../../../lib/datasource/github');
+jest.mock('../../datasource/github');
 
 describe('lib/manager/travis/package', () => {
   describe('getPackageUpdates', () => {
diff --git a/test/manager/travis/update.spec.ts b/lib/manager/travis/update.spec.ts
similarity index 91%
rename from test/manager/travis/update.spec.ts
rename to lib/manager/travis/update.spec.ts
index f09e94852c..03023376d4 100644
--- a/test/manager/travis/update.spec.ts
+++ b/lib/manager/travis/update.spec.ts
@@ -1,9 +1,9 @@
 import { readFileSync } from 'fs';
 import { resolve } from 'path';
-import { updateDependency } from '../../../lib/manager/travis/update';
+import { updateDependency } from './update';
 
 const content = readFileSync(
-  resolve('test/manager/travis/_fixtures/travis.yml'),
+  resolve('lib/manager/travis/__fixtures__/travis.yml'),
   'utf8'
 );
 
diff --git a/package.json b/package.json
index c19b1a3323..a3e3d6c05a 100644
--- a/package.json
+++ b/package.json
@@ -13,7 +13,7 @@
     "clean-cache": "node bin/clean-cache.js",
     "compile:ts": "tsc -p tsconfig.app.json",
     "compile:dts": "tsc -p tsconfig.dts.json",
-    "copy-static-files": "copyfiles -u 1 lib/**/*.json lib/**/*.py dist/",
+    "copy-static-files": "copyfiles -u 1 -e **/__fixtures__/**  -e **/__mocks__/** lib/**/*.json lib/**/*.py dist/",
     "create-json-schema": "babel-node --extensions \".ts,.js\" -- bin/create-json-schema.js && prettier --write \"renovate-schema.json\"",
     "debug": "babel-node --inspect-brk  --extensions \".ts,.js\" -- lib/renovate.ts",
     "eslint": "eslint --ext .js,.ts lib/ test/",
@@ -249,7 +249,8 @@
     "collectCoverage": true,
     "collectCoverageFrom": [
       "lib/**/*.{js,ts}",
-      "!lib/**/*.d.ts"
+      "!lib/**/*.{d,spec}.ts",
+      "!lib/**/{__fixtures__,__mocks__}/**/*.{js,ts}"
     ],
     "coverageReporters": [
       "html",
diff --git a/test/static-files.spec.ts b/test/static-files.spec.ts
index d8280b6bef..2ae7483104 100644
--- a/test/static-files.spec.ts
+++ b/test/static-files.spec.ts
@@ -2,7 +2,7 @@ import util from 'util';
 
 const glob = util.promisify(require('glob'));
 
-const ignoredExtensions = ['js', 'ts', 'md', 'pyc', 'DS_Store', 'map'];
+const ignoredExtensions = ['js', 'ts', 'md', 'pyc', 'DS_Store', 'map', 'snap'];
 
 function filterFiles(files: string[]): string[] {
   return files.filter(file =>
@@ -12,7 +12,11 @@ function filterFiles(files: string[]): string[] {
 
 async function getFiles(dir: string): Promise<string[]> {
   return filterFiles(
-    await glob(`${dir}/**/*`, { dot: true, nodir: true })
+    await glob(`${dir}/**/*`, {
+      dot: true,
+      nodir: true,
+      ignore: ['**/__fixtures__/**/*', '**/__mocks__/**/*'],
+    })
   ).map((file: string) => file.replace(`${dir}/`, ''));
 }
 
diff --git a/tsconfig.app.json b/tsconfig.app.json
index 7976eb6402..25e6cee568 100644
--- a/tsconfig.app.json
+++ b/tsconfig.app.json
@@ -7,5 +7,6 @@
     "inlineSources": true,
     "types": ["node"]
   },
-  "include": ["lib/**/*"]
+  "include": ["lib/**/*"],
+  "exclude": ["lib/**/*.spec.ts", "**/__mocks__/**", "**/__fixtures__/**"]
 }
-- 
GitLab