public void Constructor_NullAsCapabilities_ThrowsArgumentNull() { var imageProvider = IProjectImageProviderFactory.Create(); Assert.Throws <ArgumentNullException>("capabilities", () => { new ProjectRootImageProjectTreePropertiesProvider((IProjectCapabilitiesService)null, imageProvider); }); }
public void Constructor_NullAsDesignerService_ThrowsArgumentNull() { var projectServices = IUnconfiguredProjectCommonServicesFactory.Create(); var imageProvider = IProjectImageProviderFactory.Create(); Assert.Throws <ArgumentNullException>("designerService", () => { new MyProjectFolderProjectTreePropertiesProvider(imageProvider, projectServices, (IProjectDesignerService)null); }); }
public void Constructor_NullAsProjectServices_ThrowsArgumentNull() { var imageProvider = IProjectImageProviderFactory.Create(); var designerService = IProjectDesignerServiceFactory.Create(); Assert.Throws <ArgumentNullException>("projectServices", () => { new PropertiesFolderProjectTreePropertiesProvider(imageProvider, (IUnconfiguredProjectCommonServices)null, designerService); }); }
public void ChangePropertyValues_TreeWithAppDesignerFolder_SetsIconAndExpandedIconToAppDesignerFolder(string input, string expected) { var designerService = IProjectDesignerServiceFactory.ImplementSupportsProjectDesigner(() => true); var imageProvider = IProjectImageProviderFactory.ImplementGetProjectImage(ProjectImageKey.AppDesignerFolder, new ProjectImageMoniker(new Guid("AE27A6B0-E345-4288-96DF-5EAF394EE369"), 1)); var propertiesProvider = CreateInstance(imageProvider, designerService); var inputTree = ProjectTreeParser.Parse(input); var expectedTree = ProjectTreeParser.Parse(expected); Verify(propertiesProvider, expectedTree, inputTree); }
public void ChangePropertyValues_TreeWithAppDesignerFolderWhenImageProviderReturnsNull_DoesNotSetIconAndExpandedIcon(string input, string expected) { var designerService = IProjectDesignerServiceFactory.ImplementSupportsProjectDesigner(() => true); var imageProvider = IProjectImageProviderFactory.ImplementGetProjectImage(ProjectImageKey.AppDesignerFolder, null); var propertiesProvider = CreateInstance(imageProvider, designerService); var inputTree = ProjectTreeParser.Parse(input); var expectedTree = ProjectTreeParser.Parse(expected); Verify(propertiesProvider, expectedTree, inputTree); }
public void CalculatePropertyValues_NonProjectRootAsTree_DoesNotSetIcon(string input) { var imageProvider = IProjectImageProviderFactory.ImplementGetProjectImage(ProjectImageKey.ProjectRoot, new ProjectImageMoniker(new Guid("{A140CD9F-FF94-483C-87B1-9EF5BE9F469A}"), 1)); var propertiesProvider = CreateInstance(imageProvider); var tree = ProjectTreeParser.Parse(input); var result = propertiesProvider.ChangePropertyValuesForEntireTree(tree.Children[0]); Assert.Null(tree.Icon); }
public void CalculatePropertyValues_ProjectRootAsTree_SetsIconToProjectRoot(string input, string expected) { var imageProvider = IProjectImageProviderFactory.ImplementGetProjectImage(ProjectImageKey.ProjectRoot, new ProjectImageMoniker(new Guid("{A140CD9F-FF94-483C-87B1-9EF5BE9F469A}"), 1)); var propertiesProvider = CreateInstance(imageProvider); var inputTree = ProjectTreeParser.Parse(input); var expectedTree = ProjectTreeParser.Parse(expected); var result = propertiesProvider.ChangePropertyValuesForEntireTree(inputTree); AssertAreEquivalent(expectedTree, result); }
public void GetImageKey_SingleImageProviderReturningNull_ReturnsNull() { var project = UnconfiguredProjectFactory.Create(); var provider = IProjectImageProviderFactory.ImplementGetProjectImage((key) => null); var aggregator = CreateInstance(project); aggregator.ImageProviders.Add(provider); var result = aggregator.GetProjectImage("key"); Assert.Null(result); }
public void ChangePropertyValues_TreeWithPropertiesCandidateWhenImageProviderReturnsNull_DoesNotSetIconAndExpandedIcon(string input, string expected) { var designerService = IProjectDesignerServiceFactory.ImplementSupportsProjectDesigner(() => true); var imageProvider = IProjectImageProviderFactory.ImplementGetProjectImage(ProjectImageKey.AppDesignerFolder, null); var propertiesProvider = CreateInstance(imageProvider, designerService); var inputTree = ProjectTreeParser.Parse(input); var expectedTree = ProjectTreeParser.Parse(expected); var result = propertiesProvider.ChangePropertyValuesForEntireTree(inputTree); AssertAreEquivalent(expectedTree, result); }
public void GetImageKey_SingleImageProviderReturningKey_ReturnsKey() { var moniker = new ProjectImageMoniker(Guid.NewGuid(), 0); var project = UnconfiguredProjectFactory.Create(); var provider = IProjectImageProviderFactory.ImplementGetProjectImage((key) => moniker); var aggregator = CreateInstance(project); aggregator.ImageProviders.Add(provider); var result = aggregator.GetProjectImage("key"); Assert.Same(moniker, result); }
public void CalculatePropertyValues_ProjectRootAsTreeWhenImageProviderReturnsNull_DoesNotSetIcon() { var imageProvider = IProjectImageProviderFactory.ImplementGetProjectImage((string key) => null); var propertiesProvider = CreateInstance(imageProvider); var icon = new ProjectImageMoniker(new Guid("{A140CD9F-FF94-483C-87B1-9EF5BE9F469A}"), 1); var tree = ProjectTreeParser.Parse("Root (flags: {ProjectRoot})"); tree = tree.SetIcon(icon); var result = propertiesProvider.ChangePropertyValuesForEntireTree(tree); Assert.Same(icon, tree.Icon); }
public void CalculatePropertyValues_WhenSharedItemsImportFileAsTree_SetsIconToSharedItemsImportFile(string input, string expected) { var capabilities = IProjectCapabilitiesServiceFactory.ImplementsContains(capability => { return(capability == ProjectCapabilities.SharedAssetsProject); }); var imageProvider = IProjectImageProviderFactory.ImplementGetProjectImage(ProjectImageKey.SharedItemsImportFile, new ProjectImageMoniker(new Guid("{A140CD9F-FF94-483C-87B1-9EF5BE9F469A}"), 1)); var propertiesProvider = CreateInstance(capabilities, imageProvider); var inputTree = ProjectTreeParser.Parse(input); var expectedTree = ProjectTreeParser.Parse(expected); var result = propertiesProvider.ChangePropertyValuesForEntireTree(inputTree); AssertAreEquivalent(expectedTree, result); }
public void GetImageKey_ManyImageProviders_ReturnsFirstThatReturnsKey() { var moniker = new ProjectImageMoniker(Guid.NewGuid(), 0); var project = UnconfiguredProjectFactory.Create(); var provider1 = IProjectImageProviderFactory.ImplementGetProjectImage((key) => null); var provider2 = IProjectImageProviderFactory.ImplementGetProjectImage((key) => moniker); var aggregator = CreateInstance(project); aggregator.ImageProviders.Add(provider1, orderPrecedence: 0); aggregator.ImageProviders.Add(provider2, orderPrecedence: 10); var result = aggregator.GetProjectImage("key"); Assert.Same(moniker, result); }
private MyProjectFolderProjectTreePropertiesProvider CreateInstance(IProjectImageProvider imageProvider, IProjectDesignerService designerService, string appDesignerFolder = "My Project") { designerService = designerService ?? IProjectDesignerServiceFactory.Create(); var threadingService = IProjectThreadingServiceFactory.Create(); var project = IUnconfiguredProjectFactory.Create(); var projectProperties = ProjectPropertiesFactory.Create(project, new PropertyPageData() { Category = nameof(ConfigurationGeneral), PropertyName = nameof(ConfigurationGeneral.AppDesignerFolder), Value = appDesignerFolder }); var projectServices = IUnconfiguredProjectCommonServicesFactory.Create(project, threadingService, projectProperties.ConfiguredProject, projectProperties); return(new MyProjectFolderProjectTreePropertiesProvider(imageProvider ?? IProjectImageProviderFactory.Create(), projectServices, designerService)); }
public void GetImageKey_ManyImageProviderReturningKey_ReturnsFirstByOrder() { var moniker1 = new ProjectImageMoniker(Guid.NewGuid(), 0); var moniker2 = new ProjectImageMoniker(Guid.NewGuid(), 0); var project = UnconfiguredProjectFactory.Create(); var provider1 = IProjectImageProviderFactory.ImplementGetProjectImage((key) => moniker1); var provider2 = IProjectImageProviderFactory.ImplementGetProjectImage((key) => moniker2); var aggregator = CreateInstance(project); aggregator.ImageProviders.Add(provider2, orderPrecedence: 0); // Lowest aggregator.ImageProviders.Add(provider1, orderPrecedence: 10); // Highest var result = aggregator.GetProjectImage("key"); Assert.Same(moniker1, result); }
private AppDesignerFolderProjectTreePropertiesProvider CreateInstance(IProjectImageProvider imageProvider, IProjectDesignerService designerService) { return(new AppDesignerFolderProjectTreePropertiesProvider(imageProvider ?? IProjectImageProviderFactory.Create(), designerService ?? IProjectDesignerServiceFactory.Create())); }
private ProjectRootImageProjectTreePropertiesProvider CreateInstance(IProjectImageProvider imageProvider) { imageProvider = imageProvider ?? IProjectImageProviderFactory.Create(); return(new ProjectRootImageProjectTreePropertiesProvider(imageProvider)); }