protected override void Initialize(Type suiteType, object suite, SuiteProvider provider) { var closedSpeckType = suiteType.GetClosedTypeOf(typeof(ISuite <>)).NotNull(); var subjectType = closedSpeckType.GetGenericArguments().Single(); var suiteController = _controllerFactory.CreateClassSuiteController(subjectType, provider); suite.SetMemberValue("_classSuiteController", suiteController); suite.SetMemberValue("_subjectFactory", _subjectFactory); }