CompositeBuildDependencyArtifactsIntegrationTest.groovy

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Rename @FailsWithInstantExecution to @ToBeFixedForInstantExecution

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

    • -27
    • +27
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 872 more files in changeset.
Annotate integ tests failing with instant execution in various projects

removing most of @IgnoreWithInstantExecution annotations

after fixing the @FailsWithInstantExecution rule

and more ci feedback

also make @IgnoreWithInstantExecution require a reason from a fixed set

and add it to the remaining ignores

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

    • -2
    • +1
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 126 more files in changeset.
Annotate integ tests failing with instant execution in :compositeBuilds

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

    • -0
    • +28
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 27 more files in changeset.
Remove use of deprecated API

Remove use of deprecated APIs in PluginBuilder

Replace use of archiveName with archiveFileName

Avoid more deprecated APIs

    • -10
    • +10
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 64 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.

    • -14
    • +4
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 98 more files in changeset.
Let composite-build tests not use deprecated configurations

    • -34
    • +34
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 12 more files in changeset.
Use a single project lock any time a project can be mutated

    • -2
    • +2
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 10 more files in changeset.
Add some test coverage for task failure handling in composite builds.

    • -9
    • +15
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
Expose file collection dependencies declared in included builds to consumers in other builds in the composite.

Rework task graph assembly so that tasks that cross build boundaries as a dependency of another task no longer need to be wrapped in a `TaskReference` and remove the special handling from dependency resolution artifact and IDE artifact implementations.

No longer add a synthetic delegate task to each project that such a task is consumed as a dependency and decouple the task execution plan from `Task` slightly so that it can deal with the difference between tasks in the current build and tasks running asynchronously in another build.

    • -5
    • +6
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 24 more files in changeset.
Fix task graph computation for multi-layer composites

The task graph construction would result in a ConcurrentModificationException

if new substitutions were discovered while building the task graph for the

first level projects. This is trivially fixed by making a defensive copy.

    • -0
    • +36
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 1 more file in changeset.
Add some more assertion methods to `ExecutionResult` and change several tests and utility methods to use these methods instead of reimplementing the logic.

    • -1
    • +1
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 11 more files in changeset.
Fix test assertions for parallel execution

This is a follow up to #4324

    • -1
    • +2
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 1 more file in changeset.
Introduce `@ToBeImplemented` (#2643)

The `@ToBeImplemented` annotation replaces Groovy's `@NotYetImplemented`.

The problem with `NotYetImplemented` is that tests marked with it succeed no matter what causes the test to fail. Marked tests can pass because the expected failure is still present (which is the purpose of the test), or if the expected failure is replaced by some other failure.

It's better to write a test that explicitly tests for the expected failure, so when it fails for some other reason, it becomes noticeable. The purpose of the `@ToBeImplemented` annotation is to keep such tests easy to find in the code.

    • -4
    • +5
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 9 more files in changeset.
Fix test for parallel execution

    • -2
    • +3
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
Test dependency on non-default artifact in composite build

    • -0
    • +26
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
Additional test coverage for 'discovered' dependencies in composite builds

    • -1
    • +25
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
Remove unused field from integration tests

    • -3
    • +0
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 1 more file in changeset.
Remove assertion that depends on race condition between included builds

    • -4
    • +0
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
Attempt to make OutputScrapingExecutionResult more tolerant of interleaved task output

    • -1
    • +1
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 3 more files in changeset.
Add test that demonstrates multiple executions of included build

Tasks for an included build are preemptively scheduled when they

are discovered while building the task graph. However certain dependencies

(such as compileOnly) may be discovered after the build has commenced.

In these cases, the included build will be invoked again, resulting in

multiple executions of the same included build. This test demonstrates

this scenario.

    • -0
    • +32
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
Assert task order in integration test

    • -1
    • +1
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
Add failing tests for gradle/composite-builds#111

    • -0
    • +35
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 1 more file in changeset.
Use a separate delegating task reference per task per included build

    • -5
    • +3
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 5 more files in changeset.
Don't wrap exceptions from included builds

    • -5
    • +2
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 6 more files in changeset.
Improve exception message for included build task failure

    • -3
    • +3
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 4 more files in changeset.
Remove extraneous parameter

    • -1
    • +1
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
Don't use compile in test for compileOnly

    • -1
    • +1
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
Removed `ProjectArtifactBuilder.willBuild`

When building included build artifacts on-demand (for buildscript classpath)

executed tasks independently, rather than trying to accumulate all of the

tasks that _will be_ executed up front.

This simplifies the implementation and fixes a bug where some included

build tasks were executed twice.

    • -6
    • +2
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 7 more files in changeset.
Tighten up test coverage

By using task references for included build artifacts, we can now

assert ordering that wasn't possible before.

    • -13
    • +9
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy
  1. … 1 more file in changeset.
More test coverage for task execution in a composite build

    • -4
    • +103
    ./CompositeBuildDependencyArtifactsIntegrationTest.groovy