public void EqualsAndGetHashCode()
        {
            var model1 = new TestableDependencyModel(
                path: "somePath",
                originalItemSpec: "SomeItemSpec1",
                flags: ProjectTreeFlags.HiddenProjectItem,
                resolved: true,
                isImplicit: true,
                properties: ImmutableStringDictionary <string> .EmptyOrdinal.Add("someProp1", "someVal1"));

            var model2 = new TestableDependencyModel(
                path: "somePath",
                originalItemSpec: "SomeItemSpec1",
                flags: ProjectTreeFlags.HiddenProjectItem,
                resolved: true,
                isImplicit: true,
                properties: ImmutableStringDictionary <string> .EmptyOrdinal.Add("someProp1", "someVal1"));

            var model3 = new TestableDependencyModel(
                path: "somePath",
                originalItemSpec: "SomeItemSpec2",
                flags: ProjectTreeFlags.HiddenProjectItem,
                resolved: true,
                isImplicit: true,
                properties: ImmutableStringDictionary <string> .EmptyOrdinal.Add("someProp1", "someVal1"));

            Assert.Equal(model1, model2);
            Assert.NotEqual(model1, model3);

            Assert.Equal(model1.GetHashCode(), model2.GetHashCode());
            Assert.NotEqual(model1.GetHashCode(), model3.GetHashCode());
        }
Ejemplo n.º 2
0
        public void Visible_TrueWhenNotSpecified()
        {
            var dependencyModel = new TestableDependencyModel(
                path: "somePath",
                originalItemSpec: "someItemSpec",
                flags: ProjectTreeFlags.Empty,
                resolved: true,
                isImplicit: false,
                properties: null);

            Assert.True(dependencyModel.Visible);
        }
Ejemplo n.º 3
0
        public void Visible_False()
        {
            var dependencyModel = new TestableDependencyModel(
                path: "somePath",
                originalItemSpec: "someItemSpec",
                flags: ProjectTreeFlags.Empty,
                resolved: true,
                isImplicit: false,
                properties: ImmutableStringDictionary <string> .EmptyOrdinal.Add("Visible", "false"));

            Assert.False(dependencyModel.Visible);
        }
Ejemplo n.º 4
0
        public void WhenCreatingADependencyFromAnotherDependency_ExistingIconSetInstanceIsReused()
        {
            var projectPath = @"C:\Foo\Project.csproj";

            var dependencyModel = new TestableDependencyModel(
                projectPath,
                "ItemSpec",
                iconSet: new DependencyIconSet(KnownMonikers.Reference, KnownMonikers.Reference, KnownMonikers.Reference, KnownMonikers.Reference));

            var dependency = new Dependency(dependencyModel, ITargetFrameworkFactory.Implement("tfm2"), projectPath);

            Assert.Same(dependencyModel.IconSet, dependency.IconSet);
        }
Ejemplo n.º 5
0
        public void Constructor_WhenOptionalValuesNotProvided_ShouldSetDefaults()
        {
            var model = new TestableDependencyModel(
                path: "somePath",
                originalItemSpec: null,
                flags: ProjectTreeFlags.Empty,
                resolved: false,
                isImplicit: false,
                properties: null);

            Assert.Equal("somePath", model.OriginalItemSpec);
            Assert.Equal(ImmutableStringDictionary <string> .EmptyOrdinal, model.Properties);
        }
Ejemplo n.º 6
0
        public void Constructor_WhenValidParametersProvided_ResolvedAndNotImplicit()
        {
            var model = new TestableDependencyModel(
                path: "somePath",
                originalItemSpec: "SomeItemSpec",
                flags: ProjectTreeFlags.HiddenProjectItem,
                resolved: true,
                isImplicit: false,
                properties: ImmutableStringDictionary <string> .EmptyOrdinal.Add("someProp1", "someVal1"));

            Assert.Equal("SomeItemSpec", model.Id);
            Assert.Equal("someProvider", model.ProviderType);
            Assert.Equal("somePath", model.Path);
            Assert.Equal("SomeItemSpec", model.OriginalItemSpec);
            Assert.Equal(ProjectTreeFlags.HiddenProjectItem, model.Flags);
            Assert.True(model.Resolved);
            Assert.False(model.Implicit);
            Assert.Single(model.Properties);
        }
Ejemplo n.º 7
0
        public void Constructor_WhenValidParametersProvided_UnresolvedAndNotImplicit()
        {
            var model = new TestableDependencyModel(
                providerType: "somProvider",
                path: "somePath",
                originalItemSpec: "SomeItemSpec",
                flags: ProjectTreeFlags.HiddenProjectItem,
                resolved: false,
                isImplicit: false,
                properties: ImmutableDictionary <string, string> .Empty.Add("someProp1", "someVal1"),
                version: "version1\\");

            Assert.Equal("SomeItemSpec\\version1", model.Id);
            Assert.Equal("somProvider", model.ProviderType);
            Assert.Equal("somePath", model.Path);
            Assert.Equal("SomeItemSpec", model.OriginalItemSpec);
            Assert.True(model.Flags.Contains(ProjectTreeFlags.HiddenProjectItem));
            Assert.True(model.Flags.Contains(DependencyTreeFlags.GenericUnresolvedDependencyFlags));
            Assert.False(model.Resolved);
            Assert.False(model.Implicit);
            Assert.Single(model.Properties);
        }
Ejemplo n.º 8
0
        public void DependencyModel_EqualsAndGetHashCode()
        {
            var model1 = new TestableDependencyModel(
                providerType: "somProvider",
                path: "somePath",
                originalItemSpec: "SomeItemSpec1",
                flags: ProjectTreeFlags.HiddenProjectItem,
                resolved: true,
                isImplicit: true,
                properties: ImmutableDictionary <string, string> .Empty.Add("someProp1", "someVal1"),
                version: "versio1\\");

            var model2 = new TestableDependencyModel(
                providerType: "somProvider",
                path: "somePath",
                originalItemSpec: "SomeItemSpec1",
                flags: ProjectTreeFlags.HiddenProjectItem,
                resolved: true,
                isImplicit: true,
                properties: ImmutableDictionary <string, string> .Empty.Add("someProp1", "someVal1"),
                version: "versio1\\");

            var model3 = new TestableDependencyModel(
                providerType: "somProvider",
                path: "somePath",
                originalItemSpec: "SomeItemSpec2",
                flags: ProjectTreeFlags.HiddenProjectItem,
                resolved: true,
                isImplicit: true,
                properties: ImmutableDictionary <string, string> .Empty.Add("someProp1", "someVal1"),
                version: "versio1\\");

            Assert.Equal(model1, model2);
            Assert.NotEqual(model1, model3);
            Assert.Equal("someitemspec1\\versio1".GetHashCode() + "somprovider".GetHashCode(), model1.GetHashCode());
        }