public void WhenNoCurrentMatchingViewExists_ThenReturnsNewlyCreatedInstanceWithServiceLocatorAddedToTheRegion() { // Arrange var serviceLocatorMock = new Mock <IServiceLocator>(); var region = new Region(); var view = new TestView(); serviceLocatorMock .Setup(sl => sl.GetInstance <object>(view.GetType().Name)) .Returns(view); var navigationContext = new NavigationContext(null, new Uri(view.GetType().Name, UriKind.Relative)); var navigationTargetHandler = new TestRegionNavigationContentLoader(serviceLocatorMock.Object); // Act var returnedView = navigationTargetHandler.LoadContent(region, navigationContext); // Assert Assert.AreSame(view, returnedView); Assert.IsTrue(region.Views.Contains(view)); }
public void WhenViewAddedByHandlerDoesNotImplementINavigationAware_ThenReturnsView() { // Arrange var serviceLocatorMock = new Mock <IServiceLocator>(); var region = new Region(); var view = new TestView(); serviceLocatorMock .Setup(sl => sl.GetInstance <object>(view.GetType().Name)) .Returns(view); var navigationContext = new NavigationContext(null, new Uri(view.GetType().Name, UriKind.Relative)); var navigationTargetHandler = new TestRegionNavigationContentLoader(serviceLocatorMock.Object); // Act var firstReturnedView = navigationTargetHandler.LoadContent(region, navigationContext); var secondReturnedView = navigationTargetHandler.LoadContent(region, navigationContext); // Assert Assert.AreSame(view, firstReturnedView); Assert.AreSame(view, secondReturnedView); serviceLocatorMock.Verify(sl => sl.GetInstance <object>(view.GetType().Name), Times.Once()); }
public void WhenNoCurrentMatchingViewExists_ThenReturnsNewlyCreatedInstanceWithServiceLocatorAddedToTheRegion() { // Arrange var containerMock = new Mock <IContainerExtension>(); var region = new Region(); var view = new TestView(); containerMock.Setup(sl => sl.Resolve(typeof(object), view.GetType().Name)).Returns(view); containerMock.Setup(x => x.Resolve(typeof(IActiveRegionHelper))) .Returns(new RegionResolverOverrides()); var navigationContext = new NavigationContext(null, new Uri(view.GetType().Name, UriKind.Relative)); var navigationTargetHandler = new TestRegionNavigationContentLoader(containerMock.Object); // Act var returnedView = navigationTargetHandler.LoadContent(region, navigationContext); // Assert Assert.Same(view, returnedView); Assert.True(region.Views.Contains(view)); }
public void WhenNoCurrentMatchingViewExists_ThenReturnsNewlyCreatedInstanceWithServiceLocatorAddedToTheRegion() { // Arrange var serviceLocatorMock = new Mock<IServiceLocator>(); var region = new Region(); var view = new TestView(); serviceLocatorMock .Setup(sl => sl.GetInstance<object>(view.GetType().Name)) .Returns(view); var navigationContext = new NavigationContext(null, new Uri(view.GetType().Name, UriKind.Relative)); var navigationTargetHandler = new TestRegionNavigationContentLoader(serviceLocatorMock.Object); // Act var returnedView = navigationTargetHandler.LoadContent(region, navigationContext); // Assert Assert.AreSame(view, returnedView); Assert.IsTrue(region.Views.Contains(view)); }
public void WhenViewExistsAndDoesNotImplementINavigationAware_ThenReturnsView() { // Arrange var serviceLocatorMock = new Mock <IServiceLocator>(); var region = new Region(); var view = new TestView(); region.Add(view); var navigationContext = new NavigationContext(null, new Uri(view.GetType().Name, UriKind.Relative)); var navigationTargetHandler = new TestRegionNavigationContentLoader(serviceLocatorMock.Object); // Act var returnedView = navigationTargetHandler.LoadContent(region, navigationContext); // Assert Assert.AreSame(view, returnedView); }
public void WhenViewExistsAndDoesNotImplementINavigationAware_ThenReturnsView() { // Arrange var serviceLocatorMock = new Mock<IServiceLocator>(); var region = new Region(); var view = new TestView(); region.Add(view); var navigationContext = new NavigationContext(null, new Uri(view.GetType().Name, UriKind.Relative)); var navigationTargetHandler = new TestRegionNavigationContentLoader(serviceLocatorMock.Object); // Act var returnedView = navigationTargetHandler.LoadContent(region, navigationContext); // Assert Assert.AreSame(view, returnedView); }
public void WhenViewExistsAndDoesNotImplementIRegionAware_ThenReturnsView() { // Arrange var containerMock = new Mock <IContainerExtension>(); containerMock.Setup(x => x.Resolve(typeof(IActiveRegionHelper))) .Returns(new RegionResolverOverrides()); var region = new Region(); var view = new TestView(); region.Add(view); var navigationContext = new NavigationContext(null, new Uri(view.GetType().Name, UriKind.Relative)); var navigationTargetHandler = new TestRegionNavigationContentLoader(containerMock.Object); // Act var returnedView = navigationTargetHandler.LoadContent(region, navigationContext); // Assert Assert.Same(view, returnedView); }
public void WhenViewAddedByHandlerDoesNotImplementINavigationAware_ThenReturnsView() { // Arrange var containerMock = new Mock <IContainerExtension>(); var region = new Region(); var view = new TestView(); containerMock.Setup(sl => sl.Resolve(typeof(object), view.GetType().Name)).Returns(view); var navigationContext = new NavigationContext(null, new Uri(view.GetType().Name, UriKind.Relative)); var navigationTargetHandler = new TestRegionNavigationContentLoader(containerMock.Object); // Act var firstReturnedView = navigationTargetHandler.LoadContent(region, navigationContext); var secondReturnedView = navigationTargetHandler.LoadContent(region, navigationContext); // Assert Assert.Same(view, firstReturnedView); Assert.Same(view, secondReturnedView); containerMock.Verify(sl => sl.Resolve(typeof(object), view.GetType().Name), Times.Once()); }
public void WhenViewAddedByHandlerDoesNotImplementINavigationAware_ThenReturnsView() { // Arrange var serviceLocatorMock = new Mock<IServiceLocator>(); var region = new Region(); var view = new TestView(); serviceLocatorMock .Setup(sl => sl.GetInstance<object>(view.GetType().Name)) .Returns(view); var navigationContext = new NavigationContext(null, new Uri(view.GetType().Name, UriKind.Relative)); var navigationTargetHandler = new TestRegionNavigationContentLoader(serviceLocatorMock.Object); // Act var firstReturnedView = navigationTargetHandler.LoadContent(region, navigationContext); var secondReturnedView = navigationTargetHandler.LoadContent(region, navigationContext); // Assert Assert.AreSame(view, firstReturnedView); Assert.AreSame(view, secondReturnedView); serviceLocatorMock.Verify(sl => sl.GetInstance<object>(view.GetType().Name), Times.Once()); }