public static RouteSegment MakeDoublePoint(string identifier1 = null, string identifier2 = null, string colour = null)
 {
     return(new Faker <RouteSegment>()
            .CustomInstantiator(
                f => new RouteSegment(
                    f.Random.String2(4),
                    new Point(identifier1 ?? f.Random.ArrayElement(Identifiers)),
                    new Point(identifier2 ?? f.Random.ArrayElement(Identifiers)),
                    DefinitionFactory.Make(),
                    DocblockFactory.Make(),
                    CommentFactory.Make(),
                    colour ?? ColourFactory.RandomIdentifier()
                    )
                ));
 }
 public static Label Make(
     string text           = null,
     string colour         = null,
     Definition definition = null
     )
 {
     return(new Faker <Label>()
            .CustomInstantiator(
                _ => new Label(
                    text ?? "Test Label",
                    CoordinateFactory.Make(),
                    colour ?? ColourFactory.RandomIdentifier(),
                    definition ?? DefinitionFactory.Make(),
                    DocblockFactory.Make(),
                    CommentFactory.Make()
                    )
                ));
 }