public void Constructor_NullAsTreeProvider_ThrowsArgumentNull() { var projectTreeService = new Lazy <IProjectTreeService>(() => IProjectTreeServiceFactory.Create()); var projectTreeStorage = new Lazy <IPhysicalProjectTreeStorage>(() => IPhysicalProjectTreeStorageFactory.Create()); Assert.Throws <ArgumentNullException>("treeProvider", () => { new PhysicalProjectTree(projectTreeService, (Lazy <IProjectTreeProvider>)null, projectTreeStorage); }); }
public void Constructor_WhenTreeServiceCurrentTreeIsNull_SetsCurrentTreeToNull() { var projectTreeService = new Lazy <IProjectTreeService>(() => IProjectTreeServiceFactory.ImplementCurrentTree(() => null)); var projectTreeProvider = new Lazy <IProjectTreeProvider>(() => IProjectTreeProviderFactory.Create()); var projectTreeStorage = new Lazy <IPhysicalProjectTreeStorage>(() => IPhysicalProjectTreeStorageFactory.Create()); var projectTree = new PhysicalProjectTree(projectTreeService, projectTreeProvider, projectTreeStorage); Assert.Null(projectTree.CurrentTree); }
public void Constructor_ValueAsTreeStorage_SetTreeStorageProperty() { var projectTreeService = new Lazy <IProjectTreeService>(() => IProjectTreeServiceFactory.Create()); var projectTreeProvider = new Lazy <IProjectTreeProvider>(() => IProjectTreeProviderFactory.Create()); var projectTreeStorage = new Lazy <IPhysicalProjectTreeStorage>(() => IPhysicalProjectTreeStorageFactory.Create()); var projectTree = new PhysicalProjectTree(projectTreeService, projectTreeProvider, projectTreeStorage); Assert.Same(projectTreeStorage.Value, projectTree.TreeStorage); }
public static IPhysicalProjectTree Create(IProjectTreeProvider?provider = null, IProjectTree?currentTree = null, IProjectTreeService?service = null, IPhysicalProjectTreeStorage?storage = null) { currentTree ??= ProjectTreeParser.Parse("Project"); provider ??= new ProjectTreeProvider(); storage ??= IPhysicalProjectTreeStorageFactory.Create(); service ??= IProjectTreeServiceFactory.Create(currentTree, provider); var mock = new Mock <IPhysicalProjectTree>(); mock.Setup(t => t.TreeProvider) .Returns(provider); mock.Setup(t => t.CurrentTree) .Returns(currentTree); mock.Setup(t => t.TreeService) .Returns(service); mock.Setup(t => t.TreeStorage) .Returns(storage); return(mock.Object); }
public void Constructor_ValueAsTreeService_SetsCurrentTreeToTreeServiceCurrentTreeTree() { var tree = ProjectTreeParser.Parse(@" Root (flags: {ProjectRoot}) "); var projectTreeServiceState = IProjectTreeServiceStateFactory.ImplementTree(() => tree); var projectTreeService = new Lazy <IProjectTreeService>(() => IProjectTreeServiceFactory.ImplementCurrentTree(() => projectTreeServiceState)); var projectTreeProvider = new Lazy <IProjectTreeProvider>(() => IProjectTreeProviderFactory.Create()); var projectTreeStorage = new Lazy <IPhysicalProjectTreeStorage>(() => IPhysicalProjectTreeStorageFactory.Create()); var projectTree = new PhysicalProjectTree(projectTreeService, projectTreeProvider, projectTreeStorage); Assert.Same(tree, projectTree.CurrentTree); }