public void ShouldGetRegisteredMapping_UsingGenericControlAndAdapter() { try { var regionAdapterMappings = new RegionAdapterMappings(); var regionAdapter = new MockRegionAdapter(); var containerMock = new Mock <IContainerExtension>(); containerMock.Setup(c => c.Resolve(typeof(MockRegionAdapter))) .Returns(regionAdapter); ContainerLocator.ResetContainer(); ContainerLocator.SetContainerExtension(() => containerMock.Object); regionAdapterMappings.RegisterMapping <ItemsControl, MockRegionAdapter>(); var returnedAdapter = regionAdapterMappings.GetMapping <ItemsControl>(); Assert.NotNull(returnedAdapter); Assert.Same(regionAdapter, returnedAdapter); } finally { ContainerLocator.ResetContainer(); } }
public void GetMappingOfUnregisteredTypeThrows() { var ex = Assert.Throws <KeyNotFoundException>(() => { var regionAdapterMappings = new RegionAdapterMappings(); regionAdapterMappings.GetMapping(typeof(object)); }); }
public void ShouldGetMappingForDerivedTypesThanTheRegisteredOnes() { var regionAdapterMappings = new RegionAdapterMappings(); var regionAdapter = new MockRegionAdapter(); regionAdapterMappings.RegisterMapping(typeof(ItemsControl), regionAdapter); var returnedAdapter = regionAdapterMappings.GetMapping(typeof(ItemsControlDescendant)); Assert.IsNotNull(returnedAdapter); Assert.AreSame(regionAdapter, returnedAdapter); }
public void ShouldGetRegisteredMapping() { var regionAdapterMappings = new RegionAdapterMappings(); Type registeredType = typeof(ItemsControl); var regionAdapter = new MockRegionAdapter(); regionAdapterMappings.RegisterMapping(registeredType, regionAdapter); var returnedAdapter = regionAdapterMappings.GetMapping(registeredType); Assert.IsNotNull(returnedAdapter); Assert.AreSame(regionAdapter, returnedAdapter); }
public void ShouldGetRegisteredMapping_UsingGenericControl() { var regionAdapterMappings = new RegionAdapterMappings(); var regionAdapter = new MockRegionAdapter(); regionAdapterMappings.RegisterMapping<ItemsControl>(regionAdapter); var returnedAdapter = regionAdapterMappings.GetMapping<ItemsControl>(); Assert.NotNull(returnedAdapter); Assert.Same(regionAdapter, returnedAdapter); }
public void ShouldGetTheMostSpecializedMapping() { var regionAdapterMappings = new RegionAdapterMappings(); var genericAdapter = new MockRegionAdapter(); var specializedAdapter = new MockRegionAdapter(); regionAdapterMappings.RegisterMapping(typeof(ItemsControl), genericAdapter); regionAdapterMappings.RegisterMapping(typeof(ItemsControlDescendant), specializedAdapter); var returnedAdapter = regionAdapterMappings.GetMapping(typeof(ItemsControlDescendant)); Assert.IsNotNull(returnedAdapter); Assert.AreSame(specializedAdapter, returnedAdapter); }
public void ShouldGetRegisteredMapping_UsingGenericControlAndAdapter() { try { var regionAdapterMappings = new RegionAdapterMappings(); var regionAdapter = new MockRegionAdapter(); ServiceLocator.SetLocatorProvider(() => new MockServiceLocator { GetInstance = t => regionAdapter }); regionAdapterMappings.RegisterMapping<ItemsControl, MockRegionAdapter>(); var returnedAdapter = regionAdapterMappings.GetMapping<ItemsControl>(); Assert.NotNull(returnedAdapter); Assert.Same(regionAdapter, returnedAdapter); } finally { ServiceLocator.SetLocatorProvider(null); } }
public void GetMappingOfUnregisteredTypeThrows() { var regionAdapterMappings = new RegionAdapterMappings(); regionAdapterMappings.GetMapping(typeof(object)); }