summaryrefslogtreecommitdiff
path: root/tests/runtest.proj
AgeCommit message (Collapse)AuthorFilesLines
2019-01-03Remove vc-runtime package dependency (#21643)Egor Chesakov1-1/+1
2018-11-01Fix expected Pri-1 test countBruce Forstall1-4/+4
https://github.com/dotnet/coreclr/pull/20693 reduced the number of Pri-1 tests significantly, which caused this error to appear on some Pri-1 builds, e.g., Ubuntu x64 Checked builds.
2018-10-10Reduce the number of expected Pri-1 testsBruce Forstall1-2/+2
The number has shrunk lately due to removing CoreMangLib tests.
2018-09-19Enable arm64 Linux testing in CIBruce Forstall1-2/+4
Testing is enabled on a set of Qualcomm Centriq arm64 servers running Ubuntu 16.04. The set of jobs enabled almost matches the set run for arm32 Linux testing, including innerloop, JIT and GC Stress, corefx, and R2R. Temporarily, the innerloop jobs are commit jobs (invoked when a PR is merged) instead of "default trigger" jobs (invoked when a PR is submitted), until we get more experience with the robustness of the machines and jobs. The machines are fast enough that they are not marked as "limited hardware" (like arm32 Linux machines). That means that many jobs are run daily, not weekly, as periodic jobs. Notes about the changes: 1. The Linux arm64 machines are managed by Helix, which allocates them to Jenkins. 2. The arm64 OS used has been renamed from "small_page_size" to "Ubuntu16.04". If we add large page size machines, we'll need to add a differentiator. 3. The Jenkins "copy artifacts" plug-in runs ridiculously slowly on this hardware, for unknown reasons, so we copy artifacts directly using "wget". 4. Tests are built using "build-test.sh" on the (cross) build machine; we don't use Windows-built tests. 5. Added Jenkins archiving of build .log/.wrn/.err files. 6. Various tests were disabled in issues.targets, and with a new arm64/corefx_linux_test_exclusions.txt file, to get jobs to run clean. (Several issues have been opened to track these and other known failures.)
2018-09-15Layout native test components correctly on unix (#19918)Jarret Shook1-5/+1
* Enable native test build and add skipmanaged * Fix adding native components to test dir * Clean pri1/pri0 builds with native lib copy This change disables the build of several tests which have native dependencies; however, would not build the native dependencies on unix. At copy time this would result in a build-test failure. In addition, it fixes, adding executables and dynamic/static libraries to the test's location. It has been tested with build-test.sh priority1. * Fix comment wording * Remove buildagainstpackage arg * Fix default clang version * Clean pri1 run OSX * Correct test count on unix * Address typo * Merge runtest.proj
2018-09-12Address msbuild issues with cross compiled tests in helix (#19901)Aaron Robinson1-3/+1
* Address msbuild issues with cross compiled tests in helix * Fix test warning about duplicate types
2018-08-24Use runtest.py to run tests for all platforms (#19213)Jarret Shook1-0/+3
Change build-test.sh to always build the xunit wrappers. Before it would drop a token and check the existence of the token. Unify x64 linux/OSX/Windows excludes into one file, issues.targets. Includes different locations in the file which show where to put excludes. Remove all target specific aspects of issues.targets, all tests are excluded now via wildcard, this allows expanding to .cmd and .sh based on the built platform. Unify path separators to forward slash(/) in issues.targets to support both platforms Clean up issues.targets by removing long standing exclude tests, specifically tests that have been excluded due to missing features like rva_statics. Add DisableProjectBuild to tests which have been removed from issues.targets Conditionally add DisableProjectBuild to tests which have been marked as unsupported on unix. This is mostly a port of the unsupportedOnUnix.txt list. Instead of excluding the tests, unix will simply not build them. If tests are built on windows, they will be run but they will return pass, the test wrapper will check return instantly. All exclusions ported to issues.targets for linux targets. Expand runtest.py, this includes simple issues that made it past the original CR. In addition it adds more optional features to help with inner loop dev work such as: creating a repro folder under bin/repro/.. which sets up the env and calls the failing test. In addition a launch.json will now be created under bin/repro/.. which can be used to easily debug using vscode. More logging, such as printing failures, longest running tests ect. Initial excludes ported for arm64 windows Arm64 linux, armhf unix excludes and enables running runtest.sh for these targets. arm64 windows and arm32 windows excludes and enables running runtest.cmd on arm64 targets init-tools.sh changes to pull armhf and aarch64 dotnetcli init-tools.cmd changes to pull x86 packages for dotnetcli for arm64 windows runtest.cmd for almost all scenarios will call runtest.py runtest.sh for almsot all scenarios will call runtest.py Removes all logic for running tests using runtest.sh
2018-08-07Add basic check that the correct number of tests is built (#19290)Bruce Forstall1-1/+24
Fixes #19286
2018-07-31Add netcoreapp dependencies (#19177)Chris Sienkiewicz1-1/+1
* Add MicrosoftNETCoreAppPackageVersion to dependencies.props - Add MicrosoftNETCoreAppPackageVersion property - Add required coresetup dependency build infos * Change test projects to use new MicrosoftNETCoreAppPackageVersion property
2018-07-27build-test - fix TestWrapper CS warnings (#19180)Jacek Blaszczynski1-2/+2
2018-07-26Switch to using MicrosoftNETCorePlatformsPackageVersion as the ↵Chris Sienkiewicz1-1/+1
RuntimeFrameworkVersion parameter in the test wrappers and SDK props file (#19130)
2018-07-25Sdk test projects (#19044)Chris Sienkiewicz1-1/+2
Change the associated targets and props files in the test directory to allow the test csproj's to be built as SDK style projects alongside traditional style projects. Remove CodeTaskFactory: - Allows the projects to be built using the core version of msbuild/dotnet build - Converted to using msbuild property expansion instead Add directory.build.{props,targets}: - Currently we just import the dirs.props and targets, but means SDK style projects don't need to explicitly include these files - We probably want to move all projects over to using these in the future, but this keeps the changes smaller for now Specific code for SDK projects: - There are a several changes required to build an SDK project. This change guards them behind conditionals so that only the new style projects see them. When we get to the point that there are only new projects, we can remove the guards (probably at the same time as ditching the dir.props) Reordered build targets: - Because SDK projects implicitly import the build targets, we can no longer re-define the build targets unconditionally knowing they will likely be overwritten. - Instead we move the overwritten targets to separate files, and include these conditionally based on properties. In this way there is always a build defined for SDK projects, which can then be overwritten to do nothing as needed.
2018-07-19Build xunit wrappers the same way on windows and unix (#18695)Sven Boemer1-53/+28
* 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.
2018-07-11CoreFX CI Unix (#18753)Andon Andonov1-2/+6
* Full Unix test support * Remove Test helper build from build-test Add msg prefix Change if condition * Change Linux URL * Syntax error * Fix Merge Conflict * Address PR Feedback * Remove duplicate generate_testhost call * Address PR comments * Clean up exclusion list * Disable Client_ReadWriteCancelledToken_Throws_OperationCanceledException * Disable all flavors of CancelledToken_Throws_OperationCanceledException * Disable X509StoreTests.Constructor_DefaultStoreName - flaky on OSX * Update documentation with Linux instructions and workflow * Disable EventWaitHandleTests.Ctor_InvalidMode - failing on OSX * Disable Server_ReadWriteCancelledToken_Throws_OperationCanceledException
2018-06-27Windows CoreFX CI (#18365)Andon Andonov1-0/+97
* Add test list CL switch * End-To-End Test Run on Windows * Cleanup * MAX_PATH Workaround * Set Execution directory for CoreFX tests * Add All CoreFX PR Tests * Add test dependencies * Add extra dependencies * Add parallel test execution * Disable OuterLoop tests and System.Data.SqlClient.* tests * Initialize maximum degree of parallelization to Environment.ProcessCount * Remove unnecessary cli option * Update Dependencies * Add "enabled" property to tests * Remove exclusions due to TestUtilities mismatch * Add capability to run all tests for running Helix test lists directly * Refactor build script to build testhost when skipping managed tests * Disable failing System.Threading.Tests.EventWaitHandleTests.Ctor_InvalidMode * Add switch to skip native test build * Add testing documentation * Don't run tests marked as "disabled" when running all available tests * Add switch to build only testhost and remove Core_Root_Stage * Clean up TopN.CoreFX.Windows.issues.json * Refactor build-test.cmd * PR feedback - build pipeline and documentation * PR Feedback - Test Helper headers and comments * Fix buildtesthost option for only building CoreFX test dependencies * Disable intermittently failing test DrawBezier_PointFs
2018-01-02Retry: Enable EventPipe across Unix and Windows (#15611)Victor "Nate" Graf1-2/+1
* Revert "Revert "Enable EventPipe across Unix and Windows (#14772)" (#15609)" This reverts commit 302005ca8ae14eade37ddf4ac6e900617c1c166a. * Fix ARM build break * Use more explicit references to resolve build failures * Fix compat with python3 * Disable FeaturePerfTracing on Windows as it is not ready * Disable test for incomplete functionality * Fix test diabled patterns * Add license header * Use keyword types for managed code * Add message prefix * More precisly condition generation of eventing sources * Remove erroneously added changes
2017-12-21Revert "Enable EventPipe across Unix and Windows (#14772)" (#15609)Victor "Nate" Graf1-1/+2
This reverts commit 7524d72d4f0f634fe5407280b83c25181dc8c556.
2017-12-20Enable EventPipe across Unix and Windows (#14772)Victor "Nate" Graf1-2/+1
* [squashed] most work complete to enable EventPipe on Windows * Eventpipe now builds on Windows * Ensure evevntpipe is intialized on Windows * Resolve the location of python from build.cmd * Ensure eventing files are generated when needed * moving linkage declaration to cmake * create new event from constructor * enable FEATURE_EVENT_TRACE and FEATURE_PERF_TRACE everywhere * [WIP] checkpoint in fixing contarct errors * add another possible python location * Fix double delete bug in EventPipeConfiguration destructor * Fix typo in function name * Revert changes to .gitgnore * bump to netstandard1.6 in preperation for new version of TraceEvent * Revert changes to groovy files * revert changes to perf-prep scripts * add common.h and use nothrow * Fix issue which was causing double delete of configprovider * Add new test utilizing TraceEvent * Remove accidentally added local directory reference * Add comment to explain the addition of misc/tracepointprovider.cpp * Add back sys.exit(0) and refactor * Change conditional to be more direct * Better handle NULL config * Initialize m_deleteDefered * Eliminate obsolete field * Fix spelling error * Fix nits * Make smaple progiler timing functions easier to read * Move projects back to netstandard1.4 * Incomplete improvements to EventPipeTrace test * Add event integrity checks to test * Clean up some left over code * Add EventSource based test * Remove unused PAL tests on Windows * Fix Linux build breaks * Minor changes to CMake files * Remove //HACK for hack that was previously removed * Fix formatting and negate a #ifdef * Add conditional to ensure PERFTRACING is not enabled without EVENT_TRACE * Take lock on EventPipeProvider and EventPipeConfiguration destruction * Load winmm.dll at runtime * Change function name and compile conditions * Move typedef into #ifndef * Use the correct config in setup * Change lifecycle managment of EventPipeConfiguration's configuration provider * Enable EventPipe tests pri0 and disable broken tests * Replace python3 only error with python2 compatable one * Make common.csproj build pri0 * Change TraceEvent version to 2.0.2 to match published verison * Address cross build failure * Remove use of undefined variable * Add crossgen fix to .cmd * Use more specific types to avoid marshalling errors * Use Assert-style statements and remove one check * Fix cross arch build * Fix flipped branch * Bring build.cmd changes to build.sh * Fix cmake writing * Revert "Bring build.cmd changes to build.sh" This reverts commit 893c6492548d8bc9859ebba5b1b810aa630fac63. * remove stdlib.h * Fix out of order null check
2017-10-30Move CoreCLRPackageVersion property useageWes Haggard1-22/+22
Also did some small clean-up: Fix missing tag from bad merge Fix spacing in init-tools.sh
2017-09-22Disable tracing tests on Windows at runtime, not build (#14127)Victor "Nate" Graf1-0/+1
2017-08-23Parameterize RIDs for package restorewtgodbe1-2/+0
2017-06-13Do not copy bin subdirectories to test core_rootMike Danes1-46/+0
2017-06-06Fix error with Stable Versionwtgodbe1-2/+2
2017-06-06Test packages from current build in pipelinewtgodbe1-1/+11
2017-05-29Make linux test build workedRoman Artemev1-10/+15
2017-05-22Revert "Fixed tests build on Linux"Russ Keldorph1-17/+12
2017-05-19Test build fixes for LinuxRoman Artemev1-12/+17
2017-05-16Update Coreclr to 2.0.0 buildtoolswtgodbe1-3/+3
2017-04-12Enable building Core_Root for any RID against packageswtgodbe1-10/+9
2017-03-17Delete unused ReferenceLocalMscorlib property from test proj files (#10250)Jan Kotas1-3/+0
Deleted a few other irrelevant properties as well while I was on it. Fixes #7711
2017-03-06Create Xunit wrappers for 2nd-level test directories instead of top-levelwtgodbe1-6/+11
2017-01-24Add support for running CoreCLR Tests in Helixwtgodbe1-13/+17
2016-10-17Build tests against packages & produce Core_Root for arbitrary OSwtgodbe1-0/+22
2016-09-01Upgrade xunit version to avoid specialized restoreDavis Goodin1-27/+1
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.
2016-08-23 Infra changes to unify the tests to be built against a common project.json.Rama Krishnan Raghupathy1-12/+8
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
2016-08-03Modify rebuild scenario.Lakshmi Priya Sekar1-0/+2
2016-07-20Enable automatic updating of package versions in test project.json fileswtgodbe1-2/+2
2016-05-22Update tests to build against rc3-24117-00 (#5154)Jan Kotas1-1/+1
2016-05-09Fix incremental build restore: move generated test_runtime project.json to ↵Davis Goodin1-1/+3
bin (#4764) * Move generated test_runtime project.json to bin. * Update helix tasks to point to moved test_runtime files. * Remove unnecessary TestRuntimeDependenciesJson property.
2016-05-03Fixing issue with perf targets restoring test runtime (#4686)Deepak Shankargouda1-1/+4
2016-04-23Move generated xunit test wrappers to bin folderJan Vorlicek1-4/+4
This change modifies the build so that the generated xunit test wrappers are no longer placed into the source tree, but rather to the bin folder where all files generated by the build should go.
2016-04-08Merge pull request #3642 from dagood/remove-hardcoded-versionsDavis Goodin1-31/+6
Remove hardcoded versions from runtests.proj
2016-04-06Enable execution of Perflab perf testsDeepak Shankargouda1-1/+1
Added additional dependencies to the project.json for perflab projects that should enable generation of an assemblylist with all the packages required to execute the tests on the end machine
2016-04-05Remove hardcoded versions from runtests.proj.Davis Goodin1-31/+6
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.
2016-04-01Enabling Helix perf test runs for CoreCLRDeepak Shankargouda1-1/+16
Enabling Helix perf test runs for CoreCLR
2016-03-23Merge pull request #3887 from rahku/masterRahul Kumar1-1/+1
Fix XunitWrapper log file generation
2016-03-23Fix XunitWrapper log file generationRahul Kumar1-1/+1
2016-03-23Print raw output for failed tests in CI/Jenkins failure reportwtgodbe1-1/+15
2016-03-16Merge pull request #3740 from ramarag/createlayoutsRama krishnan Raghupathy1-7/+7
Creates RunTime Dependency Layout as a seperate step
2016-03-15Creates RunTime Dependency Layout as a seperate stepRama Krishnan Raghupathy1-7/+7