Browse Source

Display NuGet version in package management console.

pull/15/head
Matt Ward 14 years ago
parent
commit
6dd81bc8ab
  1. 23
      src/AddIns/Misc/PackageManagement/Project/Src/Scripting/PackageManagementConsoleHost.cs
  2. 7
      src/AddIns/Misc/PackageManagement/Test/Src/Helpers/TestablePackageManagementConsoleHost.cs
  3. 14
      src/AddIns/Misc/PackageManagement/Test/Src/Scripting/PackageManagementConsoleHostTests.cs

23
src/AddIns/Misc/PackageManagement/Project/Src/Scripting/PackageManagementConsoleHost.cs

@ -3,6 +3,7 @@ @@ -3,6 +3,7 @@
using System;
using System.Collections.Generic;
using System.Reflection;
using System.Threading;
using ICSharpCode.AvalonEdit;
@ -20,6 +21,7 @@ namespace ICSharpCode.PackageManagement.Scripting @@ -20,6 +21,7 @@ namespace ICSharpCode.PackageManagement.Scripting
IPackageManagementAddInPath addinPath;
int autoIndentSize = 0;
string prompt = "PM> ";
Version nuGetVersion;
public PackageManagementConsoleHost(
IPowerShellHostFactory powerShellHostFactory,
@ -68,6 +70,7 @@ namespace ICSharpCode.PackageManagement.Scripting @@ -68,6 +70,7 @@ namespace ICSharpCode.PackageManagement.Scripting
void RunSynchronous()
{
InitPowerShell();
WriteInfoBeforeFirstPrompt();
WritePrompt();
ProcessUserCommands();
}
@ -97,6 +100,26 @@ namespace ICSharpCode.PackageManagement.Scripting @@ -97,6 +100,26 @@ namespace ICSharpCode.PackageManagement.Scripting
powerShellHost.ModulesToImport.Add(module);
}
void WriteInfoBeforeFirstPrompt()
{
WriteNuGetVersionInfo();
}
void WriteNuGetVersionInfo()
{
string versionInfo = String.Format("NuGet {0}", GetNuGetVersion());
ScriptingConsole.WriteLine(versionInfo, ScriptingStyle.Out);
}
protected virtual Version GetNuGetVersion()
{
if (nuGetVersion == null) {
AssemblyName name = typeof(PackageSource).Assembly.GetName();
nuGetVersion = name.Version;
}
return nuGetVersion;
}
void WritePrompt()
{
ScriptingConsole.Write(prompt, ScriptingStyle.Prompt);

7
src/AddIns/Misc/PackageManagement/Test/Src/Helpers/TestablePackageManagementConsoleHost.cs

@ -41,5 +41,12 @@ namespace PackageManagement.Tests.Helpers @@ -41,5 +41,12 @@ namespace PackageManagement.Tests.Helpers
ThreadStartPassedToCreateThread = threadStart;
return FakeThread;
}
public Version VersionToReturnFromGetNuGetVersion = new Version("1.2");
protected override Version GetNuGetVersion()
{
return VersionToReturnFromGetNuGetVersion;
}
}
}

14
src/AddIns/Misc/PackageManagement/Test/Src/Scripting/PackageManagementConsoleHostTests.cs

@ -201,5 +201,19 @@ namespace PackageManagement.Tests.Scripting @@ -201,5 +201,19 @@ namespace PackageManagement.Tests.Scripting
CollectionAssert.AreEqual(files, actualFiles);
}
[Test]
public void Run_TextDisplayedBeforeFirstPromptDisplayed_NuGetVersionDisplayed()
{
CreateHost();
host.VersionToReturnFromGetNuGetVersion = new Version("1.2.0.4");
RunHost();
string expected = "NuGet 1.2.0.4";
bool contains = scriptingConsole.AllTextPassedToWriteLine.Contains(expected);
Assert.IsTrue(contains);
}
}
}

Loading…
Cancel
Save