Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/dotnet/runtime.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSwaroop Sridhar <Swaroop.Sridhar@microsoft.com>2020-05-01 19:24:13 +0300
committerGitHub <noreply@github.com>2020-05-01 19:24:13 +0300
commit47ec733ba79b196e4e09d0c89bad245155002353 (patch)
tree98fc7124abbcb678abe9687e757a77e638560f05 /src/installer/test/Microsoft.NET.HostModel.Tests/AppHost.Bundle.Tests/BundledAppWithSubDirs.cs
parent6d1f7e01d3429054ec3dcb7c75b3450b9fe1429e (diff)
[release/5.0-preview4] Revert processing bundles in framework (#35679)v5.0.0-preview.4.20251.6
This commit reverts: Revert "Single-File: Process bundles in the framework (#34274)" This reverts commit 78b303df8fbb242985d049a277d0d199cafd51b5. Revert "Single-File Bundler: Add a FileSize test (#35149)" This reverts commit 779588a509b81d909ac5d496c172949ec1f1ddcc. *Customer Scenario* Publishing apps as a self-contained single-file doesn't work as expected. * Publish needs to generate hostpolicy and hostfxr separate from the single file bundle * Cross-platform publishing is incorrect *Problem* Since Static-apphost is not yet ready, processing bundle content in hostpolicy means that hostpolicy and hostfxr DLLs need to be separate from the bundle. This causes self-contained single-file apps to not be a "single file" temporarily. The change also requires supporting changes from the SDK, to publish hostfxr and hostpolicy as separate files, and to invoke HostModel library with arguments that facilitate cross-platform publishing. *Solution* To solve these, problem, this change reverts: Revert "Single-File: Process bundles in the framework (#34274)" commit 78b303df8fbb242985d049a277d0d199cafd51b5. and a dependent test-only change: Revert "Single-File Bundler: Add a FileSize test (#35149)" commit 779588a509b81d909ac5d496c172949ec1f1ddcc. *Risk* Medium The change is contained to only host components: apphost, hostpolicy, and hostfxr. However, the change is big, and needs testing in runtime and SDK repos. *Testing* Manually tested the SDK by inserting apphost, hostfxr, hostpolicy, and hostmodel library from this build into the `dotnet/packs` preview-4 SDK from https://github.com/dotnet/sdk/pull/11518 build. Verified that: * Singlefile apps can be published and run OK for { Windows, Linux, Osx } x {netcoreapp3.0, netcoreapp3.1, netcoreapp5.0} * Cross-targeting builds of single-file apps build and run OK (ex: built on Windos, run on Mac).
Diffstat (limited to 'src/installer/test/Microsoft.NET.HostModel.Tests/AppHost.Bundle.Tests/BundledAppWithSubDirs.cs')
-rw-r--r--src/installer/test/Microsoft.NET.HostModel.Tests/AppHost.Bundle.Tests/BundledAppWithSubDirs.cs34
1 files changed, 12 insertions, 22 deletions
diff --git a/src/installer/test/Microsoft.NET.HostModel.Tests/AppHost.Bundle.Tests/BundledAppWithSubDirs.cs b/src/installer/test/Microsoft.NET.HostModel.Tests/AppHost.Bundle.Tests/BundledAppWithSubDirs.cs
index 33e05b5c050..59360c09f99 100644
--- a/src/installer/test/Microsoft.NET.HostModel.Tests/AppHost.Bundle.Tests/BundledAppWithSubDirs.cs
+++ b/src/installer/test/Microsoft.NET.HostModel.Tests/AppHost.Bundle.Tests/BundledAppWithSubDirs.cs
@@ -2,12 +2,11 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
-using BundleTests.Helpers;
-using Microsoft.DotNet.Cli.Build.Framework;
-using Microsoft.NET.HostModel.Bundle;
-using Microsoft.DotNet.CoreSetup.Test;
using System;
using Xunit;
+using Microsoft.DotNet.Cli.Build.Framework;
+using BundleTests.Helpers;
+using Microsoft.DotNet.CoreSetup.Test;
namespace AppHost.Bundle.Tests
{
@@ -32,16 +31,11 @@ namespace AppHost.Bundle.Tests
.HaveStdOutContaining("Wow! We now say hello to the big world and you.");
}
- // BundleOptions.BundleNativeBinaries: Test when the payload data files are unbundled, and beside the single-file app.
- // BundleOptions.BundleAllContent: Test when the payload data files are bundled and extracted to temporary directory.
- // Once the runtime can load assemblies from the bundle, BundleOptions.None can be used in place of BundleOptions.BundleNativeBinaries.
- [InlineData(BundleOptions.BundleNativeBinaries)]
- [InlineData(BundleOptions.BundleAllContent)]
- [Theory]
- public void Bundled_Framework_dependent_App_Run_Succeeds(BundleOptions options)
+ [Fact]
+ public void Bundled_Framework_dependent_App_Run_Succeeds()
{
var fixture = sharedTestState.TestFrameworkDependentFixture.Copy();
- var singleFile = BundleHelper.BundleApp(fixture, options);
+ var singleFile = BundleHelper.BundleApp(fixture);
// Run the bundled app (extract files)
RunTheApp(singleFile);
@@ -50,13 +44,11 @@ namespace AppHost.Bundle.Tests
RunTheApp(singleFile);
}
- [InlineData(BundleOptions.BundleNativeBinaries)]
- [InlineData(BundleOptions.BundleAllContent)]
- [Theory]
- public void Bundled_Self_Contained_App_Run_Succeeds(BundleOptions options)
+ [Fact]
+ public void Bundled_Self_Contained_App_Run_Succeeds()
{
var fixture = sharedTestState.TestSelfContainedFixture.Copy();
- var singleFile = BundleHelper.BundleApp(fixture, options);
+ var singleFile = BundleHelper.BundleApp(fixture);
// Run the bundled app (extract files)
RunTheApp(singleFile);
@@ -65,13 +57,11 @@ namespace AppHost.Bundle.Tests
RunTheApp(singleFile);
}
- [InlineData(BundleOptions.BundleNativeBinaries)]
- [InlineData(BundleOptions.BundleAllContent)]
- [Theory]
- public void Bundled_With_Empty_File_Succeeds(BundleOptions options)
+ [Fact]
+ public void Bundled_With_Empty_File_Succeeds()
{
var fixture = sharedTestState.TestAppWithEmptyFileFixture.Copy();
- var singleFile = BundleHelper.BundleApp(fixture, options);
+ var singleFile = BundleHelper.BundleApp(fixture);
// Run the app
RunTheApp(singleFile);