public void DefaultCreationBehavior() { ScreenConductor c = CreateConductor(); c.OpenScreen(ScreenFactory.For <DefaultCreationBehaviorScreen>(Locator)); c.OpenScreen(ScreenFactory.For <DefaultCreationBehaviorScreen>(Locator)); Assert.AreEqual(2, c.Screens.Count()); }
public void MultipleInstances() { ScreenConductor c = CreateConductor(); c.OpenScreen(ScreenFactory.For <MultipleInstancesScreen>(Locator)); c.OpenScreen(ScreenFactory.For <MultipleInstancesScreen>(Locator)); Assert.AreEqual(2, c.Screens.Count()); }
public void SingleInstance() { ScreenConductor c = CreateConductor(); c.OpenScreen(ScreenFactory.For <SingleInstanceScreen>(Locator)); c.OpenScreen(ScreenFactory.For <SingleInstanceScreen>(Locator)); Assert.AreEqual(1, c.Screens.Count()); }
public void OpenScreen_WithBaseClassScreenFactory_DoesNotOpenScreenIfActualTypesMatch() { ScreenConductor c = CreateConductor(); c.OpenScreen(ScreenFactory.For <SingleInstanceScreen>(Locator)); IScreenFactory <IScreenBase> baseFactory = ScreenFactory .For <SingleInstanceScreen>(Locator); c.OpenScreen(baseFactory); Assert.AreEqual(1, c.Screens.Count()); }
private void OpenScreen(ScreenConductor conductor, IScreenBase screen) { try { conductor.OpenScreen(ScreenFactory.For(screen)); } catch (ScreenLifecycleException) { } }