flink-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From StephanEwen <...@git.apache.org>
Subject [GitHub] flink pull request #2092: [FLINK-3395] [build] Make test utils properly avai...
Date Sat, 11 Jun 2016 00:49:05 GMT
GitHub user StephanEwen opened a pull request:


    [FLINK-3395] [build] Make test utils properly available and fix Maven dependencies

    This pull requests fixes maven project scopes:
      - No **main** scope must ever depend on a **test** scope
      - Common test utils (`ForkableMiniCluster`, `TestEnvironment`, ...) should not be in
test-jars, but in reusable and user-exposed test utils projects in **main** scope.
      - The number of test-jar dependencies should be minimal
    ## New Structure
      - Created a **flink-test-utils-junit** module that contains all JUnit related utils
        - `TestLogger`
        - `RetryRules`
        This reduces the `flink-core` `test-jar` dependency.
      - The **flink-test-utils** project contains all necessary utils for most tests
        - `ForkableMiniCluster`
        - `TestEnvironment` & `TestStreamEnvironment`
        - `MultipleProgramsTestBase` & `StreamingMultipleProgramsTestBase`
        - ...
      - The `flink-test-utils-junit` and `flink-test-utils` are in the parent project `flink-test-utils-parent`.
    Tons of tests have minor adjustments to use different ways of accessing a specific test
utility function, to keep the dependencies smaller.
    ## Other Fixes
      - Removed unnecessary dependencies in the test scope
      - The Table API no longer pulls the example projects into the main scope
      - The Kafka consumer no longer pulls zkclient into the main scope
    The size of this pull request is very large, but most edits are straightforward minor
changes due to moving certain util classes and consolidating duplicate util classes.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/StephanEwen/incubator-flink test_utils

Alternatively you can review and apply these changes as the patch at:


To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #2092
commit 0c10ccb1aab18d0709861297f6aa2b8c58512d51
Author: Stephan Ewen <sewen@apache.org>
Date:   2016-05-30T18:56:05Z

    [FLINK-3995] [build] Properly structure test scopes and dependencies
    Makes the JUnit test utils (TestLogger, retry rules, ...) properly available to
    other projects without the 'flink-core' test-jar, via the 'flink-test-utils-junit' project.
    Makes the ForkableMiniCluster, TestEnvironment,  and other test utilities available in
the 'main'
    scope of the 'flink-test-utils' project.
    Creates a 'flink-test-utils-parent' project that holds the 'flink-test-utils-junit' and
    'flink-test-utils' project.
    Also moves some tests between projects and inlines some very simple utility functions
    order to simplify some test jar dependencies.

commit 151324df1d314ce46737bf9994ca7a960c29e6ed
Author: Stephan Ewen <sewen@apache.org>
Date:   2016-06-11T00:14:07Z

    [FLINK-3995] [build] flink-test-utils also contains the streaming test utilities.
    Test utilities include the StreamingMultipleProgramsTestBase and StreamingTestEnvironment.
    This moves the ITCases for streaming into 'flink-tests' to achieve that.


If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.

View raw message