public void ConfigureContainer(ServiceConfigurationContext context) { var stopwatch = new Stopwatch(); stopwatch.Start(); context.Services.AddSingleton <IContentSerializer, JsonContentSerializer>(); context.Services.AddSingleton <IPropertyManager, PropertyManager>(); context.Services.AddSingleton <IPropertyNameStrategy, PropertyNameStrategy>(); context.Services.AddSingleton <IPropertyResolver, PropertyResolver>(); context.Services.AddSingleton <IUrlHelper, UrlHelperAdapter>(); context.Services.AddSingleton <IContentJsonSerializer, JsonContentSerializer>(); context.Services.AddSingleton <IPropertyHandlerService, PropertyHandlerService>(); context.Services.AddSingleton <IContentSerializerSettings, ContentSerializerSettings>(); context.Services.AddSingleton <IPropertyHandler <int>, IntPropertyHandler>(); context.Services.AddSingleton <IPropertyHandler <bool>, BoolPropertyHandler>(); context.Services.AddSingleton <IPropertyHandler <double>, DoublePropertyHandler>(); context.Services.AddSingleton <IPropertyHandler <DateTime>, DateTimePropertyHandler>(); context.Services.AddSingleton <IPropertyHandler <ContentArea>, ContentAreaPropertyHandler>(); context.Services.AddSingleton <IPropertyHandler <ContentReference>, ContentReferencePropertyHandler>(); context.Services.AddSingleton <IPropertyHandler <PageReference>, PageReferencePropertyHandler>(); context.Services.AddSingleton <IPropertyHandler <IEnumerable <ContentReference> >, ContentReferenceListPropertyHandler>(); context.Services.AddSingleton <IPropertyHandler <LinkItemCollection>, LinkItemCollectionPropertyHandler>(); context.Services.AddSingleton <IPropertyHandler <PageType>, PageTypePropertyHandler>(); context.Services.AddSingleton <IPropertyHandler <string>, StringPropertyHandler>(); context.Services.AddSingleton <IPropertyHandler <Url>, UrlPropertyHandler>(); context.Services.AddSingleton <IPropertyHandler <XhtmlString>, XhtmlStringPropertyHandler>(); context.Services.AddSingleton <IPropertyHandler <BlockData>, BlockDataPropertyHandler>(); var stringListPropertyHandler = new StringListPropertyHandler(); context.Services.AddSingleton <IPropertyHandler <IEnumerable <string> > >(stringListPropertyHandler); context.Services.AddSingleton <IPropertyHandler <ICollection <string> > >(stringListPropertyHandler); context.Services.AddSingleton <IPropertyHandler <IList <string> > >(stringListPropertyHandler); context.Services.AddSingleton <IPropertyHandler <string[]> >(stringListPropertyHandler); var intListPropertyHandler = new IntListPropertyHandler(); context.Services.AddSingleton <IPropertyHandler <IEnumerable <int> > >(intListPropertyHandler); context.Services.AddSingleton <IPropertyHandler <ICollection <int> > >(intListPropertyHandler); context.Services.AddSingleton <IPropertyHandler <IList <int> > >(intListPropertyHandler); var dateTimeListPropertyHandler = new DateTimeListPropertyHandler(); context.Services.AddSingleton <IPropertyHandler <IEnumerable <DateTime> > >(dateTimeListPropertyHandler); context.Services.AddSingleton <IPropertyHandler <ICollection <DateTime> > >(dateTimeListPropertyHandler); context.Services.AddSingleton <IPropertyHandler <IList <DateTime> > >(dateTimeListPropertyHandler); var doubleListPropertyHandler = new DoubleListPropertyHandler(); context.Services.AddSingleton <IPropertyHandler <IEnumerable <double> > >(doubleListPropertyHandler); context.Services.AddSingleton <IPropertyHandler <ICollection <double> > >(doubleListPropertyHandler); context.Services.AddSingleton <IPropertyHandler <IList <double> > >(doubleListPropertyHandler); var defaultSelectStrategy = new DefaultSelectStrategy(); context.Services.AddSingleton <ISelectOneStrategy>(defaultSelectStrategy); context.Services.AddSingleton <ISelectManyStrategy>(defaultSelectStrategy); stopwatch.Stop(); Trace.WriteLine($"{nameof(ContentSerializerInitalizationModule)} took {stopwatch.ElapsedMilliseconds}ms"); }
public void GivenIntListProperty_WhenGetStructuredData_ThenReturnsCorrectValue() { var ints = new List <int> { 1000, 2000 }; var page = new StandardPageBuilder().WithInts(ints).Build(); var serviceLocator = Substitute.For <IServiceLocator>(); serviceLocator.TryGetExistingInstance(typeof(IPropertyHandler <IEnumerable <int> >), out var _).Returns(x => { x[1] = new IntListPropertyHandler(_contentSerializerSettings); return(true); }); ServiceLocator.SetLocator(serviceLocator); var result = this._sut.GetStructuredData(page, this._contentSerializerSettings); result.ShouldContain(x => x.Key.Equals(nameof(StandardPage.Ints)) && x.Value.Equals(ints)); }
public IntListPropertyHandlerTests() { this._sut = new IntListPropertyHandler(); }
public IntListPropertyHandlerTests() { this._sut = new IntListPropertyHandler(new ContentSerializerSettings()); }