@Test
    public void testGroup() throws IOException {
        try (SerializationTester t = new SerializationTester("testGroup")) {
            t.assertMatch(new Group());
            t.assertMatch(new Group().setId(new IntegerResultNode(50))
                    .setRank(10));
            t.assertMatch(new Group().setId(new IntegerResultNode(100))
                    .addChild(new Group().setId(new IntegerResultNode(110)))
                    .addChild(new Group().setId(new IntegerResultNode(120))
                            .setRank(20.5)
                            .addAggregationResult(new SumAggregationResult()
                                    .setExpression(createDummyExpression()))
                            .addAggregationResult(new SumAggregationResult()
                                    .setExpression(createDummyExpression())))
                    .addChild(new Group().setId(new IntegerResultNode(130))
                            .addChild(new Group().setId(new IntegerResultNode(131)))));
        }
    }
Tests serialization compatibility across Java and C++. The comparison is performed by comparing serialized Java
object graphs with the content of specific binary files. C++ unit tests serializes
identical data structures into these files.
Note: This test relies heavily on proper implementation of {@link Object#equals(Object)}!
searchlib/src/test/java/com/yahoo/searchlib/aggregation/GroupingSerializationTest.java