extract logic for opening project and preserving directory and path to separate class

This commit is contained in:
Krzysztof Wicher 2016-11-29 10:23:04 -08:00
parent 1edda43dd1
commit 4e3c73e778
4 changed files with 129 additions and 107 deletions

View file

@ -44,20 +44,7 @@ namespace Microsoft.DotNet.Tools.Remove.ProjectToProjectReference
throw new GracefulException(LocalizableStrings.RequiredArgumentNotPassed, "<Project>");
}
ProjectRootElement project;
string projectDir;
if (File.Exists(projectArgument.Value))
{
project = P2PHelpers.GetProjectFromFileOrThrow(projectArgument.Value);
projectDir = new FileInfo(projectArgument.Value).DirectoryName;
}
else
{
project = P2PHelpers.GetProjectFromDirectoryOrThrow(projectArgument.Value);
projectDir = projectArgument.Value;
}
projectDir = PathUtility.EnsureTrailingSlash(projectDir);
var msbuildProj = MsbuildProject.FromFileOrDirectory(projectArgument.Value);
if (app.RemainingArguments.Count == 0)
{
@ -67,13 +54,13 @@ namespace Microsoft.DotNet.Tools.Remove.ProjectToProjectReference
List<string> references = app.RemainingArguments;
int numberOfRemovedReferences = P2PHelpers.RemoveProjectToProjectReference(
project,
msbuildProj.Project,
frameworkOption.Value(),
references);
if (numberOfRemovedReferences != 0)
{
project.Save();
msbuildProj.Project.Save();
}
return 0;