Add image integration tests for new DS_EXPERIMENTAL_GRADLE_BUILTIN_PARSER
Proposal
Once Implement gemnasium parser for gradle dependenc... (#360626 - closed) • Philip Cunningham • 16.10 • On track has been completed, we can leverage the new DS_EXPERIMENTAL_GRADLE_BUILTIN_PARSER environment variable to add new image integration tests to cover all the scenarios that we weren't able to accommodate using the previous gemnasium-gradle-plugin.
Implementation Plan
Improve image integration test coverage:
-
Add a test with a single dependency with different versions in different scopes (configurations). This test covers the case discussed here. For example: dependencies { testRuntimeClasspath 'org.slf4j:slf4j-api:1.7.31' implementation 'org.slf4j:slf4j-api:1.7.30' runtimeClasspath 'org.slf4j:slf4j-api:1.7.25' } -
Add a test to handle gradle dependency constraints as described in this comment. To be more specific, we must be able to show that we can successfully execute a dependency scan against the files in this branch. -
Add a test to handle the the situation where gradle dependenciesfails to resolve a dependency, as described in this comment. -
Add a test against a large open-source gradle project, such as k9mail/k-9. See this comment for more details -
[ ] Add a test with large dependency files, such as the316 MBfile discussed here. Note: I didn't provide a link to the "project with a large number of scopes", and I can't remember which project I used for this, so unfortunately you'll need to dig around to find such a project. Having said that, perhaps this case is covered already by step4.above, if that step happens to create large dependency files (for example, over100 MB).