Commit graph

130 commits

Author SHA1 Message Date
Piotr Puszkiewicz
6fcbefa4f7 [WIP] Removes *3 verbs, making msbuild the driver (#4456)
Removes *3 verbs, making msbuild the driver
2016-10-27 18:46:43 -07:00
Justin Goshi
68afda8e4d Handle "runtimes" section (#4503)
* Migrate "runtimes" section as a RuntimeIdentifiers property in the resulting csproj file. Also do not call restore3 from publish3 anymore.

* Fix up the publish3 tests to call restore3 first and the csproj files to have RuntimeIdentifiers
2016-10-26 22:23:40 +00:00
Faizan Ahmad
391fff1f20 Merge branch 'rel/1.0.0' into clitest3verb 2016-10-12 11:57:46 +05:30
Piotr Puszkiewicz
28193c5f75 Merge pull request #4303 from dasMulli/feature/dotnet-clean-verb
Added clean3 verb for msbuild based projects.
2016-10-11 11:36:27 -07:00
Livar Cunha
c2bce2e2cc Moving the InferLegacyRestoreRuntime method to Test.Utilities, since it is needed only by tests. 2016-10-10 09:52:39 -07:00
dasMulli
148319a3c2 Added clean3 verb for msbuild based projects. 2016-10-10 18:31:30 +02:00
Livar Cunha
09d811fdbd Adding an OverrideRid property used in the GetRuntimeInfo task to override the rid of the CLI. This allows us to build for osx.10.11 when building on osx.10.12. 2016-10-08 11:45:19 -07:00
Faizan Ahmad
3f271e1215 Merge branch 'rel/1.0.0' into clitest3verb 2016-10-06 17:50:59 +05:30
Faizan Ahmad
579df78466 - Implementation of test3 verb for single TragetFramework
- E2E test for test3 verb.
2016-10-04 15:37:36 +05:30
Eric Erhardt
a7366f5864 Add support for publishing self-contained applications.
Fix #4204
2016-10-03 09:23:00 -05:00
Livar Cunha
2bbef9328b Removing project.json from msbuild template and msbuild test app. 2016-09-30 09:25:11 -07:00
Eric Erhardt
eed29be806 Add dotnet publish3 command. 2016-09-23 12:12:55 -05:00
Eric Erhardt
5bd310bbd5 Add dotnet msbuild tests. 2016-09-22 15:56:36 -05:00
Faizan2304
0ce597a147 Implemented vstest verb which will run the test from given container. (#4115)
* Implemented vstest verb which will run the test from given container.

* Fixed Nitpick.

* 1) Addressed PR comment
2) Added tests for vstest verb

* Using specific version of Microsoft.TestPlatform.

* Address PR comments.

Modified help text for the vstest command.
Removed unused function.

* Fixed package related issue.
--Taking reference of microsoft.testplatform.cli nuget package which has contentFolder in it so that sub folder of this nuget can also be added in cli package.
-- Removing vstest.console, vshost and datacollector from Bundletools as we dont want *.deps.json to be override

* Nitpick

* Making vstest.console arguments compatible for non windows platform

* Fix tests to run on linux machine

* Updated the microsoft.testplatform.cli nuget package version. This version has fix related to non windows machine.

* changed dapter path from bin/debug to bin/Debug

* updated nuget version of package Microsoft.TestPlatform.CLI.

* Revert "updated nuget version of package Microsoft.TestPlatform.CLI."

This reverts commit bcc26c21d11c2bd2e5259a74f9890b0fd75962c7.

* Updated version of nuget package Microsoft.TestPlatform.CLI
Added Test project in solution file

* Addressed PR comment.

* Removed unnecessary --platform argument from test
2016-09-19 10:59:26 -07:00
Bryan Thornbury
b0554d3ff3 PR Feedback 2016-08-30 12:00:56 -07:00
Eric Erhardt
72c59c4d05 Add test for MSBuild End to End. 2016-07-21 16:02:57 -05:00
Jonathan Miller
dc5fbc1a91 Adding basic cycle detection in the dependency walker 2016-06-07 13:21:13 -07:00
Todd Moscinski
d3b935489f Fixing schema version number, tweaking a string, and making test call pass a bool instead of a string to enable serviceable. 2016-06-06 11:00:47 -07:00
Todd Moscinski
391675c5b9 Changing schema version to 8 to match NuGet internal value and adding a pack test for the --serviceable option. 2016-06-06 11:00:33 -07:00
Pavel Krymets
b8dff69cc1 Revert "Revert "Add performance tests"" (#2820) 2016-05-12 10:33:32 -07:00
Eric Erhardt
652d0541ef dotnet test and publish failing badly when the project isn't restored.
Fixing this by checking for diagnostic errors before continuing.

Fix #2692
Fix #2942
2016-05-11 10:43:58 -05:00
Piotr Puszkiewicz
94e620088e Test Infrastructure Updates
Creates a TestDirectory abstraction under TestInstance to manage creation of test-specific working directories
Enables TestAssetManager to create TestDirectory instances
Enables fluent addition of Environment Variables to TestCommand
Adds PathUtility support for ensuring a directory exists
2016-05-03 10:36:05 -07:00
Eric Erhardt
f2d917ed2e Execute 'csc' with working directory set to the project directory.
When using a ruleset with a relative path in buildOptions, csc can't
find the file because it is not working in the same directory as the
project.

Fix #2710
2016-05-01 22:46:03 -05:00
Pranav K
f8631fa4b7 Merge pull request #2747 from dotnet/prkrishn/remove-platformabstractions
Replaces references to Microsoft.Extensions.PlatformAbstractions
2016-04-29 17:54:22 -07:00
Piotr Puszkiewicz
ce3eed0306 Revert "Add performance tests" 2016-04-29 16:35:27 -07:00
Pranav K
1e753f7781 Replaces references to Microsoft.Extensions.PlatformAbstractions with Microsoft.Extensions.PlatformAbstractions.Internal 2016-04-29 16:06:23 -07:00
Pavel Krymets
dfa071de21 Merge pull request #2663 from dotnet/pakrym/perf-tests
Add performance tests
2016-04-29 11:18:50 -07:00
Eric Erhardt
2ed81240fa dotnet build fails with xmlDoc = true and spaces in the path.
Need to quote the xmlDoc argument to the csc compiler.

Fix #2600
2016-04-27 15:43:12 -05:00
Pavel Krymets
cdb75966eb Remove test script 2016-04-27 08:41:22 -07:00
Pavel Krymets
366bad99ac Add performance tests 2016-04-27 08:41:22 -07:00
Eric Erhardt
5d2da26e74 Adding dotnet run tests for passing arguments to the app. 2016-04-26 19:58:41 -05:00
Piotr Puszkiewicz
7e0714d781 Merge pull request #2586 from Sridhar-MS/binding-redirects
Generate binding redirects for all executable package dependencies.
2016-04-25 17:04:19 -07:00
Andrew Stanton-Nurse
a729b97b35 align code in dotnet-run (#2679)
we used to use different code when --framework was specified than when it was not specified, this synchronizes them to use the same code path which removes a hidden NullRef

also adds tests to cover both cases
2016-04-25 13:53:02 -07:00
Sridhar Periyasamy
beb27a28fc Address PR feedback
Add new tests to invokde executable dependency via a tool command.
2016-04-25 12:02:07 -07:00
Sridhar Periyasamy
c82d3cc08d Add Binding redirects tests 2016-04-25 11:06:13 -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
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
Andrew Stanton-Nurse
14770ae5ba Add tests for "half-portable" scenario 2016-04-12 16:09:53 -07:00
Pavel Krymets
cf0673333d Fix publish when build was ran using build-base-path 2016-04-12 13:30:18 -07:00
Eric Erhardt
4c704997c9 Remove infer-runtimes from EndToEnd tests. 2016-04-08 09:32:56 -05:00
Sridhar Periyasamy
8f00b95783 Add kestrel tests.
Tests will 'build', 'run', 'publish' and 'execute' a Kestrel Hello World server as a PortableFatApp and as a Standalone app.
2016-04-04 17:57:12 -07:00
Pavel Krymets
7e73e5c379 Pass no additional arguments to net451 app 2016-03-31 10:35:42 -07:00
Mihai Codoban
ded82caccd Publish can skip Build 2016-03-30 19:24:43 -07:00
Pavel Krymets
9b9725ac38 Remove rid inference 2016-03-30 16:58:02 -07:00
piotrp
1a42fa05a4 Add WorkingDirectory to TestCommand 2016-03-28 17:25:52 -07:00
Bryan Thornbury
97a01213ac Fix debian packages 2016-03-22 15:01:01 -07:00
moozzyk
621d8376c3 Fixing publish to create executable with the outputName if specified 2016-03-21 12:42:32 -07:00
moozzyk
03f5379165 Adding support for output file name for apps. 2016-03-21 12:42:31 -07:00
Livar
1c9803d980 Merge pull request #1786 from livarcocc/tests_as_client
Modifying the reporting channels to make the AdapterChannel a client
2016-03-15 16:37:26 -07:00
Andrew Stanton-Nurse
cc00d9d839 update project templates for portable app
also fix dotnet run
2016-03-15 15:18:48 -07: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
Andrew Stanton-Nurse
d08e83d5db add support for portable application layout 2016-03-12 11:52:29 -08:00
Andrew Stanton-Nurse
7cc90d9ad1 Update dotnet-build to produce portable layout
dotnet-build will produce a deps file for portable builds, and will now
create "runnable" outputs for RID-less targets

the outputs won't actually be runnable today because we need corehost
changes and to generate a deps.json file for corehost to use.
2016-03-08 11:46:15 -08:00
Pavel Krymets
0037e0aba9 Fix dontet pack with buildbasepath 2016-02-23 19:13:50 -08:00
Pavel Krymets
c65a1700eb Merge pull request #1449 from dotnet/pakrym/runtime-assets
Fix publish runtime asseets
2016-02-18 08:07:37 -08:00
David Fowler
69b5e3f815 Fixing versions
- Added --version-suffix to build and publish
- Support reading DOTNET_* version variables everywhere versions can be read
- Show the commit sha in dotnet --version
- Added tests that check the assembly output version
- Set DOTNET_BUILD_VERSION when producing the CLI app itself so that it has the version information stamped in for help.
2016-02-18 01:10:07 -08:00
Piotr Puszkiewicz
d9b54cecac Merge branch 'PackagedCommands' of https://github.com/eerhardt/cli into eerhardt-PackagedCommands 2016-02-16 21:20:57 -08:00
Pavel Krymets
b0ff1857cc Fix publish runtime asseets 2016-02-16 20:54:11 -08:00
Austin Wise
67b4012e45 Move the help command it it's own class.
Also fix the help command to work with intrinsic commands.
2016-02-15 20:11:02 -08:00
Bryan Thornbury
c1e28ae921 Refactor ScriptExecutor, add test cases for scriptexecutor.
Add TargetFramework and FullTargetFramework to compile and publish script
variables.

Add ProjectLocal Command Resolution Strategy.

Fixup ArgumentEscaper to not always quote things.

Fixes #1216
Fixes #1016
Fixes #982
2016-02-12 11:04:30 -08:00
Mihai Codoban
a0990a518c Add --no-dependency flag to build 2016-02-10 15:35:27 -08:00
Eric Erhardt
5d04ca1fe3 Move PackagedCommands to TestAssets.
Convert package-command-test.ps1 to an XUnit test.
2016-02-10 15:05:25 -06:00
Bryan Thornbury
0b27dba299 Merge pull request #1240 from dotnet/brthor/stream_forwarding_changes
Stream Forwarding Changes.
2016-02-09 10:45:35 -08:00
Pavel Krymets
0f82ae37f3 Refactor output directory code 2016-02-09 08:52:59 -08:00
Bryan Thornbury
ccaaebf6e5 Stream Forwarding changes to not wait on buffer full before writing. Instead input streams will be read character by character as they Console.Write or Console.WriteLine. Upon finding a newline character, the line will be printed to the parent process's console. 2016-02-08 14:19:02 -08:00
Mihai Codoban
897c0fa0f0 Rename --force-incremental-unsafe flag to --no-incremental 2016-02-04 15:57:10 -08:00
David Fowler
a35ae177ff - Make all of the code looking for built assets use the OutputPathCalculator
- Project dependencies are always built into their specific folders and the main project is the only one that uses the output path and intermediate output path variable.
- Publish respects the output path for publish only, not compile as part of publish. This means that publishing multiple runtimes will stomp on each other. So don't do that. We can throw if you specify and output location and you haven't specified a specific combination of RID and framework. Alternatively it should probably just pick the first TFM/RID pair from the lock file. This is similar to how `dotnet run` works.
- Cleaned up the incremental build output formatting
- Use a single stream (output stream) since interleaving them was causing formatting issues (like losing random characters in the middle of outputting things).
- Didn't change how pack works, it still preserves the output structure when passing `--output`, this one is worth discussing. We could leave the build output inplace and only move the package to the output location. That's more consistent with how everything else works and can be a follow up PR.
2016-01-27 11:13:45 -08:00
piotrp
a66546d8fb Maintain test artifacts
Improved test diagnostics
Providing diagnostics about failed process.
Workaround for https://github.com/NuGet/Home/issues/1977
get past crossgen errors!
2016-01-26 23:25:39 -08:00
Bryan Thornbury
d1d23944df Changes to fix publish tests 2016-01-23 13:01:34 -08:00
piotrp
9c5e520285 various fixes 2016-01-23 13:01:33 -08:00
Bryan
37445f053d Test Changes to work with new Argument Escaping and Command Infra 2016-01-23 13:01:32 -08:00
Livar Cunha
ac2d0e36a9 Changing multiple dotnet commands to be aware of $configuration/$tfm folder structure under the --output path option.
Changing the build scripts to copy files over from debug\dnxcore and to check for the folders existence before trying that.
Making the build command aware of the subfolders and making E2E tests aware of subfolders.
Fixing compiler tests to look for the xml in the right plae taking into consideration the configuration and tfm.
Modifying publish tests to not take into consideration the runtime. This is a temporary change. will bring it back once the commands all understand rid.
Making the packaging step work by placing binaries where dotnet pack expects.
2016-01-22 15:22:44 -08:00
Mihai Codoban
3a8ef0f5e9 Add Tests for incrementality 2016-01-20 16:07:12 -08:00
Mihai Codoban
bedeaaf2dc Compile incrementally
- Clone the args in the CompileContext constructor to bring uniformity
to the way args are accessed

- Compute IO for a project and have it shared between build and compile

- Extract dependency logic into facade

- Add tests for incremental build

- Add precondition checks for compiler IO

add --force-incremental-unsafe flag
2016-01-12 13:16:52 -08:00
moozzyk
0e4719ee95 Adding pre/post publish scripts
Fixes #742
2016-01-12 09:41:59 -08:00
Andrew Stanton-Nurse
78cef18e1c add support for generating xml documentation
fixes #312
2016-01-08 14:02:41 -08:00
Andrew Stanton-Nurse
f4df12f2e2 add proper RID detection based on PlatformAbstractions 2016-01-08 10:07:58 -08:00
Bryan
7425691fe6 Fixup some Usings Statements. Remove SkipForOS function in favor of ActiveIssue 2016-01-05 16:05:43 -08:00
Bryan
18d17ce8c5 End to End Test Refactoring. Build upon Publish Test Infrastructure and add
capability for further testing.s enter the commit message for your changes. Lines starting
2016-01-05 13:40:33 -08:00
Sridhar Periyasamy
07eb7ef28f Dotnet publish tests 2015-12-14 17:39:29 -08:00