Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove use of the IntegrationTest sbt configuration #1013

Merged

Conversation

stevedlawrence
Copy link
Member

Upcoming versions of sbt will deprecate the IntegrationTest configuration. Using their suggested migration path, this moves the existing integration tests to a new daffodil-test-integration project. Because of the extra time needed to stage the CLi and run the tests, this project is not aggregeated so must be run manually.

DAFFODIL-2811

Copy link
Contributor

@mbeckerle mbeckerle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 Very clean fix. I can see why they removed the IntegrationTest feature given that this is the workaround. It's just better done this way.

@stevedlawrence stevedlawrence force-pushed the daffodil-2811-integration-tests branch from 24a7c7e to 7ffa5e3 Compare May 8, 2023 15:59
Copy link
Contributor

@tuxji tuxji left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1

I wonder if this change could help us merge #986 which failed CI due to a conflict in jline jars between sbt's classpath and daffodil's classpath? Steve opened a sbt ticket sbt/sbt#7177 and the offered solution was to fork the tests. If only one or two tests were impacted, we could move them to daffodil-test-integration. If too many tests were affected, never mind.

@@ -161,7 +161,7 @@ jobs:
run: $SBT test

- name: Run Integration Tests
run: $SBT IntegrationTest/test
run: $SBT daffodil-test-integration/Test/test
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

According to the DEVELOP.md changes below, daffodil-test-integration/test would work too. Why do you use the longer daffodil-test-integration/Test/test in the CI workflow?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good call, the Test isn't needed, will remove.

@stevedlawrence
Copy link
Member Author

I wonder if this change could help us merge #986

Possibly. It looks like 42 tests failed in the jline PR, so we'd probably need to move all of those here. Doable, but would probably cause CI to take much longer.

The debugger isn't a really a critical part of the CLI, and I don't know of any updates to jline that we really need. Maybe we just avoid upgrading jline until sbt fixes this issue? Unfortunately that might be a while, likely not until 2.0 at the earliest, but I don't think we're in any rush to update jline.

Upcoming versions of sbt will deprecate the IntegrationTest
configuration. Using their suggested migration path, this moves the
existing integration tests to a new daffodil-test-integration project.
Because of the extra time needed to stage the CLI and run the tests,
this project is not aggregeated so must be run manually.

Integration test are now run with the command:

    sbt daffodil-test-integration/test

DAFFODIL-2811
@stevedlawrence stevedlawrence force-pushed the daffodil-2811-integration-tests branch from 7ffa5e3 to acdc139 Compare May 8, 2023 18:09
@stevedlawrence stevedlawrence merged commit d524759 into apache:main May 8, 2023
@stevedlawrence stevedlawrence deleted the daffodil-2811-integration-tests branch May 8, 2023 19:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants