Integrate Java driver examples into automated build process#3297
Integrate Java driver examples into automated build process#3297kirill-stepanishin wants to merge 2 commits intoapache:3.7-devfrom
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## 3.7-dev #3297 +/- ##
=============================================
- Coverage 76.14% 75.51% -0.64%
+ Complexity 13152 13143 -9
=============================================
Files 1084 1092 +8
Lines 65160 67101 +1941
Branches 7285 7389 +104
=============================================
+ Hits 49616 50671 +1055
- Misses 12839 13808 +969
+ Partials 2705 2622 -83 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
- Move examples from gremlin-driver to gremlin-server test sources - Add DriverExamplesIntegrateTest to run examples against test server - Change examples to use System.getProperty for test compatibility - Update ModernTraversals to use gmodern traversal source - Remove compiler exclusion for examples in gremlin-driver pom
917f1db to
81d6dc0
Compare
...in-server/src/test/java/org/apache/tinkerpop/gremlin/driver/DriverExamplesIntegrateTest.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
It's a bit odd to me that this file runs the main function of other classes. I know those classes are there to mimic the ones from gremlin-examples, but seeing as how this is going to be tied to integration test, you might as well just make each of those classes a test in this file instead? Just a thought, doesn't really need to be changed if you feel that it makes more sense this way.
There was a problem hiding this comment.
I agree that making the examples complete tests makes more sense in this isolated context. It's done more to mimic the rest of the GLVs, where currently the examples are also simply executed as part of the integration tests. Perhaps adding output validation and converting examples into proper tests could be a future piece of work.
As of now, I think it makes sense to keep the current approach to stay consistent with the other GLVs, and the main goal of catching the breaking changes that affect examples is still achieved.
|
VOTE +1 |
1 similar comment
|
VOTE +1 |
Integrates Java driver examples into CI to ensure they remain functional and catch breaking changes in the driver. Examples now execute automatically during integration tests and fail the build if broken.
Changes Made
gremlin-driver/src/main/java/examplestogremlin-server/src/test/java/examplesto add example execution into existing integration test infrastuctureDriverExamplesIntegrateTestto run examples against test servergremlin-driver/pom.xmlRoot-level Java driver examples remain available in
gremlin-examples/gremlin-java