Age | Commit message (Collapse) | Author | Files | Lines |
|
* Update dependencies from https://github.com/dotnet/corefx build 20190903.6
- Microsoft.NETCore.Platforms - 3.0.0-rc1.19453.6
- Microsoft.Private.CoreFx.NETCoreApp - 4.7.0-rc1.19453.6
* Update dependencies from https://github.com/dotnet/corefx build 20190904.8
- Microsoft.NETCore.Platforms - 3.0.0-rc1.19454.8
- Microsoft.Private.CoreFx.NETCoreApp - 4.7.0-rc1.19454.8
* Update dependencies from https://github.com/dotnet/corefx build 20190906.2
- Microsoft.NETCore.Platforms - 3.1.0-preview1.19456.2
- Microsoft.Private.CoreFx.NETCoreApp - 4.7.0-preview1.19456.2
* changing the target framework for tests to 3.1
* Update dependencies from https://github.com/dotnet/corefx build 20190906.20
- Microsoft.NETCore.Platforms - 3.1.0-preview1.19456.20
- Microsoft.Private.CoreFx.NETCoreApp - 4.7.0-preview1.19456.20
* Update dependencies from https://github.com/dotnet/corefx build 20190907.5
- Microsoft.NETCore.Platforms - 3.1.0-preview1.19457.5
- Microsoft.Private.CoreFx.NETCoreApp - 4.7.0-preview1.19457.5
* Update dependencies from https://github.com/dotnet/corefx build 20190909.13
- Microsoft.NETCore.Platforms - 3.1.0-preview1.19459.13
- Microsoft.Private.CoreFx.NETCoreApp - 4.7.0-preview1.19459.13
* 3.0 -> 3.1
|
|
* Fix build-tests script for cross build and fix tests for armel
* Handle case of -skipcrossgen for cross builds
* Fix build error in case of cross builds when ROOTFS_DIR is not passed explicitly
* Fix portable build parameter setup for armel tests build
* Move force of non-portable build for armel from build.sh/build-test.sh to init-distro-rid.sh
* Fix priority1 tests build for armel
|
|
This moves us one step away from buildtools and towards arcade.
This replaces run.sh and run.cmd (and all invocations) with "dotnet.sh msbuild" and "msbuild.cmd".
- I'm using these wrapper scripts for now instead of those in eng/common in order to retain the very helpful "Running <command>" output in the build logs.
- I'm using msbuild.cmd instead of dotnet.sh to match the current behavior that uses desktop msbuild on windows, instead of dotnet.
All of the arguments that used to be implicitly generated by run.exe and config.json are now explicit, resulting in longer (but easier to copy+paste) commands. Some of these arguments are likely unnecessary, but in this change my goal is just to match the run.exe behavior. Later, I would like to go through and clean up parameters that don't need to be passed in every invocation. I might also consider moving more of the common arguments out into variables in a later change.
Some of the wrapper scripts now have limited support for parsing "-Argument=Value" style parameters, to support our existing buildpipeline infrastructure, since I thought this was easier to test than changing our buildpipeline definitions. We can remove that parsing logic once we stop using buildpipeline (which has happened at this point).
Some subtle parts of the change:
* Add msbuild.cmd
This simulates the behavior of Tools\msbuild.cmd, which calls desktop msbuild.
* Fix BuildOS processing in package build and publish
Previously, config.json had its own processing that would set
OSName. Instead, we now pass it in explicitly where it's
needed (building packages), or not at all (publishing them).
* Handle "=" in publish-packages.cmd and other scripts
This seems necessary to properly handle the azure access token
* Set __BuildOS in PublishPackages
Required for cases where the build OS isn't detected during the build
such as freebsd.
* Use dotnet msbuild in runtest.py
This prevents us from having to deal with different quote escape
behavior on windows and linux. Previously, arguments like
fileloggerparameters and the logger were given quotes to escape
semicolons in the argument. On unix, this prevented the argument from
being split up by bash. On windows, it seems that the run.cmd/run.exe
tools would prevent the extra quotes from being passed to
msbuild.exe (desktop msbuild would choke on the quotes if they were
passed along).
Unlike desktop msbuild, dotnet msbuild is able to parse the quoted
strings, so we simply psas the quoted arguments directly to it on
windows. We may be able to do the same on unix.
* Fix build-test.sh problem with BuildOS
When copying native files during the unix test build, we rely on
__BuildOS being set. Fixing the import order and always setting
__BuildOS fixes this. We should eventually fix the inconsistent use of
BuildOS vs __BuildOS.
|
|
|
|
* Address msbuild issues with cross compiled tests in helix
* Fix test warning about duplicate types
|
|
* Revert "Revert "Build managed tests with dotnet (#19254)""
* Reenable MSBuild support through dotnet instead of global MSBuild
|
|
This reverts commit 101baee1010eaad47cd7afd1e041a7f422aefa78.
|
|
* Change managed projects to build with dotnet msbuild, rather than desktop msbuild
* Build sdk tests as AnyCPU
* Correct args passed through to dotnet for tests
* Remove extra backslash from baseIntermediateOutputPath that was causing individual test exe builds to fail
* Fix double import warning for sdk projects
* Add default params from config.json to build-test dotnet invocations
* Fix priority argument passing from the command line for tests
|
|
This reverts commit 763142a210d858289d30365dd1d4f2772e48f30d.
|
|
* Change managed projects to build with dotnet msbuild, rather than desktop msbuild
* Build sdk tests as AnyCPU
* Correct args passed through to dotnet for tests
* Remove extra backslash from baseIntermediateOutputPath that was causing individual test exe builds to fail
* Fix double import warning for sdk projects
* Add default params from config.json to build-test dotnet invocations
|
|
On Windows, the Exec task passes the command to cmd, so long commands
run into the command length limit (see
https://github.com/Microsoft/msbuild/issues/2530). This workaround
shortens the xunit command line by replacing the path to the test
binary directory with an environment variable.
|
|
* Initial change to allow build wrappers and runtest.py
* Build xunit wrappers on unix
The generated wrapper needs to target netcoreapp on unix. I had to
exclude assets from the xunit package and introduce a dependency on
the private corefx bits, to resolve a dependency conflict in which the
generated wrapper was depending on an older System.Runtime.dll than
the helper library.
I also disabled binclash logging, because the wrapper build binplaces
the helper library to the same location multiple times. I couldn't
find a simple way to disable binclash logging for the wrapper build
only, since that requires passing an empty switch to run.exe, and bash
word splitting makes this nontrivial from build-test.
* Correctly generate TestEnv xplat
Note that this will still require changes to the test wrapper
to actually source the TestEnv on unix
* Build xunit wrappers using SDK
* Target netcoreapp2.0 in xunit wrappers
This way, the wrappers can build even if the 2.1 SDK isn't installed on
the machine.
* Restore to packages directory for xunit wrappers
* Move common properties out to dir.common.props
When building wrappers using the SDK, we need some basic
properties (like the build os/arch/config, and the output directories)
to be set. I factored out properties used by both the old test build
and the new SDK-project test build.
At first I tried using Directory.Build.props (which is automatically
imported by the SDK), but our test build already imports SDK targets
in various places, so this was resulting in duplicate
imports. Instead, I used dir.common.props, and made the imports
explicit.
* Remove desktop-specific test wrapper csproj
* Pass build os/arch/type and logsdir to msbuild from runtest.py
* Remove xunit wrapper helper library from traversal build
* Fix parameter passing in build-test.sh
Use bash arrays to pass parameters for the build command. This makes
it possible to pass arguments with spaces to build_Tests_internal. We
use this to disable binclashlogging selectively (for the xunit wrapper
build only).
* Clean up factored .props files
* Undo runtest.sh changes
* Use latest xunit console runner everywhere
* Remove extra StaticDependency on xunit.runner.console
* Eliminate tests/src/dir.common.props, and rename dir.sdkbuild.props
tests/src/dir.common.props was only used for the desktop-specific
xunit wrapper helper library. There's no need for it any more, so its
properties have been moved into tests/src/dir.props.
dir.sdkbuild.props has been renamed to dir.common.props, since it
contains properties used by SDK projects and buildtools projects.
This change also re-enables the test build.
* Reintroduce dir.sdkbuild.props as a place for SDK-only props
With this, some properties shared by SDK projects can go in a global
location. The TargetFramework is shared by all SDK projects in the
test tree.
This change also uses a property for the xunit package directory that
contains the xunit.console.dll we copy to core_root.
* Add xml namespace to dir.common.props
This fixes a failure in the windows build.
* Satisfy xunit analyzer
* Satisfy xunit analyzer again
* Use SDK msbuild to build wrappers
On windows, the use of run.exe, config.json, and msbuild.cmd uses
msbuild.exe on the path. This change will build wrappers using the
local SDK via "dotnet msbuild", bypassing run.exe. Run.exe will go
away entirely with the move from buildtools to arcade, so other build
invocatios should follow suit.
* Remove Microsoft.CSharp.Core.targets workaround
UseBuildTools used to be true all the time. Now that we are building
wrappers on core, UseBuildTools becomes false. However, the rest of
the runtest.proj expects to build using buildtools, so we keep
UseBuildTools true until we switch to arcade.
The CSharpCoreTargetsPath was imported when running on core only. This
used to happen only on unix, but now it also happens when building
runtest.proj for the xunit wrappers on windows. On unix, this targets
file was a symlink to itself to work around some buildtools logic that
expected the file to exist. This workaround no longer appears
necessary, and on windows, this was never used in the first place, so
this change removes it.
* Remove UseRoslynCompilers prop and unify roslyn import
UseRoslynCompilers was introduced in buildtools by
https://github.com/dotnet/buildtools/pull/947, with different
behaviors on windows/unix. It was removed by
https://github.com/dotnet/buildtools/pull/1974, so we can unify our
roslyn imports now.
* Don't copy xunit dlls to corefx test host
The corefx tests run on specific versions of xunit dlls, defined in
CoreFX.depproj. We want to use these versions in the test host, not
those in CORE_ROOT, so exclude these from being copied to the test host
directory. This fixes the failing corefx tests.
* Don't pass run.exe arguments through build-test.cmd in test pipeline
These arguments get passed along to the xunit wrapper build as
unprocessed build args. They need to work for "dotnet msbuild" (used
for the wrapper build) as well as for run.exe.
* Fix parameter passing of priority arg in build-test.cmd
UnprocessedBuildArgs should contain arguments in the format expected by
msbuild, not by run.exe.
* Fix parameter passing of unprocessed args in build-test.cmd
The "--" syntax is used by run.exe to pass everything following to
msbuild directly. It should not be a part of unprocessed args.
* Pass TargetsWindowsArg to wrapper build in build-test.cmd
Helix builds tests on windows and runs them on unix using the xunit
wrappers. When cross-building the wrappers like this, TargetsWindows
is set to false by the test build pipeline. This variable ensures that
the wrapper uses correct directory separators when invoking the test
.sh file.
* Pass BuildTestsAgainstPackages arg to exclude unix tests
Helix builds xunit wrappers on windows, and runs them on unix. The
BuildTestsAgainstPackages should currently be set to true in the
windows wrapper build to properly filter the .cmd files based on
exclusions in issues.targets.
|
|
preview1-26627-04, preview1-26627-04, master-20180627-0051, respectively (master) (#18588)
* Update BuildTools, CoreClr, CoreFx, PgoData to preview1-02928-01, preview1-26627-04, preview1-26627-04, master-20180627-0051, respectively
* Rename netcoreapp2.2 => netcoreapp3.0
* Disable test for CoreFX update
|
|
|
|
|
|
|
|
|
|
Fix TestNugetRuntimeId.
|
|
|
|
This property was always being set to `OS-x64`, which was causing
libraries that targeted the wrong architecture to be deployed into
CORE_ROOT on x86. This change fixes this setting to use
`OS-$(__BuildArch)`.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Upgrade xunit from 2.1.0 to 2.2.0-beta2-build3300.
Restore xunit.runner.msbuild during normal test build.
Remove unused reference to xunit 2.1.0.
Replace "2.1.0" with "$(XunitPackageVersion)" for direct path to files.
Upgrade xunit used by GCPerfTestFramework and fix helix path.
Upgrade Microsoft.DotNet.xunit.performance and Microsoft.DotNet.xunit.performance.metrics to 1.0.0-alpha-build0040.
Upgrade XunitPerformanceDependency packages to 1.0.0-alpha-build0040.
Include scripts project.json in validation, update them.
Don't use helix.targets in generated xunit wrappers.
Copy TestTFM defaulting logic from CoreFX dir.props. Tweak default wrapper TFM per platform, and use real RID instead of relying on fallthrough.
|
|
1. tests\src\Common\test_dependencies\project.json - To consume corefx and other nuget feeds
2. tests\src\Common\empty\project.json - To build against the mscorlib facade,to use this just Add
<ReferenceLocalMscorlib>true</ReferenceLocalMscorlib> to your project
|
|
* Added some generics tests intended for testing Ready-to-Run feature.
* Added capability to set ZapRequire=1, to ensure methods are
pre-compiled.
* Fix spelling of environment variables for case-sensitive platforms.
|
|
Put project.json for Xunit test wrappers in file system instead of generating. This lets dependency validation check the versions and reduces the number of project.json files to restore because all csproj's point to a single project.json and lockfile.
Adds XunitPackageVersion property that is used to always generate a valid project.json for xunit.runner.msbuild.
|
|
|
|
These tests target the SysV AMD64 ABI in particular, which relies on
field types to decide how to pass by-value structs.
|
|
|
|
The following changes are being submitted in order to prepare for a large collection of tests to be ported from the internal legacy test tree.
- Adds "build kinds" to the test tree.
- Adds some documentation for the test tree
- Adds a Test Priority feature (see documentation Documentation/project-docs/tests.md for more information.
- Dropped the cs_template.csproj types and converted to individual CSProject files.
|
|
Existing tests can specify pre- or post-commands that are injected into
the execution scripts. However, today these are all using Windows syntax
so they break the bash scripts. We will handle that by skipping any tests
that are using pre- or post-commands unless they specify the bash-specific
equivalent. The scripts will continue to run and just exit with an exit
code that indicates a skip, so that the skipped tests are tracked and not
just hidden.
Also, this change moves the global pre-command that was being added for
running __TestEnv into the bash/batch targets rather than in the dir.props
file that is used for all platforms.
|
|
This changes moves coreclr onto DNX (same version as corefx). Theoretically, this should allow these tests to target the desktop CLR. All of the old package.config files are gone and replaced with corresponding project.json files. The up front restore behavior is retained. Tests are now buildable individually, though not runnable in a similar fashion.
|
|
RunTest.Cmd had limited suport for setting test environment
(ex: Specifying use of alternate Jit)
This change generalizes this support so that the clients can specify a
test environment script that will be run to set custom settings in
the test-environment.
Usage is:
Runtest TestEnv <test-env-script> ...
|
|
|
|
|
|
|
|
[tfs-changeset: 1407945]
|