AbstractConfigurationAttributesResolveIntegrationTest.groovy

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Handle the case where an attribute is relevant to the consumer but not to the producer

This commit introduces the notion of "partial matches", which are allowed whenever an attribute

is relevant to a consumer, but not to a producer. For example, a consumer wants to depend on

a library with `flavor: 'free', buildType:'debug'` but the consumer only cares about flavors.

In that case, we have a partial match. This commit changes the algorithm to take that into

account, and makes sure that complete matches are preferred over partial matches.

    • -11
    • +63
    ./AbstractConfigurationAttributesResolveIntegrationTest.groovy
  1. … 2 more files in changeset.
Add integration test cases for the use cases we want to cover in better attribute matching

    • -2
    • +185
    ./AbstractConfigurationAttributesResolveIntegrationTest.groovy
  1. … 2 more files in changeset.
Add strongly typed variant of configuration attributes resolution integration test

This test adds a variant of the configuration attributes resolving integration test that

makes use of strongly typed attributes instead of the basic string version. To do this,

tests were extracted into a super class and both variants of the test provide the notation

for attributes.

    • -0
    • +1096
    ./AbstractConfigurationAttributesResolveIntegrationTest.groovy
  1. … 4 more files in changeset.