summaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)AuthorFilesLines
2019-04-11Renaming 'failure' in counter tests (#23891)Sung Yoon Whang2-19/+19
2019-04-10Merge remote-tracking branch 'origin/master' into utf8_validation_apis_3Levi Broderick21-17/+1218
2019-04-10Remove overrelease in test (#23887)Aaron Robinson1-5/+0
2019-04-11Contextual reflection (#23740)Steve MacLean4-0/+906
* Add ContextualReflection APIs Add ContextualReflection APIs approved in dotnet/corefx#36236 Fix issue #22213 * SetParentAssembly even when IsCollectible() * ContextualReflection tests * PR Feedback * Add more usage tests Add using statement tests Add bad usage tests including Assert.Throws<> * Only initialize on set * Add XML API comments * Unify VerifyIsolation * Fix unused expectedAssembly * Remove ContextualReflectionScope throw * Clean up TestResolveMissingAssembly et. al * Remove unused QCall::AppDomainHandle * Remove AppDomainBaseObject * Pass AssemblyLoadContext as managed object to native * Fix AssemblyLoadContextBaseObject packing * AssemblyLoadContext backing stores Use explicit backing stores for events and properties * Remove StaticAsyncLocalCurrentContextualReflectionContext * Remove PermissionSetObject
2019-04-10Expose new EventCounter APIs (#23808)Sung Yoon Whang2-5/+5
* rename BaseCounter to DiagnosticCounter * Change MetaData->Metadata * Make EventSource and Name a property for counter classes * Make the counter APIs public * fix build errors * Change float to double * Few cleanups, fix test * fix GetMetadataString * PR feedback * More PR feedback
2019-04-09Temporarily disable failing CoreFX testsLevi Broderick1-3/+11
2019-04-09Alter CCW wrapping semantics (#23709)Aaron Robinson15-12/+312
* Update CCW semantics to not unwrap when a managed COM server was activated from a managed COM client. This is a functional change from .NET Framework. * Add support for CoreShim to "attach" to the existing CLR instance when running from a CoreRun scenario. * Add testing for NET COM client activating a NET COM server
2019-04-09Unconditionally set CrossGenTest to false for readytorun/tests/mainv1 mainv2 ↵Egor Chesakov2-0/+2
(#23826)
2019-04-09Group XUnitWrapper.dll into the same Payloads when submit to Helix (#23476)Egor Chesakov4-44/+309
* Add DisplayNameAttribute to each Fact * Split files under bin/tests folder into groups and specify the corresponding *.XUnitWrapper.dll * Group some of the *.XUnitWrapper.dll files into PayloadGroups and split others into different PayloadGroups if they have more than one TestGroup defined * Add "TestGroup" trait to XUnitWrapper facts * Add Microsoft.DotNet.XUnitConsoleRunner to eng\Versions.props * Overwrite xunit.console.dll with the version coming from Microsoft.DotNet.XUnitConsoleRunner
2019-04-08Remove exclusion for System.Threading.Tasks.Tests (#23818)Vladimir Sadov1-1/+0
* Update exclusion for System.Threading.Tasks.Tests There is a race in the test, which causes failures in various stress runs. And that is not Linux specific. The failure is addressed in https://github.com/dotnet/corefx/pull/36645 This is to update the exclusion lists to make it not just for Linux and to link to the fix PR, so that it could be tracked when it makes it into coreclr. * Update corefx_test_exclusions.txt * Update corefx_test_exclusions.txt
2019-04-08Merge pull request #23739 from briansull/struct-cseBrian Sullivan2-0/+230
Block the hoisting of TYP_STRUCT rvalues in loop hoisting
2019-04-08Block the hoisting of TYP_STRUCT rvalues in loop hoistingBrian Sullivan2-0/+230
Added test case GitHub_23739.cs
2019-04-08Merge pull request #23814 from sandreenko/disableSystemIOTestsCorefxSergey Andreenko1-0/+1
Diable CoreFX System.IO.Tests.dll on windows arm64.
2019-04-08Merge pull request #23715 from BruceForstall/FixArmStackProbingBruce Forstall6-0/+587
Fix ARM32/ARM64 large frame stack probing
2019-04-08Diable CoreFX System.IO.Tests.dll on windows arm64.Sergey Andreenko1-0/+1
2019-04-08Allow reabstraction of default interface methods (#23313)Michal Strehovský7-8/+466
Allow the runtime to load types with incomplete interface implementations. With this change, we allow (in pseudo-C#): ```csharp interface IFoo { void Frob() { } } interface IBar : IFoo { abstract void IFoo.Frob() } class Fooer : IBar { } ``` Calling IFoo.Frob on an instance of `Fooer` will result in new exception being thrown because the default implementation of `IFoo.Frob` was re-abstracted by `IBar`.
2019-04-06Merge pull request #23775 from sandreenko/reenableFixedCoreFXSergey Andreenko2-2/+0
Reenable System.Runtime.Tests. for arm64.
2019-04-06[master] Update dependencies from dotnet/corefx (#23785)dotnet-maestro[bot]1-3/+0
* Update dependencies from https://github.com/dotnet/corefx build 20190405.9 - Microsoft.NETCore.Platforms - 3.0.0-preview5.19205.9 - Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview5.19205.9 * System.Data.DataSetExtensions is not a package anymore
2019-04-05Match PtrToStringUTF8 to the other PtrToString* families. (#23731)Jeremy Koritzinsky1-0/+20
* Match PtrToStringUTF8 to the other PtrToString* families. * Make PtrToString*(IntPtr,int) exceptions consistent. * Exclude out-of-date tests in CoreFX. * Update exclusions to cover tests that are now throwing ArgumentOutOfRangeExceptions instead of ArgumentExceptions. * Fix parameter order for exception. * Pass value to exception.
2019-04-05Fix typo in Buffer.BlockCopy (#23636)Egor Bogatov1-0/+4
2019-04-05WIP Fix ARM32/ARM64 large frame stack probingBruce Forstall6-0/+587
2019-04-05Reenable System.Runtime.Tests. for arm64.Sergey Andreenko2-2/+0
2019-04-05Enable return buffers on Windows ARM64 for struct-returning member functions ↵Jeremy Koritzinsky2-8/+69
(#23625) * Enable return buffers on Windows ARM64 for struct-returning member functions. Fixes #23577. * Update comment to match new condition. * Enable byref return on all Windows (excluding arm64 HFA. Add more test cases for ThisCall. * On x86, if we have a normalized return value in an instance method, get back the actual type so that we correctly marshal it via a return buffer. * Fix param ordering. * Clean up based on PR feedback. * Fix accidental variable shadowing.
2019-04-05Don't null out references in Stream/BinaryReader/Writer (#23725)Stephen Toub1-0/+26
These types null out some fields on Dispose, and some of those fields are accessible directly via exposed properties, which means that nulling them out would either force us to annotate those properties as being nullable or would require us to lie about them being nullable. Nulling them out also makes it easier to accidentally null ref in the implementation, and prevents us from making the fields readonly. It should be exceedingly rare that you dispose of one of these objects and then keep it alive while also being concerned about keeping alive the other helper objects the type uses. So this change just uses a separate flag to track disposal, and avoids nulling out the fields, which is not a common practice elsewhere in the framework. This will be a visible change in that after Dispose, properties like StreamWriter.BaseStream/Encoding will now return the stream/encoding rather than null. In theory that could break someone if they were using those properties to determine whether the writer had been disposed, but that seems unlikely / similar fallout from most any bug fix, and objects generally aren't supposed to be touched after Dispose, anyway.
2019-04-04Disable marshalling delegates as _Delegate and enable marshalling delegates ↵Jeremy Koritzinsky4-87/+94
as IDispatch. (#23738) * Disable marshalling delegates as _Delegate and enable marshalling delegates as IDispatch. * ifdef out the new IDispatch marshalling on non-COM-supporting platforms. * PR feedback.
2019-04-04Disable a couple of S.R.InteropServices tests (#23697)Koundinya Veluri1-0/+8
Disabled the two tests that were fixed in PR https://github.com/dotnet/corefx/pull/34968
2019-04-04Fix SystemV AMD64 Explicit structure classification (#22041)Jeremy Koritzinsky7-55/+470
* Don't bail out on enregistering explicit structs if there are no overlapping fields. * Don't enregister if any unaligned fields. * Enable passing explicit structs by-value by enregistering on systemv. Some edge cases are likely still broken, but just removing our blanket opt-out makes the current tests pass. * Enable MarshalstructAsLayoutExp off-Windows. * Start adding additional tests for explicit layout to try to catch edge cases in SystemV classification. * Added a test that spans across multiple eightbytes and has an overlap in the second eightbyte. * Change repro to use an array of floats and an int field in managed and use a float array for padding in native to force an SSE classification on the first byte. * New algorithm to calculate eightbyte classification by going throw the structure byte-by-byte instead of field-by-field. * Fix updating eightbyte classifications in the loop to actually used the iterated-upon variable. * Consider each element of a fixed array as a separate field (to match native implementations). * Implement correct SystemV classification for fixed buffers in non-blittable structures. Fixed buffers in blittable structures have the managed layout assign classifications, which still is buggy. * Add tests. * Correctly classify blittable fixed buffers. Move "is this field a fixed buffer" tracking into one of the unused bits in FieldDesc as code that isn't in marshalers needs to know about it. * Handle the case where we have a struct that has no fields in an eightbyte that contains (i.e. no fields in the first eight bytes of the structure). * PR feedback. * Only look up FixedBufferAttribute when the type is a value class and the type of the field is a value type. * Use heuristic to determine if a type is a fixed buffer for SystemV classification. * Revert tracking if a field is a fixed buffer in the FieldDesc. * Update comments. * Classify aligned, nonoverlapping, float/double only structures as HFAs even if explicitly laid out * Enable overlapping fields in HFAs. Update NativeType HFA to check for alignment. I checked Godbolt to verify that HFAs for overlapping fields are allowed. * Add HFA tests. * Fix compile errors from HFA alignment check. * Non-valuetypes will never have their managed layout used to classify SystemV eightbytes. * Don't classify a struct with no zero-offset field as an HFA. * Remove duplicate semicolon. * PR feedback. * Add test with 2-field double HFA. * Clean up and add static asserts for struct size. * Add define for static_assert_no_msg to the native test headers * Fix build breaks. * Remove unneeded "size = X bytes" comments. They were holdovers from the .NET Framework test tree. * Use GetNumInstanceFieldBytes instead of GetLayoutInfo()->GetManagedSize() * Fix build break. * Centralize FieldMarshaler offsettting in ClassifyEightBytesWithNativeLayout. * Fix signed/unsigned mismatch * Fix condition to also detect arm64. * Change ifdef to if defined. * Remove duplicate declaration (broken in rebase) * Add some logging in one of the unreproable OSX test failures. * Mark System.Numerics.Vector as intrinsic and don't use the eightbyte classifier to enregister it. * Also explicitly opt-out of HFAs for System.Numerics.Vector`1 for consistency. * Update R2R required version to 3.0. * Remove debugging prints.
2019-04-04Improve Upper Vector Save/Restore (#23344)Carol Eidt2-0/+132
Improve Upper Vector Save/Restore In order to avoid saving and restore the upper half of large vectors around every call even if they are not used, separately model the upper half of large vector lclVars, and track whether the large vector lclVar is partially-spilled, in which case its upper half resides in its upper half Interval's location. Fix #18144
2019-04-04Fix prefix of mock hostpolicy on Unix (#23692)Jeremy Koritzinsky1-1/+1
Fixes #23682
2019-04-03Fix interop test cases to pass doubles for native varargs. (#23690)Andy Ayers5-120/+101
Remove these tests from the windows exclude list. Also move one other exclude entry from its own section into the general exclude list. Closes #22974
2019-04-03Change Auto charset to mean UTF-8 off-Windows (#23664)Jeremy Koritzinsky6-1/+66
Match Mono's behavior by changing the Auto character set to mean UTF-8 on non-Windows platforms (new behavior) and UCS-2/UTF-16 on Windows (current behavior). Fixes #23464 Fixes dotnet/corefx#32442 Impact of breaking change: It is highly unlikely that anyone is actively using current behavior since it is inconsistent with Mono and doesn't match any native system APIs on non-Windows platforms (they're all UTF-8 based). We will need to update our documentation to reflect this updated behavior.
2019-04-02Updating the HWIntrinsic x86 codegen to handle indir nodes. (#23629)Tanner Gooding338-0/+40560
* Updating the SimpleBinOpTest.template to cover some additional containment scenarios * Regenerating the x86 HWIntrinsic tests from their templates * Updating the HWIntrinsic x86 codegen to handle indir nodes.
2019-04-02Change tests to not modify Core_Root (#23470)Jeremy Koritzinsky19-134/+125
Redesign tests that needed to modify Core_Root to no longer do so. - Loader.FromNativePaths: Use `CORE_LIBRARIES` instead of `COREROOT` - Loader.AssemblyDependencyResolver: Split out the invalid hosting test that needs hostpolicy to not be preloaded. Have `CoreRun` and `CoreShim` preload hostpolicy when a path to a hostpolicy is specified in the `MOCK_HOSTPOLICY` environment variable. - Add a `CLRTest.MockHosting.targets` file that is imported when a test requires hostpolicy. It adds the reference to the mock hostpolicy and ensures that the `MOCK_HOSTPOLICY` environment variable is correctly set in the test scripts. Fixes #23429.
2019-04-02Fix spill check for struct lclVars (#23570)Carol Eidt3-3/+67
* Fix spill check for struct lclVars With the 1st class struct changes, the `SPILL_APPEND` check for the case of an assignment to a lclVar needs to handle block ops as well as lclVar lhs. Fix #23545
2019-04-02Remove test exclusion for 23262 (#23405)Michal Strehovský1-3/+0
The commit that added the test was rolled back.
2019-04-01Disable load byte array (#23638)Steve MacLean1-1/+1
* Disable AssemblyLoadByteArrayName test * Fix typo
2019-04-01Disable AssemblyLoadByteArrayName test (#23635)Steve MacLean1-0/+2
2019-04-01[master] Update dependencies from dotnet/corefx (#23593)dotnet-maestro[bot]1-0/+3
- Microsoft.NETCore.Platforms - 3.0.0-preview4.19181.2 - Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview4.19181.2
2019-03-31re-add test exclusion for #23545 (#23598)Carol Eidt1-0/+3
2019-03-29Clean up AssemblyLoadContext30Extensions test (#23581)Steve MacLean2-6/+1
Build test against corefx ref facade Enable Assembly.Load(byte[], ...) test
2019-03-29Make tracelogging GCStressIncompatible. (#23578)Sergey Andreenko1-0/+1
2019-03-29Fix HW intrinsic containment bugs (#23558)Carol Eidt3-21/+68
* Fix HW intrinsic containment bugs For the Fma case (#23430), fix the handling of contained 3-operand HW intrinsic nodes. For the Bmi case (#23534), fix a bad assert placement, and re-enable the Bmi tests. Fix #23530 Fix #23534 * Add guard for Fma test
2019-03-29Merge pull request #23533 from briansull/Issue_23441Brian Sullivan2-0/+244
Fix for issue 23411
2019-03-29exclude failing test. (#23566)Sergey Andreenko1-0/+3
2019-03-29Correctly marshal structure return values in member functions on Win-x64 and ↵Jeremy Koritzinsky11-11/+289
Win-x86 (#23145) * In Windows-x64, if we have a native member function signature with a struct return type, we need to do a by-ref return. * Implement support for marshalling structure return values via a return buffer argument correctly in instance signatures on AMD64-Windows. * Change field initialization ordering to satisfy warning. * Try to narrow down the conditions that trigger these changes to just COM methods. * Don't bash the return type on AMD64 Windows. Only treat it as a byref return buffer. * PR feedback. * Enable returning structs from COM methods via a return buffer on x86 for structs <= 8 bytes. * Add test for struct returns with ThisCall. Extend the "struct return buffer" fix to functions marked as unmanaged thiscall since they all must be instance methods * Don't include the return-type-bashing switch on AMD64 platforms. * Don't do the signature swapping/copy on non-instance functions with struct returns. * Cast the return type of GetStubTargetCallingConv to the right calling convention enum type. * If we're doing a thiscall, marshal the "this" parameter before the return buffer (if the return buffer exists) on all platforms. * Remove temporary logging code I added in for debugging. * Clean up class naming. * Try using a vtable instead of a pointer-to-member-function. * Remove delete of class with non-virtual destructor
2019-03-28Exclude failing in PRs tests 2. (#23540)Sergey Andreenko1-0/+9
* exclude failing in PRs tests * And another one. * Exclude for all platforms.
2019-03-28Delete `setup_coredis_tools` from runtest.py. (#23495)Sergey Andreenko1-49/+1
* Delete `setup_coredis_tools` from runtest.py. * delete dead `setup_coredis_tools` .
2019-03-28Fix for issue #23441Brian Sullivan2-0/+244
Added test case GitHub_23411
2019-03-28Fix increment calculation in IncrementingPollingCounter (#23502)Sung Yoon Whang2-0/+168
* Add test for IncrementingPollingCounter * Fix a bug in Increment calculation in IncrementingPollingCounter * Remove setting DisplayName property since that's a private property for now * fix comment * Remove unused variables
2019-03-28Exclude failing in PRs tests. (#23535)Sergey Andreenko1-0/+9
* exclude failing in PRs tests