public void SdkDependenciesSubTreeProvider_CreateDependencyNode_Implicit() { const string itemSpec = "myItemSpec"; const string itemType = "myItemType"; const int priority = 15; var properties = new Dictionary <string, string> { { "myproPerty", "myValue" }, { SdkReference.SDKPackageItemSpecProperty, "somevalue" } }; const bool resolved = true; var provider = new TestableSdkDependenciesSubTreeProvider(null); var node = provider.TestCreateDependencyNode(itemSpec, itemType, priority, properties, resolved); Assert.True(node is SdkDependencyNode); Assert.True(node.Flags.Contains(SdkDependenciesSubTreeProvider.SdkSubTreeNodeFlags)); Assert.True(node.Flags.Contains(DependencyNode.DoesNotSupportRemove)); Assert.Equal(itemSpec, node.Caption); Assert.Equal(KnownMonikers.BrowserSDK, node.Icon); Assert.Equal(SdkDependenciesSubTreeProvider.ProviderTypeString, node.Id.ProviderType); Assert.Equal(DependencyNode.SdkNodePriority, node.Priority); Assert.Equal(2, node.Properties.Count); Assert.Equal("myValue", node.Properties["myproPerty"]); Assert.Equal("somevalue", node.Properties[SdkReference.SDKPackageItemSpecProperty]); }
public void SdkDependenciesSubTreeProvider_CreateRootNode() { var provider = new TestableSdkDependenciesSubTreeProvider(null); var rootNode = provider.TestCreateRootNode(); Assert.True(rootNode is SubTreeRootDependencyNode); Assert.True(rootNode.Flags.Contains(SdkDependenciesSubTreeProvider.SdkSubTreeRootNodeFlags)); Assert.Equal("SDK", rootNode.Caption); Assert.Equal(KnownMonikers.BrowserSDK, rootNode.Icon); Assert.Equal(SdkDependenciesSubTreeProvider.ProviderTypeString, rootNode.Id.ProviderType); }
public void SdkDependenciesSubTreeProvider_GetDependencyNode() { // Arrange const string packageItemSpec = "MyPackage1"; var rootNode = IDependencyNodeFactory.FromJson(@" { ""Id"": { ""ProviderType"": ""MyProvider"", ""ItemSpec"": ""MyRootNode"" } }"); var existingNode1 = IDependencyNodeFactory.FromJson(@" { ""Id"": { ""ProviderType"": ""MyProvider"", ""ItemSpec"": ""MyNodeItemSpec1"" }, ""Properties"": { ""SDKPackageItemSpec"": ""MyPackage1"" } }"); var existingNode2 = IDependencyNodeFactory.FromJson(@" { ""Id"": { ""ProviderType"": ""MyProvider"", ""ItemSpec"": ""MyNodeItemSpec2"" }, ""Properties"": { } }"); var childNode1 = IDependencyNodeFactory.FromJson(@" { ""Id"": { ""ProviderType"": ""MyProvider"", ""ItemSpec"": ""MyChildNodeItemSpec1"" } }"); var childNode2 = IDependencyNodeFactory.FromJson(@" { ""Id"": { ""ProviderType"": ""MyProvider"", ""ItemSpec"": ""MyChildNodeItemSpec2"" }, ""Properties"": { ""SDKPackageItemSpec"": ""SomeUnknownPackage"" } }"); rootNode.AddChild(existingNode1); rootNode.AddChild(existingNode2); var childrenToAdd = new[] { childNode1, childNode2 }; var nugetPackagesDataProvider = INuGetPackagesDataProviderFactory.ImplementUpdateNodeChildren(packageItemSpec, existingNode1, childrenToAdd); var provider = new TestableSdkDependenciesSubTreeProvider(nugetPackagesDataProvider); provider.SetRootNode(rootNode); // Successful scenario // Act var resultNode = provider.GetDependencyNode(existingNode1.Id); // Assert Assert.Equal(2, existingNode1.Children.Count); // node does not exist in root // Act resultNode = provider.GetDependencyNode(childNode1.Id); // Assert Assert.Null(resultNode); // node does not have proprty SDKPackageItemSpecProperty // Act resultNode = provider.GetDependencyNode(existingNode2.Id); // Assert Assert.Equal(existingNode2, resultNode); }
public async Task SdkDependenciesSubTreeProvider_SearchAsync() { // Arrange const string packageItemSpec = "MyPackage1"; var existingNode1 = IDependencyNodeFactory.FromJson(@" { ""Id"": { ""ProviderType"": ""MyProvider"", ""ItemSpec"": ""MyNodeItemSpec1"" }, ""Properties"": { ""SDKPackageItemSpec"": ""MyPackage1"" } }"); var existingNode2 = IDependencyNodeFactory.FromJson(@" { ""Id"": { ""ProviderType"": ""MyProvider"", ""ItemSpec"": ""MyNodeItemSpec2"" }, ""Properties"": { } }"); var searchResultNode1 = IDependencyNodeFactory.FromJson(@" { ""Id"": { ""ProviderType"": ""MyProvider"", ""ItemSpec"": ""MyChildNodeItemSpec1"" } }"); var searchResultNode2 = IDependencyNodeFactory.FromJson(@" { ""Id"": { ""ProviderType"": ""MyProvider"", ""ItemSpec"": ""MyChildNodeItemSpec2"" }, ""Properties"": { ""SDKPackageItemSpec"": ""SomeUnknownPackage"" } }"); var searchResults = new[] { searchResultNode1, searchResultNode2 }; var nugetPackagesDataProvider = INuGetPackagesDataProviderFactory.ImplementSearchAsync(packageItemSpec, "xxx", searchResults); var provider = new TestableSdkDependenciesSubTreeProvider(nugetPackagesDataProvider); // Successful scenario // Act var resultNodes = await provider.SearchAsync(existingNode1, "xxx"); // Assert Assert.Equal(2, resultNodes.Count()); // node does not have proprty SDKPackageItemSpecProperty // Act resultNodes = await provider.SearchAsync(existingNode2, "xxx"); // Assert Assert.Null(resultNodes); }