public string Present(string suiteAttributeType, [CanBeNull] IClass clazz) { var subjectAttributeData = clazz?.GetAttributeData(suiteAttributeType); if (subjectAttributeData == null) { return(null); } var subjectAttribute = subjectAttributeData.ToCommon(); var subjectAttributeConstructor = subjectAttributeData.Constructor.NotNull(); var displayFormatAttribute = subjectAttributeConstructor.GetAttributeData <DisplayFormatAttribute>().NotNull().ToCommon(); return(_introspectionPresenter.Present(displayFormatAttribute, clazz.ToCommon(), subjectAttribute)); }
public string Present(IClassDeclaration classDeclaration) { var clazz = (IClass)classDeclaration.DeclaredElement; var subjectAttributeData = clazz.GetAttributeData <SuiteAttributeBase>(); if (subjectAttributeData == null) { return(null); } var subjectAttribute = subjectAttributeData.ToCommon(); var subjectAttributeConstructor = subjectAttributeData.Constructor; var displayFormatAttribute = subjectAttributeConstructor.GetAttributeData <DisplayFormatAttribute>().ToCommon(); return(_introspectionPresenter.Present(displayFormatAttribute, clazz.ToCommon(), subjectAttribute)); }
public string Present(IClassDeclaration classDeclaration) { var clazz = (IClass)classDeclaration.DeclaredElement; var subjectAttributeData = clazz.GetAttributeData <SubjectAttributeBase>(); if (subjectAttributeData == null) { return(null); } var subjectAttribute = subjectAttributeData.ToCommon(); var subjectAttributeClass = subjectAttributeData.GetAttributeType().GetTypeElement <IClass>().AssertNotNull(); var subjectAttributeConstructor = subjectAttributeClass.Constructors.Single(); var displayFormatAttribute = subjectAttributeConstructor.GetAttributeData <DisplayFormatAttribute>().ToCommon(); return(_introspectionPresenter.Present(displayFormatAttribute, subjectAttribute)); }
protected virtual string GetText(Type suiteType) { var subjectAttribute = GetDisplayAttribute(suiteType); var displayFormatAttribute = subjectAttribute?.Constructor.GetAttributeData <DisplayFormatAttribute>().NotNull(); if (displayFormatAttribute == null) { return(null); } return(_introspectionPresenter.Present(displayFormatAttribute.ToCommon(), suiteType.ToCommon(), subjectAttribute.ToCommon())); }
public ISuiteProvider Load(Type suiteType, ICollection <TypedLazy <ILazyBootstrap> > assemblySetups, IIdentity assemblyIdentity) { var uninitializedSuite = (TSuiteType)FormatterServices.GetUninitializedObject(suiteType); var subjectAttribute = suiteType.GetAttributeData <SubjectAttributeBase>(); var displayFormatAttribute = subjectAttribute.Constructor.GetAttributeData <DisplayFormatAttribute>(); var text = _introspectionPresenter.Present(displayFormatAttribute.ToCommon(), subjectAttribute.ToCommon()); var identity = assemblyIdentity.CreateChildIdentity(suiteType.FullName); var provider = SuiteProvider.Create(identity, text, ignored: false); InitializeAssemblySetupFields(uninitializedSuite, assemblySetups.ToList()); InitializeTypeSpecificFields(uninitializedSuite, provider); InvokeConstructor(uninitializedSuite); return(provider); }
public ISuiteProvider Load(Type suiteType, IDictionary <Type, Lazy <IAssemblySetup> > assemblySetups, IIdentity assemblyIdentity) { var uninitializedSuite = FormatterServices.GetUninitializedObject(suiteType); var subjectAttribute = suiteType.GetAttributeData <SuiteAttributeBase>(); var displayFormatAttribute = subjectAttribute.Constructor.GetAttributeData <DisplayFormatAttribute>(); var text = _introspectionPresenter.Present(displayFormatAttribute.ToCommon(), suiteType.ToCommon(), subjectAttribute.ToCommon()); var identity = assemblyIdentity.CreateChildIdentity(suiteType.FullName); var resources = suiteType.GetAttribute <ResourcesAttribute>().GetValueOrDefault(x => x.Resources, () => new string[0]); var provider = SuiteProvider.Create(identity, text, ignored: false, resources: resources); InitializeAssemblySetupFields(uninitializedSuite, assemblySetups); InitializeTypeSpecificFields(uninitializedSuite, provider); InvokeConstructor(uninitializedSuite); return(provider); }