changedetection

Clone Tools
  • last updated a few minutes ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
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.

    • -19
    • +19
    ./state/TaskTypeUpToDateIntegrationTest.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.

    • -19
    • +19
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 98 more files in changeset.
Fixes for changes to fixture.

    • -10
    • +8
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 10 more files in changeset.
Change `ExecutionResult` so that it does not ignore `buildSrc` tasks.

    • -10
    • +8
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 17 more files in changeset.
Change `ExecutionResult` so that it does not ignore `buildSrc` tasks.

    • -10
    • +8
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 17 more files in changeset.
Change `ExecutionResult` so that it does not ignore `buildSrc` tasks.

    • -10
    • +8
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 17 more files in changeset.
Change `ExecutionResult` so that it does not ignore `buildSrc` tasks.

    • -10
    • +8
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 17 more files in changeset.
Let integration tests in 'core' not use deprecated configurations

    • -1
    • +1
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 11 more files in changeset.
Let integration tests in 'core' not use deprecated configurations

    • -1
    • +1
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 11 more files in changeset.
Let integration tests in 'core' not use deprecated configurations

    • -1
    • +1
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 11 more files in changeset.
Let integration tests in 'core' not use deprecated configurations

    • -1
    • +1
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 11 more files in changeset.
Remove `CorruptedTaskHistoryIntegrationTest`

The usefulness of this test has become irrelevant. The test is flaky,

and hardly test anything given the task history writing is now atomic.

    • -154
    • +0
    ./CorruptedTaskHistoryIntegrationTest.groovy
Make `CorruptedTaskHistoryIntegrationTest` less flaky

    • -15
    • +53
    ./CorruptedTaskHistoryIntegrationTest.groovy
Reduce poll interval even further

There still seems to be some flakyness left.

    • -2
    • +2
    ./CorruptedTaskHistoryIntegrationTest.groovy
Reduce flakiness of CorruptedTaskHistoryIntegrationTest

Instead of using a fixed interval after which to kill the Gradle

process we poll until 40 tasks have completed. That should isolate

the test from varying build durations.

    • -16
    • +16
    ./CorruptedTaskHistoryIntegrationTest.groovy
Split CodeNarc configuration for integration tests

Now that there are rules specific to integration tests, we have a dedicated

configuration file. This should avoid some accidental noise, and removes

the need to check for `Integration` in the test name, which helped discover

a few more problems.

  1. … 7 more files in changeset.
Add new test coverage

    • -0
    • +194
    ./state/AbstractBrokenSymbolicLinkUpToDateIntegrationTest.groovy
    • -0
    • +63
    ./state/InputDirectoryContainingDanglingBrokenSymbolicLinkUpToDateIntegrationTest.groovy
    • -0
    • +61
    ./state/OutputDirectoryContainingDanglingBrokenSymbolicLinkUpToDateIntegrationTest.groovy
  1. … 2 more files in changeset.
Allow enabling build cache in all integration tests

Signed-off-by: Lóránt Pintér <lorant@gradle.com>

    • -48
    • +48
    ./rules/OverlappingOutputsIntegrationTest.groovy
  1. … 27 more files in changeset.
Remove some wrong timing loggings (#3860)

* Remove some wrong timing loggings

The time which was captured for up-to-date checks is wrong, since it

did not include actual snapshotting any more.

The time captured how long it took to load/unpack from the cache now

would have included the time it took to snapshot the inputs, too.

These timings are much better captured by the corresponding build

operations, so we remove the log entries for now.

Signed-off-by: Stefan Wolf <wolf@gradle.com>

  1. … 7 more files in changeset.
Add a couple of tests for overlapping output detection for local state

    • -18
    • +225
    ./rules/OverlappingOutputsIntegrationTest.groovy
Use better INFO log for non-up-to-date tasks (#3111)

  1. … 1 more file in changeset.
Kill process earlier to remove flakiness from test.

    • -2
    • +4
    ./CorruptedTaskHistoryIntegrationTest.groovy
Fix test by waiting until enough outputs generated

    • -2
    • +6
    ./CorruptedTaskHistoryIntegrationTest.groovy
Relax restrictions on range

    • -1
    • +1
    ./CorruptedTaskHistoryIntegrationTest.groovy
Address review feedback

    • -1
    • +16
    ./CorruptedTaskHistoryIntegrationTest.groovy
Polish test case

This makes the test fail on every second/third time or so.

Related issue: #2827

    • -30
    • +35
    ./CorruptedTaskHistoryIntegrationTest.groovy
Add more inputs to the task

This makes the test fail on every second/third time or so.

    • -10
    • +30
    ./CorruptedTaskHistoryIntegrationTest.groovy
  1. … 1 more file in changeset.
Add a test for corrupted test

    • -0
    • +108
    ./CorruptedTaskHistoryIntegrationTest.groovy
  1. … 1 more file in changeset.
On CI redirect maven central queries to local repo for integration tests

    • -3
    • +1
    ./state/TaskTypeUpToDateIntegrationTest.groovy
  1. … 108 more files 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.

    • -3
    • +4
    ./rules/OverlappingOutputsIntegrationTest.groovy
  1. … 9 more files in changeset.