Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Force AbstractTestDirectoryProvider to use Class (#12431)

Closes https://github.com/gradle/gradle-private/issues/2988

This PR adds `className` to `AbstractTestDirectoryProvider` so there'll be no more `unknown-test-class`.

  1. … 407 more files in changeset.
Fix tests

  1. … 372 more files in changeset.
Use ProjectBuilder.builder() instead of deprecated constructor

  1. … 3 more files in changeset.
Allow the services required by a given class to be queried prior to creating any instances of that class. Use this to allow `ArtifactTransformDependencies` to be injected into artifact transforms using any of the service injection patterns (that is, via a constructor or a getter).

  1. … 127 more files in changeset.
Remove some direct usages of `AsmBackedClassGenerator` from tests, and instead use `TestUtil` fixture to take care of setting up a decorating `Instantiator`.

  1. … 17 more files in changeset.
Report TestNG test methods below test classes

Prior to this commit, test methods were reported as siblings of their

test classes for recent versions of TestNG:

gradle test executor test descriptor

└── test Ng suite test descriptor

├── class level suite test descriptor

└── test method test descriptor

Now, test methods are reported as children of their test classes:

gradle test executor test descriptor

└── test Ng suite test descriptor

└── class level suite test descriptor

└── test method test descriptor

Resolves #6679.

    • -1
    • +3
    ./TestNGTestResultProcessorAdapterTest.groovy
  1. … 5 more files in changeset.
Adjust samples and tests with simpler useTestNG usage

  1. … 2 more files in changeset.
Dogfood JUnit Platform

  1. … 6 more files in changeset.
Stop test execution after first failure (#4190)

* Rough pass at stopNow() on test failure

* Updated worker TestClassProcessor.stopNow() to throw UnsupportedOperationException

* Updated MaxNParallelTestClassProcessor to keep "raw" processors for stopNow().

Updated other daemon-side TestClassProcessors to keep track if stopNow() is called.

* Added AbstractTestTask.getFailFast()

* Added some unit tests for to TestClassProcessors

* Added unit tests for stopNow()

* Rough pass at JUnitFailFastIntegrationTest

* Refactor fail fast JVM integration test.

Moved common logic/tests from JUnitFailFastIntegrationTest into AbstractJvmFailFastIntegrationSpec.

Added TestNGFailFastIntegrationTest (which extends TestNGFailFastIntegrationTest)

* Working on forkEvery fail fast test

* Converted FailFastTestListener to FailFastTestListenerInternal

* Added BlockingHttpServer.expectMaybeAndBlock()

* TestNG parallel & fail-fast integration test

* Remove unused import

* Remove unused import

* Marked test.failFast as @Input

* Added `failFast` to java_plugin in userguide

* Javadoc & formatting changes

* Updated userguide docs based on review comments

* Moved `failFast` configuration from `AbstractTestTask` to `Test` to avoid `XCTest`

* Updates from review comments

* More updates from review comments

* Reduced Mock() usage in FailFastTestListenerInternalTest

* Backed out changes to XCTestExecuter for fail fast behavior

* Fixed typo in javadoc

* Remove --no-fail-fast `@Option` from `Test`

* Reduce mocking expectations in ForkingTestClassProcessorTest

* Moved @Internal from Test.getFailFast() to AbstractTestTask

* Formatting updates

* Updated ForkingTestClassProcessor to track state more precisely to avoid stop() & stopNow() problem

* Fixed tests (again)

* Better handling of mutual exclusion between ForkingTestClassProcessor stop() and stopNow() sections

* Improved resiliency to indeterminate generated test class execution in fail fast tests

* Optimized imports

* Updated DefaultWorkerProcess.cleanup() to stop the Stoppables before aborting the execHandle

* Changed CyclicBarrierAnyOfRequestHandler.expected back to `private`

* ForkingTestClassProcessor.stoppedNow does not need to be `volatile` as it is now protected by a lock

* Added JUnitPlatformTestClassProcessor.stopNow()

* Removed mention of --no-fail-fast from user guide

* Added info on --fail-fast to release notes

* Fixed use of `testOmitted` in AbstractJvmFailFastIntegrationSpec

* Make MaxNParallelTestClassProcessor drop any processTestClass() invocations after stopNow()

* Protected critical region in ForkingTestClassProcessor.processTestClass() causing race condition with stopNow() in tests

* Debugging cleanup

  1. … 41 more files in changeset.
Dogfood JUnit Platform

  1. … 10 more files in changeset.
Polishing

    • -4
    • +5
    ./TestNGTestResultProcessorAdapterTest.groovy
  1. … 2 more files in changeset.
Defend against NPE when running disabled tests. (#3570)

    • -0
    • +58
    ./TestNGTestResultProcessorAdapterTest.groovy
  1. … 2 more files in changeset.
Strive to keep Gradle's monotonic clock in sync with the system clock

  1. … 71 more files in changeset.
Simplify time handling internally and for build scans (#2857)

* Don't make TimeProvider Serializable.

This isn't safe and generally doesn't make sense.

* Extract and promote the concept of a build timer.

This was previously not well defined and being overlaid with the concept of when a user/tool requested something, which is not always the same thing.

* Pare down the deprecated org.gradle.util.Clock down to the minimum required.

Internal usage is replaced by a `getStartTime()` directly on BuildRequestContext.

What is left is only kept for backwards compatibility with scans.

* Rename TimeProvider to Clock.

* Move BuildExecutionTimer out of baseServices into core, and into a better package.

* Remove unused.

* Simplify the time package by merging types.

* Prevent the client's build started timestamp from being later than when the provider received the build request.

* Provide a dedicated mechanism for conveying the build start time to build scans.

* Consolidate the ways of formatting durations.

    • -6
    • +10
    ./TestNGTestClassProcessorTest.groovy
  1. … 179 more files in changeset.
Move integration tests to unit tests

  1. … 3 more files in changeset.
Moved `Clock` and `TimeProvider` into a separate package

This commit reverts recent changes to the API of

`org.gradle.util.Clock`, and instead deprecates the existing type

replacing with a new internal type. This was done because the

`ExtractDslMetaDataTask` uses this type for timing, and external plugins may have copied this pattern.

`org.gradle.util.Clock` is now deprecated.

  1. … 103 more files in changeset.
Remove TestNG source annotation support

  1. … 22 more files in changeset.
Better equals/hashcode contract for TestNGListenerAdapters - changes from review

Pull-request #622

Jira GRADLE-3189

+review REVIEW-5975

    • -1
    • +5
    ./TestNGListenerAdapterFactorySpec.groovy
  1. … 1 more file in changeset.
Fix equals/hashcode contract for TestNGListenerAdapters

Pull-request #622

Jira GRADLE-3189

+review REVIEW-5975

    • -3
    • +3
    ./TestNGListenerAdapterFactorySpec.groovy
  1. … 1 more file in changeset.
Address https://issues.gradle.org/browse/GRADLE-3189. Add equals method to TestNGListenerAdapterFactory to get rid of duplicated listener instances. Incorporated changes according to code review.

    • -0
    • +11
    ./TestNGListenerAdapterFactorySpec.groovy
  1. … 1 more file in changeset.
Busted up some package cycles and switched on classcycle checks for 'messaging' project.

  1. … 32 more files in changeset.
Start migrating test classes to the most appropriate subproject

Story: gradle/langos#103

Item: refactor-plugins

    • -0
    • +80
    ./TestNGListenerAdapterFactorySpec.groovy
    • -0
    • +417
    ./TestNGTestClassProcessorTest.groovy
    • -0
    • +75
    ./TestNGTestFrameworkTest.groovy
  1. … 122 more files in changeset.