diff options
author | Lluis Sanchez <llsan@microsoft.com> | 2018-12-14 12:58:38 +0300 |
---|---|---|
committer | Lluis Sanchez <llsan@microsoft.com> | 2018-12-14 12:58:38 +0300 |
commit | 169ddeafec18417583feb5fd6dde31c1b4da4515 (patch) | |
tree | 726c7a42b6ccf5d21dcb2f14330e7dad964c2944 /main/src/addins/MonoDevelop.PackageManagement/MonoDevelop.PackageManagement.Tests | |
parent | 2bafc53724a1ef5ed7a8e44815b84ce783aa05a0 (diff) | |
parent | ce1db18fc957dbd79b54ee55bb7737c7377b9d61 (diff) |
Merge remote-tracking branch 'origin/master' into release-8.0
Diffstat (limited to 'main/src/addins/MonoDevelop.PackageManagement/MonoDevelop.PackageManagement.Tests')
2 files changed, 36 insertions, 4 deletions
diff --git a/main/src/addins/MonoDevelop.PackageManagement/MonoDevelop.PackageManagement.Tests/MonoDevelop.PackageManagement.Tests.Helpers/RestoreTestBase.cs b/main/src/addins/MonoDevelop.PackageManagement/MonoDevelop.PackageManagement.Tests/MonoDevelop.PackageManagement.Tests.Helpers/RestoreTestBase.cs index 108d690e2c..d32b11c11f 100644 --- a/main/src/addins/MonoDevelop.PackageManagement/MonoDevelop.PackageManagement.Tests/MonoDevelop.PackageManagement.Tests.Helpers/RestoreTestBase.cs +++ b/main/src/addins/MonoDevelop.PackageManagement/MonoDevelop.PackageManagement.Tests/MonoDevelop.PackageManagement.Tests.Helpers/RestoreTestBase.cs @@ -24,6 +24,7 @@ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. +using System; using System.IO; using System.Linq; using System.Threading; @@ -92,10 +93,6 @@ namespace MonoDevelop.PackageManagement.Tests.Helpers protected static Task RestoreDotNetCoreNuGetPackages (Solution solution) { var solutionManager = new MonoDevelopSolutionManager (solution); - var context = new FakeNuGetProjectContext { - LogToConsole = true - }; - var restoreManager = new MonoDevelopBuildIntegratedRestorer (solutionManager); var projects = solution.GetAllDotNetProjects ().Select (p => new DotNetCoreNuGetProject (p)); @@ -120,5 +117,23 @@ namespace MonoDevelop.PackageManagement.Tests.Helpers return context; } + + protected class PackagManagementEventsConsoleLogger : IDisposable + { + public PackagManagementEventsConsoleLogger () + { + PackageManagementServices.PackageManagementEvents.PackageOperationMessageLogged += PackageOperationMessageLogged; + } + + public void Dispose () + { + PackageManagementServices.PackageManagementEvents.PackageOperationMessageLogged -= PackageOperationMessageLogged; + } + + void PackageOperationMessageLogged (object sender, PackageOperationMessageLoggedEventArgs e) + { + Console.WriteLine (e.Message.ToString ()); + } + } } } diff --git a/main/src/addins/MonoDevelop.PackageManagement/MonoDevelop.PackageManagement.Tests/MonoDevelop.PackageManagement.Tests/DotNetCoreRestoreTests.cs b/main/src/addins/MonoDevelop.PackageManagement/MonoDevelop.PackageManagement.Tests/MonoDevelop.PackageManagement.Tests/DotNetCoreRestoreTests.cs index 0a2b5da798..c8a043cf6c 100644 --- a/main/src/addins/MonoDevelop.PackageManagement/MonoDevelop.PackageManagement.Tests/MonoDevelop.PackageManagement.Tests/DotNetCoreRestoreTests.cs +++ b/main/src/addins/MonoDevelop.PackageManagement/MonoDevelop.PackageManagement.Tests/MonoDevelop.PackageManagement.Tests/DotNetCoreRestoreTests.cs @@ -24,6 +24,7 @@ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. +using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; @@ -58,5 +59,21 @@ namespace MonoDevelop.PackageManagement.Tests Assert.AreEqual ("4.5.0", fsharpCore.Version); } + + [Test] + public async Task OfflineRestore_NetCore21Project () + { + FilePath solutionFileName = Util.GetSampleProject ("restore-netcore-offline", "dotnetcoreconsole.sln"); + solution = (Solution)await Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor (), solutionFileName); + var project = solution.GetAllDotNetProjects ().Single (); + + using (var logger = new PackagManagementEventsConsoleLogger ()) { + await RestoreDotNetCoreNuGetPackages (solution); + } + + var packagesDirectory = solution.BaseDirectory.Combine ("packages-cache"); + Assert.IsFalse (Directory.Exists (packagesDirectory)); + Assert.IsTrue (File.Exists (project.BaseDirectory.Combine ("obj", "project.assets.json"))); + } } } |