private void GetValidContextAndSettingWhichOnTable(out ToyRobotContext context, out TableTopSettings settings) { context = new ToyRobotContext(); settings = new TableTopSettings(); var position = new Position() { X = 10, Y = 10 }; context.Position = position; context.Facing = Facing.North; settings.MaxX = 15; settings.MinX = 5; settings.MaxY = 15; settings.MinY = 5; }
private static IContainer DependencyInjectionConfig() { var builder = new ContainerBuilder(); var settings = new TableTopSettings() { MaxX = 4, MinX = 0, MaxY = 4, MinY = 0 }; builder .RegisterInstance <TableTopSettings>(settings) .As <ITableTopSettings>(); builder .RegisterType <ToyRobotContext>() .As <IToyRobotContext>() .InstancePerLifetimeScope(); builder .RegisterType <ToyRobotService>() .As <IToyRobotService>() .InstancePerLifetimeScope(); builder .RegisterType <ConsoleWriter>() .As <IWriter>() .InstancePerLifetimeScope(); builder .RegisterAssemblyTypes(typeof(ICommand).GetTypeInfo().Assembly) .AsClosedTypesOf(typeof(ICommandHandler <>)) .InstancePerLifetimeScope(); builder .RegisterType <CommandInvoker>() .As <ICommandInvoker>() .InstancePerLifetimeScope(); var container = builder.Build(); return(container); }