testing-base.gradle

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Change all subprojects to use 'implementation' dependencies

This includes:

- All projects now explicitly declare all dependencies to other

subprojects. This makes issues more visible, guards for accidental

addition of new dependencies, and leaks much less transitive

dependencies on the compile classpathes.

- All usages of 'runtime' to declare dependencies have been replaced

with 'runtimeOnly'

- All projects are now `java-library` (and declare this explicitly)

- Most remaining Groovy scripts are translated to Kotlin

- The old 'compile' and 'runtime' configurations are not

configured/created anymore for the 'testFixture' and 'integTest'

source sets.

- Some obsolete dependencies (see previous commits) are removed

- 'api' is used scarcely on purpose as the current project structure is

not well designed for this. The projects contain code for several

concerns of the build tool and thus putting complete projects on the

API of others exposes too much. They should be split up along

functional concerns first.

  1. … 112 more files in changeset.
Use 'implementation' dependencies everywhere

  1. … 286 more files in changeset.
Use 'implementation' dependencies everywhere

  1. … 283 more files in changeset.
Use 'implementation' dependencies everywhere

  1. … 286 more files in changeset.
Use 'implementation' dependencies everywhere

  1. … 284 more files in changeset.
Use 'implementation' dependencies everywhere

  1. … 285 more files in changeset.
Use 'implementation' dependencies everywhere

  1. … 285 more files in changeset.
Make more subprojects use Java 8 and remove redundant module types

  1. … 21 more files in changeset.
Make more subprojects use Java 8 and remove redundant module types

  1. … 21 more files in changeset.
Make more subprojects use Java 8 and remove redundant module types

  1. … 21 more files in changeset.
Make more subprojects use Java 8 and remove redundant module types

  1. … 21 more files in changeset.
Make more subprojects use Java 8 and remove redundant module types

  1. … 21 more files in changeset.
Make more subprojects use Java 8 and remove redundant module types

  1. … 21 more files in changeset.
Make more subprojects use Java 8 and remove redundant module types

  1. … 21 more files in changeset.
Model test fixtures as a propert artifact

Previously they were modeled as just a file collection,

which confused the IDEA importer. They now use the more

canonical way of defining an additional artifact.

In a next step they should be reimplemented using variant

aware dependency resolution, so that we don't need a special

DSL to declare these dependencies.

  1. … 14 more files in changeset.
Converted many Groovy script to Kotlin and improved the Kotlin DSL usage in some existing Kotlin scripts.

  1. … 95 more files in changeset.
Migrated various Groovy scripts to Kotlin

  1. … 11 more files in changeset.
Convert dependency management related subprojects to kotlin-dsl (#4498)

This PR also fixes the dependency declarations wrt. api/impl separation

for these and related projects.

It fixes two places in production/test code where dependencies

leaked into the classpath and the wrong classes where imported.

  1. … 21 more files in changeset.
Introduced the property moduleType to derive source compatibility settings

  1. … 80 more files in changeset.
"coordinate" -> "coordinates"

  1. … 60 more files in changeset.
Move dependency constraints into a separate project

  1. … 69 more files in changeset.
Extract idiomatic test-fixtures plugin to buildSrc

Plugin is applied to all "groovy projects", see `groovyProject.gradle`.

The plugin configures the Project as a test fixtures producer if

`src/testFixtures` is a directory.

The plugin configures the Project as a test fixtures consumer according

to the `testFixtures` extension configuration.

No more Groovy Closure with optional parameters as a Project extra

property.

Test-fixtures configuration rely on a Groovy DSL only feature that

allows to pass a collection of dependency notations when declaring

dependencies. The Kotlin DSL lacks this feature, see

https://github.com/gradle/kotlin-dsl/issues/639

A workaround has been put in place in `build-extensions.kt` in order to

move forward until this is properly fixed in the Kotlin DSL.

Signed-off-by: Paul Merlin <paul@gradle.com>

  1. … 70 more files in changeset.
Add coverage for test build operations in continuous builds

  1. … 7 more files in changeset.
Enable test reporting for all instances of AbstractTestTask

  1. … 77 more files in changeset.
Fix CI failures

  1. … 3 more files in changeset.
Move XcTest task implementation to the AbstractTestTask

  1. … 38 more files in changeset.
Spike AbstractTestTask

  1. … 68 more files in changeset.
Changed a couple more projects to use `java-library` plugin. Also inject Groovy as a test compile dependency for all projects, and removed the declaration from various project's build files.

  1. … 34 more files in changeset.
Changed default Java version for our projects to Java 7. Changed build scripts for those projects that still require Java 6.

  1. … 14 more files in changeset.
Moved logging test fixtures from 'core' to 'logging' project.

  1. … 49 more files in changeset.