public void AddingFrameworkReference_CallSaveProject()
            {
                // arrange
                var mockProject = MockGenerator.CreateMockMSBuildProject_SaveMethodVerifiable();

                // act
                var projectSystem = new NuGetMsBuildProjectSystem(@"C:\DummyPath\Dummy.csproj", MockGenerator.CreateMSBuildProjectFactory(mockProject.Object));

                projectSystem.AddFrameworkReference("System.Web");

                // assert
                mockProject.Verify();
            }
            public void AddingReference_CallSaveProject()
            {
                // arrange
                var mockProject = MockGenerator.CreateMockMSBuildProject_SaveMethodVerifiable();

                // act
                var projectSystem = new NuGetMsBuildProjectSystem(@"C:\DummyPath\Dummy.csproj", MockGenerator.CreateMSBuildProjectFactory(mockProject.Object));

                projectSystem.AddReference(@"C:\DummyPath\packages\Dummy.dll", Stream.Null);

                // assert
                mockProject.Verify();
            }
            public void RemovingReference_CallSaveProject()
            {
                // arrange
                var mockProject = MockGenerator.CreateMockMSBuildProject_SaveMethodVerifiable();

                mockProject.Setup(p => p.ReferenceExists(It.Is <string>(s => s == "Dummy" || s == "Dummy.dll"))).Returns(true);
                mockProject.Setup(p => p.RemoveItem("Reference", "Dummy")).Verifiable();

                // act
                var projectSystem = new NuGetMsBuildProjectSystem(@"C:\DummyPath\Dummy.csproj", MockGenerator.CreateMSBuildProjectFactory(mockProject.Object));

                projectSystem.RemoveReference(@"Dummy.dll");

                // assert
                mockProject.Verify();
            }