BuildAggregationIntegrationTest.groovy

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Make paths/names of included builds immutable (#10998)

Changes the “build path” for included builds to be determined at inclusion time based on the directory name, or a user supplied override. Previously, we tried to use the root project name defined in the included build. This caused a lot of complexity due to it not being known until part way through building the included build.

This change also disallows use of `buildSrc` as a project name, as it collides with the `buildSrc` nested build.

    • -2
    • +2
    ./BuildAggregationIntegrationTest.groovy
  1. … 72 more files in changeset.
Fix test

    • -2
    • +2
    ./BuildAggregationIntegrationTest.groovy
Change more tests.

    • -1
    • +1
    ./BuildAggregationIntegrationTest.groovy
  1. … 40 more files in changeset.
Changed a bunch of integration tests to use the various task assertion methods instead of directly querying the `executedTasks` and `skippedTasks` collections. These methods can give better diagnostics when the assertion fails, and can perform additional checks.

    • -1
    • +1
    ./BuildAggregationIntegrationTest.groovy
  1. … 98 more files in changeset.
Changed a bunch of integration tests to use the various task assertion methods instead of directly querying the `executedTasks` and `skippedTasks` collections. These methods can give better diagnostics when the assertion fails, and can perform additional checks.

    • -1
    • +1
    ./BuildAggregationIntegrationTest.groovy
  1. … 98 more files in changeset.
Changed a bunch of integration tests to use the various task assertion methods instead of directly querying the `executedTasks` and `skippedTasks` collections. These methods can give better diagnostics when the assertion fails, and can perform additional checks.

    • -1
    • +1
    ./BuildAggregationIntegrationTest.groovy
  1. … 98 more files in changeset.
Replace 'Matchers' with 'CoreMatchers'

So we do not require 'org.hamcrest:hamcrest-library' as additional

dependency anymore. Which was only available for most of the tests

because it leaked onto the test compile classpath.

    • -2
    • +2
    ./BuildAggregationIntegrationTest.groovy
  1. … 162 more files in changeset.
Use 'implementation' dependencies everywhere

    • -2
    • +2
    ./BuildAggregationIntegrationTest.groovy
  1. … 286 more files in changeset.
Use 'implementation' dependencies everywhere

    • -2
    • +2
    ./BuildAggregationIntegrationTest.groovy
  1. … 283 more files in changeset.
Use 'implementation' dependencies everywhere

    • -2
    • +2
    ./BuildAggregationIntegrationTest.groovy
  1. … 286 more files in changeset.
Use 'implementation' dependencies everywhere

    • -2
    • +2
    ./BuildAggregationIntegrationTest.groovy
  1. … 284 more files in changeset.
Use 'implementation' dependencies everywhere

    • -2
    • +2
    ./BuildAggregationIntegrationTest.groovy
  1. … 285 more files in changeset.
Use 'implementation' dependencies everywhere

    • -2
    • +2
    ./BuildAggregationIntegrationTest.groovy
  1. … 285 more files in changeset.
Avoid use of `startParameter.searchUpwards` in tests

When `GradleBuild` tasks were used in integration tests, we were often

resorting to `startParameter.searchUpwards = false` to target an isolated

build script. Instead, use an explicitly defined `settings.gradle` in each target

build.

    • -3
    • +2
    ./BuildAggregationIntegrationTest.groovy
  1. … 6 more files in changeset.
More consistently include the build identity to the display name for projects and tasks used in various places such as error messages, logging output and tapi progress events.

Added `identityPath` property (for want of a better name) to internal `Gradle`, `Project` and `Task` types for now to allow this to be queried. This path always includes the build identity, and is used to calculate the display name.

Added a bunch of coverage for using `buildSrc` in various nested builds.

    • -4
    • +4
    ./BuildAggregationIntegrationTest.groovy
  1. … 23 more files in changeset.
Use doLast instead of left shift operator

Made this change in preparation for deprecating the left shift operator.

+review REVIEW-6236

    • -4
    • +8
    ./BuildAggregationIntegrationTest.groovy
  1. … 163 more files in changeset.
Revert "Provide a basic service to query the type of executing build"

This reverts commit bdbf60d6d123f158399373c9824dbf8fa2123d12.

    • -51
    • +0
    ./BuildAggregationIntegrationTest.groovy
  1. … 7 more files in changeset.
Spockified test

    • -26
    • +36
    ./BuildAggregationIntegrationTest.groovy
Provide a basic service to query the type of executing build

The `BuildTypeAttributes` services can be accessed to determine if a build

is a composite build or a 'nested' build.

The current implementation is very basic, using mutable flags set by other services

on load. Should improve this to read available state where possible.

    • -0
    • +51
    ./BuildAggregationIntegrationTest.groovy
  1. … 7 more files in changeset.
Use old API methods for task inputs and outputs

Will revert deprecation in next commit.

+review REVIEW-6038

    • -1
    • +1
    ./BuildAggregationIntegrationTest.groovy
  1. … 38 more files in changeset.
Revert "Temporarily reverting everything since 810f052813ea0835dc7e9d3eb87bca005815db64 for 3.0-milestone-1 release"

This reverts commit 506f8ce9d6dc1a81e8ff10575c512778ca2f382a.

    • -1
    • +1
    ./BuildAggregationIntegrationTest.groovy
  1. … 199 more files in changeset.
Temporarily reverting everything since 810f052813ea0835dc7e9d3eb87bca005815db64 for 3.0-milestone-1 release

    • -1
    • +1
    ./BuildAggregationIntegrationTest.groovy
  1. … 199 more files in changeset.
Bind task output files to properties

This change introduces a binding between task properties and output files. Output annotations automatically register property values to the corresponding property name.

The `TaskOutputs` API gained new methods with an `include` prefix that allow more flexible configuration of output properties, including specifying the property name to bind the files to. The old methods have been deprecated.

Properties that were not assigned a property name will be bound to a sequence of pseudo names like `$1`, `$2` etc.

+review REVIEW-6038

    • -1
    • +1
    ./BuildAggregationIntegrationTest.groovy
  1. … 41 more files in changeset.
Use HTTPS for links and communication to issues.gradle.org and services.gradle.org.

+review REVIEW-5132

    • -1
    • +1
    ./BuildAggregationIntegrationTest.groovy
  1. … 49 more files in changeset.
REVIEW-4497 - ensure that tasks in nested builds are up to date (if they should be).

    • -6
    • +23
    ./BuildAggregationIntegrationTest.groovy
GRADLE-3052 - fix IllegalStateException when launching embedded build while holding the cache file lock.

This fix is likely not the correct fix, but is “safe” as the method call being removed is a no-op in the current implementation.

    • -0
    • +21
    ./BuildAggregationIntegrationTest.groovy
  1. … 1 more file in changeset.
- Changed the ExecutionFailure implementations to match the whole problem description, allowing descriptions that span multiple lines. - Tightened up the OutputScrapingExecutionFailure output checking to do a better job of extracting the details out of the error output. - Changed the InProcessExcecutionFailure to also delegate to an output scraping implementation, to verify that the details are present both in the exception chain and the logging output.

    • -2
    • +3
    ./BuildAggregationIntegrationTest.groovy
  1. … 21 more files in changeset.
Some renaming and cleanup around the test/temp directory used in tests.

    • -1
    • +1
    ./BuildAggregationIntegrationTest.groovy
  1. … 308 more files in changeset.
Don't have the GradleDistribution be responsible for providing the working space for a test.

    • -13
    • +9
    ./BuildAggregationIntegrationTest.groovy
  1. … 109 more files in changeset.
Moved code related to GradleExecuter and GradleDistribution into org.gradle.integtests.fixtures.executer - Affects many, many files, but mostly just imports - Certain files (eg RuleHelper) are not in the correct spot, but were moved to avoid cycles

    • -4
    • +3
    ./BuildAggregationIntegrationTest.groovy
  1. … 170 more files in changeset.