AbstractCopyTaskTest.groovy

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Get rid of TaskPropertySpecs in property package

  1. … 55 more files in changeset.
Calculate caching state outside of TaskOutputs

  1. … 10 more files in changeset.
Disable caching when lambda is used as input

We disable caching an up-to-date checks whenever a lambda is used as

input.

  1. … 23 more files in changeset.
Make tests more readable and reliable

  1. … 1 more file in changeset.
Use inception time of journal as fallback

Prior to this commit the file modification timestamp was used as

fallback when the last access time was unknown. That lead to a lot of

files being deleted when first using the new Gradle distribution that

includes cleaning up of shared caches. In particular for dependencies

that have not been updated in the last 30 days and were not used in the

first build, lots of files would have to be redownloaded

This commit persists the inception time of the file access time journal

and uses it as the fallback for unknown files. This way, less files will

be cleaned up initially.

  1. … 8 more files in changeset.
Clean up copy specs

- Add `@Override` annotations where necessary

- Add `@Nullable` and `@NonNullApi` annotations where necessary

- Some small optimizations

- Fix IntelliJ warnings

- Remove some dead code

  1. … 18 more files in changeset.
Support rich task inputs (#3720)

@Nested inputs are now discovered based on the runtime type instead of the static type.

  1. … 150 more files in changeset.
Report reasons for not caching (#1187)

We report the reasons why caching is disabled for a task. To that end you can call `cacheIf` and `doNotCacheIf` providing a description for the `Spec`.

It looks like it makes sense to call `cacheIf(Spec)` without providing a description when unconditionally enabling caching (e.g. `cacheIf { true }`).

For `doNotCacheIf` it always makes sense to provide a description why caching would be disabled. This is why we deprecate calling `doNotCacheIf` without providing any description while we do not deprecate calling `cacheIf` without providing a description.

Moreover, we moved resolving of task output caching state to an own executer. By this we know even for an up to date task if it is cacheable or not.

We evaluate cacheability of a task only if caching is enabled. If caching is disabled we use `DISABLED` as `TaskOutputCaching` in TaskStateInternal and do not log any message for each task.

+review REVIEW-6426

  1. … 24 more files in changeset.
Disable task output caching when copy task has custom actions

I.e. when the user calls any of the `rename()`, `filter()`, `expand()` or `eachFile()` methods.

+review REVIEW-6281

  1. … 11 more files in changeset.
Revert "Disable task output caching when copy task has custom actions"

This reverts commit 39f8a531ab402516d62c4107d4f3171816d3482f.

  1. … 9 more files in changeset.
Disable task output caching when copy task has custom actions

I.e. when the user calls any of the `rename()`, `filter()`, `expand()` or `eachFile()` methods.

+review REVIEW-6281

  1. … 9 more files in changeset.
Remove deprecated methods on TestUtil (#672)

In order to use project builder correctly without having

leaking files on windows it is necessary to initialize

the test fixture for NativeServices and clean up

the test directory after building.

AbstractProjectBuilderSpec provides a nice base class

for Groovy tests.

I removed the deprecated methods since using them leads

to files lying around. Migrating all the usages to the "new"

way ensures it is used correctly.

  1. … 97 more files in changeset.
Test fixes now that properties are not defined on assignment.

  1. … 5 more files in changeset.
Removed deprecated AbstractCopyTask.defaultSource property.

  1. … 4 more files in changeset.
introduced CopySpecResolver: checkpoint

  1. … 19 more files in changeset.
renamed HelperUtil to TestUtil (REVIEW-1626)

  1. … 145 more files in changeset.
imports.

REVIEW-2715 - spockify tests.

Rename the CopySpecContentVisitor type to CopyAction.

  1. … 40 more files in changeset.
Keep less state as instance variables for the copy task hierarchy, and generally detangle things.

The primary change is that the visitors are now created just to do the processing, meaning that the tasks no longer incur their weight after the copy.

This change also removed CopyAction and its various implementations, reducing the number of classes overall.

    • -0
    • +85
    ./AbstractCopyTaskTest.groovy
  1. … 54 more files in changeset.