Age | Commit message (Collapse) | Author |
|
|
|
* Fix tests run on desktop
Conditionalize tests appropriately so long path and new syntax
support are taken into account.
Move some test data into Theories for easier debugging.
Fix and add issue to colon check tests until we fix CoreCLR.
* Address feedback
|
|
WebServer.csproj doesn't conform to any of our repo project guidelines,
don't try to build it.
Other test "utility" assemblies were working around the previous config
system by undefining properties. This should no longer be needed.
|
|
|
|
|
|
|
|
build.proj (#14663)
* [WIP]Created src\tests.proj which is mostly building all tests
* Convert test project .builds to Configuration.props
* Fix test paths in targetingpack.props, move test-runtime.
* Move test-runtime under external.
* Rename RuntimeDir->RuntimePath in targetingpacks.props and
Xunit.Runtime.depproj.
* Remove test-runtime project.json from the SupplementalTestData list in
dir.targets.
* Remove XUnit.Runtime.depproj from tests.proj
* Convert test .builds files to Configuration.props.
* Revert "Convert test project .builds to Configuration.props"
This reverts commit 1efc4d9a02d1c2eced0f20a544abcbcd0092f40c.
* Fix compilation error in System.Collections.Concurrent.Tests
* Fix condition in System.Collections ref project
* Fix two more Collections test project issues
* Add Configuration.props for System.Collections ref
* Fix TargetGroup conditions in System.Collections.Tests.csproj.
* Fix compilation problems with NameResoltion.Pal.Tests.
* Fix compilation errors in SqlClient Stress tests
* Fix IO.Compression.Performance tests compilation
* Fix compilation and configurations of System.Net.Http.Unit.Tests.csproj.
* Fix compilation issues in System.Private.Xml.Linq tests
* Disable XsltScenarios.Tests project, like it was before.
* Fix missing DefineConstants for System.Linq ref project.
* Fix compilation of System.Net.Primitives.Pal.Tests.csproj
* Fix compilation of System.Net.Primitives.UnitTests.Tests.csproj
* Fix compilation of System.Security.Cryptography.Cng.Tests.csproj.
* Fix compilation of System.Net.Primitives reference project
* Fix compilation of System.Net.Security ref project
* Fix compilation of SYstem.Net.Security.Tests.csproj
* Fix configuration of X509Certificates ref project
* Fix compilation errors in System.Net.Http.Unit.Tests.csproj
* Fix Common.Tests.csproj
* Fix System.Diagnostics.Debug.Tests.csproj
* Fix Microsoft.Win32.Registry.Tests.csproj
* Add runtime.native.System.Data.SqlClient.sni to external project
* Fix System.Diagnostics.TraceSource.Tests.csproj
* Fix System.IO.Compression.Performance.Tests.csproj
* Move supplemental test data into test-runtime/project.json
* Fix System.IO.FileSystem.Watcher.Tests.csproj
* Fix System.IO.FileSystem.Tests.csproj
* Fix System.IO.Pipes.AccessControl.Tests.csproj
* Fix System.IO.MemoryMappedFiles.Tests.csproj
* Fix System.IO.Pipes.Tests.csproj
* Fix System.Json.Tests.csproj
* Add missing supplemental test data for net security tests
* Fix resource names in System.Xml.XPath.XDocument.Tests.csproj
* Fix Assembly.Location test case
* Fix assembly loading paths in DefaultLoadContextTest.cs
* Fix issues in System.Runtime.Loader.Tests.csproj
* Fix RootNamespace in ResourceManager tests
* Mark OpenSSL tests as unsupported on Windows
* Fix RootNamespace in System.Xml.XPath.Tests.csproj
* Fix RootNamespace in System.Xml.XPath.XmlDocument.Tests.csproj
* Fix System.IO.Compression.Tests.csproj
* Add missing Configurations.props files for System.Net projects
* Fix compilation issues in WinHttpHandler tests
* Add fixes and a workaround for Linq.Expressions tests
* Add workaround for System.Runtime.Tests
* Use extension methods explicitly in Ref.Emit tests
* Hook up test projects into build
* Fix build configuration of Crypto.Primitives for netcoreapp
* Enable VB tests outside Windows
* Enable Mail tests outside windows
* Don't run Unsafe tests outside windows
* Don't build Unsafe tests outside Windows
* Don't build WebServer project outside of Windows.
* Fix corerun path for Unix tests.
* Fix casing of 'Native' directory in NETCoreApp private pkgproj
* Remove runtime-specific stuff from Xunit.Runtime.depproj
* Move tests into a separate project ('tests.msbuild') which isn't built in build.proj
* Remove duplicate types from NameResolution.Pal tests
* Skip tests in a project if there is no compatible configuration.
* Include internal socket types only on Windows in NameResolution tests
* Manually fix S.R.InteropServices configurations
* Rename tests.msbuild -> tests.builds
* Manually fix System.Text.Encoding.Tests.csproj configuration
* Manually fix System.Threading.Tests configuration
* Manually clean up System.Runtime.Tests.csproj
* Fix System.IO.FileSystem.Tests configurations
* Manually fix System.Globalization.Tests configurations
* Manually fix System.IO.Pipes.Tests configurations
* Manually fix System.IO.Compression.Tests configurations
* Manually fix System.Runtime.Extensions.Tests configurations
* Manually fix System.IO.MemoryMappedFiles.Tests configurations
* Manually fix S.Diagnostics.Process.Tests configurations
* Manually fix System.ComponentModel.TypeConverter.Tests configurations
* Misc PR feedback.
* Use HostRunnerName instead of HostRunner in Process tests
* Fix configurations for S.ServiceProcess.ServiceController.Tests
* Revert to using ConfigurationErrorMsg to check if tests should be skipped.
Configuration still defaults to 'Debug' even if there is no valid configuration.
|
|
* Change first third of test projects to compile against targeting pack.
* Add supplemental test data into an external project
|
|
|
|
(#13476)
* Moving part of System.Security.Permissions down to System.Runtime.Extensions
|
|
* Add Replace methods to System.IO.FileInfo
|
|
Move all of System.IO into System.Runtime.Extensions.
Finish moving System.IO.Primitives into System.Runtime.
|
|
* Json changes for updating to new CLR
* Take new CoreCLR
Uses new copy of FileStream from CoreCLR
Moves FileStream to System.Runtime
Forwards from old locations
Various workarounds/fixes
* Update to CoreCLR beta-24704-03
|
|
Restore this common project.json upfront to improve sync time and avoid download contention from nuget.
|
|
|
|
|
|
|
|
Adds negative tests for Begin/End, removes unnecessary block for `\\.\`
paths.
(The block for `\\.\` paths fulfills a need that predates our supported
Windows OSes. You cannot inadvertently mess up "raw" drives. In addition
we currently allow `\\?\` which is another form of device path access.)
|
|
|
|
Adds:
- File.WriteAllLines(string, string[])
- File.WriteAllLines(string, string[], Encoding)
- File.Replace(string, string, string)
- File.Replace(string, string, string, bool)
- File.Encrypt(string)
- File.Decrypt(string)
- FileInfo.Encrypt()
- FileInfo.Decrypt()
- FileStream.Handle
- FileStream.Lock(long, long)
- FileStream.Unlock(long, long)
Currently throws PlatformNotSupportedException from:
- Encrypt/Decrypt on all platforms. These can be implemented on Win32, but the APIs needed are not currently exposed as allowed in buildtools.
- Lock/Unlock on Unix and WinRT. These can be implemented on Unix; I just didn't in this commit.
|
|
|
|
|
|
|
|
Fix FileStreamBase Begin/End race condition
|
|
Adding Reflection changes back after merge from master
|
|
The new FileStreamBase.Begin/End overloads do argument and state validation similar to that of desktop. There is a subtle but critical difference, however: in this validation, desktop checks to see whether the stream is closed via ```_handle.IsClosed```, whereas FileStreamBase does it via ```SafeFileHandle.IsClosed```. ```SafeFileHandle``` is an abstract property that returns the handle... but it also flushes. The base Stream's Begin/End implementation has synchronization to ensure that only one async operation is in flight at a time, but this call to ```SafeFileHandle.IsClosed``` comes before that synchronization kicks in (it's in the base), and as such we end up potentially having a Flush invocations concurrently with Write invocations (Write is called asynchronously from the base BeginWrite), which is very unsafe.
This commit fixes it by adding an IsClosed property that goes directly to the underlying handle, bypassing the publicly exposed SafeFileHandle (that flushes so that direct access to the file via the handle is consistent with operations already performed on the FileStream).
(I also fixed a small issue in the ManyConcurrentWriteAsyncs that highlighted the issue. Order of async read/write operations is only guaranteed on FileStream when in async mode; in non-async mode, it's theoretically possible (though unlikely) for operations to complete out-of-order, but the test is validating that the operations completed in order. While I've never seen this fail, I'm proactively fixing it.)
|
|
|
|
Expose all System.Reflection APIs
|
|
Enable netcoreapp1.1 tests to run as part of the CI build
|
|
netcoreapp1.1 (#10531)
Reving up the versions of the contracts where we have added Apis for
netcoreapp1.1
|
|
|
|
|
|
|
|
references to pkgproj
|
|
|
|
supports clauses for tests
CoreFX tests will now compile against netstandard1.3 as references and will now deploy for the platforms listed in their respective supports clause, provided the appropriate TestTFM is passed in. The supports are fully listed inside runtime.json in the new TestSuite metapackage in buildtools. The tests will default to netcoreapp1.0 as their TestTFM.
CoreFx test projects now utilise a test csproj to pkgproj reference which determine the appropriate compile time and runtime assets needed.
Dependent on https://github.com/dotnet/buildtools/pull/770
|
|
Filesystem enumeratenonexistent
|
|
|
|
Disable failing Windows Nano tests.
|
|
Adds missing tests to achieve strictly higher coverage than ToF and also adds some other new tests and cleans up existing tests.
|
|
Get Unix file stats with LStat (instead of Stat)
|
|
Stat was ignoring symbolic links (and getting stats for the target
instead) which caused checks for whether or not a path was a sym link
to fail on Unix.
Fixes dotnet/corefx#5015
|
|
Support for AnyOS
|
|
This add a default configuration before the Import of dirs.props
for any projects that don't have Debug as the default configuration.
Removed Configuration and Platform properties set after dirs.props
as they would have no affect and just cause confusion.
Removed OutputType=Library property as it isn't necessary.
|
|
|
|
|
|
hardened them so that the tests can be more easily built without also running them. I also removed the v5.0 libraries requirement. This commit also allows the perf tests to be run as regular unit tests.
|
|
- Made the existing perf tests for Linq follow the new syntax and use the new runner
- Removed all references to v5.0 libraries being required as they no longer are
- Added new tests using usage data from aspnet/benchmarks
- Modified some existing tests to be more easily comparable using analysis tools that look at inlinedata/memberdata (e.g. System.IO.Compression)
- Updated the lock files to use the latest xunit-performance package
- Modified test structure and innerIteration loops to produce more consistently repeatable results
- Updated docs with change to csproj requirements
|
|
Our common tests folder has gotten a bit unwieldy in its organization. This change simply moves files around to better map to how src\Common\src is organized. Files are now stored in a path based on functionality/namespace.
I mostly kept groups of functionality together and did not attempt to reorganize at that level, e.g. I moved the src\Common\tests\System.Xml.XPath\ folder to be src\Common\tests\System\Xml\XPath\ and did not further reorganize all of the folders/files it contains. Such cleanup can be done separately on each individual area.
Some of the files also need to be cleaned up internally, e.g. the namespace (or lack thereof), so I put such things in a path that I thought made sense even if it differs from the current namespace in the file; I wanted this change to be relatively simple and just be about moving files around to clean up the main hierarchy.
|
|
- Added "Performance" folders containing perf xunit tests to a number of highly-used libraries (determined by Usage data)
- Two sets of usage data from store apps; I added a test for every function used in more than 5% of the covered assemblies in both data sets.
- This is a first-round pass of the most highly used libraries and does not include: abstract classes, interfaces, or Attributes
- Created a static utility class for commonly used functions across perf tests, stored in src\Common\tests\Performance.
- These tests will run using ```msbuild /t:BuildAndTest /p:performance=true``` from the projects test directory
- Added conditional properties that check if v5.0 is installed on the user's computer when running perf tests. If it isn't, a detailed error is thrown with a link to a performance-test github page that I've also added.
|