Class StructureStandardSuite

  • All Implemented Interfaces:
    org.junit.runner.Describable, org.junit.runner.manipulation.Filterable, org.junit.runner.manipulation.Orderable, org.junit.runner.manipulation.Sortable

    public class StructureStandardSuite
    extends AbstractGremlinSuite
    The StructureStandardSuite is a JUnit test runner that executes the Gremlin Test Suite over a Graph implementation. This specialized test suite and runner is for use by providers to test their Graph implementations. The StructureStandardSuite ensures consistency and validity of the implementations that they test. Successful execution of this test suite is critical to proper operations of a vendor implementation.

    To use the StructureStandardSuite define a class in a test module. Simple naming would expect the name of the implementation followed by "StructureStandardSuite". This class should be annotated as follows (note that the "Suite" implements GraphProvider as a convenience only. It could be implemented in a separate class file): @RunWith(StructureStandardSuite.class) @StructureStandardSuite.GraphProviderClass(TinkerGraphStructureStandardTest.class) public class TinkerGraphStructureStandardTest implements GraphProvider { } Implementing GraphProvider provides a way for the StructureStandardSuite to instantiate Graph instances from the implementation being tested to inject into tests in the suite. The StructureStandardSuite will utilized Features defined in the suite to determine which tests will be executed. Note that while the above example demonstrates configuration of this suite, this approach generally applies to all other test suites.

    Set the GREMLIN_TESTS environment variable to a comma separated list of qualified names of the test classes to execute. This setting can be helpful to restrict execution of tests to specific ones being focused on during development.

    Stephen Mallette (
    • Constructor Detail

      • StructureStandardSuite

        public StructureStandardSuite​(Class<?> klass,
                                      org.junit.runners.model.RunnerBuilder builder)
                               throws org.junit.runners.model.InitializationError