Commit graph

46 commits

Author SHA1 Message Date
Pranav K
2ddd3ca9a0 Updating to latest dotnet-test-xunit 2016-04-30 18:25:11 -07:00
eerhardt
f8a155a4e6 Updating CoreFx to rc2-24027 2016-04-27 05:41:53 +00:00
Pranav K
4e496c3523 Modify dotnet-test to run testRunner for all tfms
Fixes #2506
2016-04-22 16:40:03 -07:00
Andrew Stanton-Nurse
ef0ca39da1 Memory usage improvements in build (#2626)
* Use a WorkspaceContext in dotnet-build to cache project data across
multiple compilations in a single build action
* Dramatically reduce string and object duplication by introducing a
"Symbol Table" that shares instances of NuGetVersion, NuGetFramework,
VersionRange and string across multiple lock-file parses

Test Results:
* Testing was done by compiling Microsoft.AspNetCore.Mvc (and it's
dependencies) and taking memory snapshots after each compilation in
dotMemory
* We used to allocate ~3MB and deallocate ~2.5MB on EACH compilation in
a single build action. This has been reduced to ~120KB
allocated/deallocated
* After introducing WorkspaceContext, total memory usage spiked from 6MB
across the whole build action to about 13MB, introducing the symbol
table dropped it back to about 5-6MB.
2016-04-22 15:01:56 -07:00
Eric Erhardt
e420515c2b Updating CoreFX to rc2-24022 2016-04-22 10:58:43 -05:00
Eric Erhardt
a567bb8697 Fix test project imports to be consistent.
- Every project.json needs portable-net451+win8 and dotnet5.4 imports (required by dotnet-test-xunit).
- If a test references NuGet, it also needs "netstandardapp1.5", because that the TFM NuGet uses currently.
2016-04-21 11:42:30 -05:00
Bryan Thornbury
83d78129db t Convert Test Assets to Microsoft.NETCore.App
fix dotnet-compile-fsc failures

fix test failures
2016-04-19 11:08:27 -07:00
eerhardt
eb4952df27 Updating CoreFx to rc2-24018 2016-04-18 05:23:16 +00:00
eerhardt
070650ebac Updating CoreFx to rc2-24015 2016-04-15 05:25:53 +00:00
Eric Erhardt
5684f9933d Fix dotnet-test.UnitTests now that ProjectWithTests has moved outside of TestAssets/TestProjects. 2016-04-08 11:35:13 -05:00
Eric Erhardt
6fa859a354 Fix ProjectDependenciesCommandResolver for portable test apps.
Update to dotnet-test-xunit to latest.
2016-04-08 09:32:52 -05:00
Eric Erhardt
6ae044e5e1 Fix non-windows builds of Microsoft.NETCore.App.
Fix all test project.jsons to be portable apps.
2016-04-08 09:31:55 -05:00
Eric Erhardt
99371436f3 Consume NETCore.App 2016-04-08 09:27:23 -05:00
Matt Ellis
d0ac16129d Update package dependencies to rc2-24008 2016-04-08 04:05:26 -07:00
eerhardt
3afd85068a Updating dependencies from last known good builds 2016-03-31 11:57:21 -05:00
eerhardt
ea984c50c7 Updating dependencies from last known good builds 2016-03-30 11:49:37 -05:00
Livar Cunha
c1189925df Updating dotnet-test-xunit to the lastest version in hopes that it will fix the inconsistent build break we are seeing in Jenkins and VSO. 2016-03-29 21:50:29 -07:00
eerhardt
7eb9d07fb5 Updating dependencies from last known good builds 2016-03-29 15:59:19 +00:00
Pavel Krymets
18436e325e Make dotnet cli portable 2016-03-28 19:16:02 -07:00
eerhardt
cefed77ca9 Updating dependencies from last known good builds 2016-03-28 17:27:54 +00:00
Livar Cunha
d07a1091a8 Added a Help property to DotnetTestParams that indicates when the parsed arguments included the help param. The TestCommand then uses this property of the params to decide whether to continue with the execution or just return. Also added unit tests around this as well as introduced a DotnetTestRunnerFactory to make these unit tests possible and also push the responsibility to figure out which runner to use to the factory. 2016-03-25 20:17:15 -07:00
eerhardt
ed887d183a Updating dependencies from last known good builds 2016-03-25 16:48:25 -05:00
Eric Erhardt
1febe48d71 Updating CoreFX version to rc2-23924 2016-03-24 16:05:24 -05:00
Eric Erhardt
a5813791d5 Updating CoreFX version to rc2-23923 2016-03-24 16:04:37 -05:00
eerhardt
9bc478660a Updating dependencies from last known good builds 2016-03-24 16:02:33 -05:00
Livar Cunha
8358ccb5e8 Added build before running the tests and the no-build option to opt out of it.
Added new tests to ProjectDependencyCommandResolver and new E2E tests for dotnet test.
2016-03-17 15:17:18 -07:00
Livar Cunha
45abe6d52b Added extra params (base-build-path, runtime, framework) and refactored parameter parsing into its own class with tests.
Changed program.cs to use the new dotnettestparams.

Hooked up the new parameters to the ProjectDependencyCommandResolver
2016-03-17 13:29:16 -07:00
Eric Erhardt
964318b291 Revert "Update the .xproj files to reference the "DotNet" targets and props instead of "DNX"."
This reverts commit 4304ca9848.
2016-03-16 11:44:09 -05:00
Livar Cunha
8d39adbdbf Modifying the reporting channels to make the AdapterChannel a client and leave the TestRunnerChannel a server. This will prevent port conflicts between dotnet test and the Adapter (VS) due to race conditions.
Added E2E tests for dotnet test interactions with an adapter (design time).
2016-03-15 15:13:54 -07:00
Eric Erhardt
4304ca9848 Update the .xproj files to reference the "DotNet" targets and props instead of "DNX". 2016-03-15 13:59:00 -05:00
Eric Erhardt
2378a34401 Workaround Microsoft.Win32.Registry problem on unix in the tests that reference the dotnet project. 2016-03-14 17:59:13 -05:00
eerhardt
8953400eee Updating dependencies from last known good builds 2016-03-14 17:58:13 -05:00
Livar Cunha
6705585a67 Updating test projects to the lastest version of dotnet-test-xunit runner. 2016-03-07 14:55:39 -08:00
Livar Cunha
e498f1dc9d Modified the protocol to send a the list of tests to run and to invoke the test runner with the wait command flag so that the runner waits for this list.
Modified the reporting channel factory to have a create for the adapter and a create for the runner channel. Also added an event to the create runner channel that people can listen and be notified when a test runner channel was created. I use this event to give the message handler access to the runner channel.

Added the new message handler to DotnetTest.
2016-03-04 17:14:56 -08:00
Eric Erhardt
6468b14e1d Move to CoreFX build rc2-23901
Update .exe's project.json Target Framework from dnxcore50 to netstandardapp1.5.
Update .dll's project.json Target Framework from dnxcore50 to netstandard1.3.

Adding workaround for DataContractSerialization to src\dotnet\project.json to fix crossgen issue.
Build 23901 has a dependency issue that doesn't allow the runtime.any.System.Private.DataContractSerialization
package to be restored. When we move to a new build of CoreFX we should take this workaround out.
2016-03-03 16:41:55 -06:00
Livar Cunha
03b6b8ada0 We had a bug where the framework for design time runs of dotnet test was hard coded into dnxcore50. Moved some things around so that we will pack the target framework from the project context. 2016-03-02 22:15:02 -08:00
Livar
5b1ad5fe3e Merge pull request #1652 from livarcocc/test_output_param
Added output param to dotnet test
2016-03-02 14:09:40 -08:00
Livar Cunha
ebab175d17 Added a command factory where you can fix the output parameters that will flow to the commands, like configuration, outputpath and in the future, framework, runtime and base path. 2016-03-01 22:28:46 -08:00
Livar Cunha
9953ab48b3 Changing from serializing ProcessStartInfo to our own TestStartInfo class, because serializing ProcessStartInfo doesn't really work cross-platform due to unsupported properties. 2016-03-01 21:53:51 -08:00
Livar Cunha
4108920510 Updating tests to use the latest version of dotnet-test-xunit, which supports debugging from VS. Also updating our xproj files so that we can build the CLI from VS using the CLI. 2016-03-01 16:28:10 -08:00
Livar
208a0f31ec Merge pull request #1609 from livarcocc/dotnet_test_xunit_command
Dotnet test creating the command using dotnet-test-xunit
2016-02-27 15:03:14 -08:00
Livar Cunha
5b5d2cd31a Adding a new factory that creates the command as is, without adding the dotnet to it. We need it so that the runner can pass dotnet-test-xunit and get back the final corehost command, which is the right one for VS to use and attach to. 2016-02-26 14:34:23 -08:00
Livar Cunha
46b1fb42c0 Test Runner test started needs to handle messages when dotnet test is in a TestStarted state, as we will receive multiple test started messages. Also, to prevent a crash, when we get a message that terminates the adapter or the runner, we need to stop listening. Unfortunately, this needs to be directly where we read the messages, because if we give a handler a chance to handle that message, the reader will already be trying to read again. 2016-02-25 17:36:13 -08:00
Livar Cunha
3f2b1d068d Making the reporing channel port discovery and accept incoming connections separate. Before we were hanging when creating the reporting channel and never starting the test runner. 2016-02-24 16:53:16 -08:00
Livar Cunha
252eb4371f Making the version check an optional message for test discovery and test run. 2016-02-23 18:13:00 -08:00
Livar Cunha
7630337074 Adding unit tests for the state machine of dotnet test. Starting the implementation of a state machine in dotnet test. Right now we only handle the TestSession:Terminate message.
Adding a message handler for the version check message. Also introduced an IDotnetTest that handles state and handlers (the state machine).

Adding the test discover start message handler and introducing a test runner.

Added the handler for the GetTestRunnerProcessInfo message. Also, modified dotnet test to have separate setter for the special message handlers for terminate and unknown messages and added a separate method to add new reporting channels to DotnetTest, so that it can handle the new listener for the test runner.

Added the test runner test discovery handlers.

Added handlers to deal with the test execution itself.

Updated dotnet-test program to use the message handlers during design time.

Added a test for the whole discover tests message flow.

Added a test for the run tests full message exchange.
2016-02-23 11:20:04 -08:00