public void Setup()
{
queryServiceGroups = new List<Group>();
queryServiceRoles = new List<Role>();
queryService = Substitute.For<IQueryService>();
commandBus = new Lazy<ICommandBus>(() => Substitute.For<ICommandBus>());
queryService.GetGroups().Returns(queryServiceGroups);
queryService.GetRoles().Returns(queryServiceRoles);
commandBus.Value
.When(o => o.Send(Arg.Is<Envelope<ICommand>>(p => p.Body is CreateExternalUserAccountCommand)))
.Do(o => MockUser(o.Arg<Envelope<ICommand>>().Body as CreateExternalUserAccountCommand));
sut = new UserService(queryService, commandBus);
}