### Question:
ImmutableGroupBuilder { @Nonnull public ImmutableGroupBuilder parent() { checkState(current.parent != null, "Builder is at root node, no parent to step to"); current = current.parent; return this; } ImmutableGroupBuilder(); @Nonnull ImmutableGroupBuilder group(@Nonnull String... names); @Nonnull ImmutableGroupBuilder group(@Nonnull Collection<String> names); @Nonnull ImmutableGroupBuilder add(@Nonnull Object command); @Nonnull ImmutableGroupBuilder parent(); @Nonnull ImmutableGroupBuilder root(); @CheckReturnValue @Nonnull CommandGroup build(); @Nonnull @CheckReturnValue CommandGroup compile(CommandCompiler compiler);  }### Answer:
@Test void testRootNode() { assertThrows(IllegalStateException.class, () -> ImmutableGroup.builder().parent(), "going to parent from root was not met with an exception"); }