Example #1
0
        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);
            });
        }
Example #4
0
        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);
        }
Example #5
0
        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);
        }
Example #6
0
        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);
        }
Example #7
0
        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);
        }
Example #8
0
        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);
        }
Example #10
0
        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);
        }
Example #11
0
        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);
        }
Example #13
0
        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));
        }
Example #15
0
        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);
        }
Example #16
0
 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));
        }