func (group *ExampleGroup) Root() *ExampleGroup {
	if group.Parent == nil {
		return group
	}
	ancestors := group.Ancestors()
	return ancestors[len(ancestors) - 1]
}
Gets root ExampleGroup defined by Describe func.
package gospel
import (
	"fmt"
	"testing"
)
type ExampleGroup struct {
	*testing.T
	Parent *ExampleGroup
	Description string
	Result string
	BeforeFilters []func()
	AfterFilters []func()
}
func (group *ExampleGroup) PrintResult() {
	fmt.Fprint(Output, group.Result)
}
func (group *ExampleGroup) Ancestors() []*ExampleGroup {
	ancestors := []*ExampleGroup{}
	for parent := group.Parent; parent != nil; parent = parent.Parent {
		ancestors = append(ancestors, parent)
	}
	return ancestors
}
func (group *ExampleGroup) ReverseAncestors() []*ExampleGroup {
	reversed := []*ExampleGroup{}
	ancestors := group.Ancestors()
	for i := len(ancestors) - 1; i >= 0; i-- {
		reversed = append(reversed, ancestors[i])
	}
	return reversed
}