Search Issue Tracker
By Design
Votes
0
Found in [Package]
2.0.0-preview
Issue ID
RIDER-39
Regression
Yes
Unit tests fail on System.TypeInitializationException when using the Standalone NUnit Launcher in JetBrains Rider
How to reproduce:
1. Open the “DllTest_UnityMoq2021.3.29f1.zip“ project
2. Go to Preferences->External Tools->External Script Editor and set it to Rider 2022.3.3
3. Open JetBrains Rider and open the project
4. Open the Unit Tests tab (Alt + 8)
5. Select the Standalone NUnit Launcher option.
6. Run the Unit Tests
Expected result: Tests are successful
Actual result: Tests failed
Reproducible with: 2.0.0-pre.2 (2021.3.32f1, 2023.2.0b16, 2023.3.0a12)
Not reproducible with: 1.0.0 (2022.3.12f1, 2023.1.19f1)
Reproducible on: Windows 10, Windows 11
Not reproducible on: No other environment tested
Error: System.TypeInitializationException : The type initializer for 'Moq.Async.AwaitableFactory' threw an exception.
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Editor colors appear darkened out when HDR Display Output is enabled
- Default Mesh Renderer Material cannot be found in the Select Material window after removing it from the GameObject
- UI Builder button text disappears in the GameView when the radius of the button is increased in a specific project
- Paste Settings functionality does not save the pasted settings in volume profile when reloading the project
- Getting a deprecated package for JetBrains Rider pop up when opening or creating a project
Resolution Note:
The solution was to set up the nuget.castle-core package. In this case, nuget.moq was setup correctly, so in the included test project, Tests.asmdef looks like this:
{
...
"precompiledReferences": [
"Moq.dll",
"nunit.framework.dll",
"System.Runtime.CompilerServices.Unsafe.dll",
"System.Threading.Tasks.Extensions.dll"
],
...
}
But nuget.moq depends on nuget.castle-core, which also needs to be set up (https://docs.unity3d.com/Packages/nuget.castle-core@2.0/manual/index.html#setup).
So the Tests.asmdef should look like:
{
...
"precompiledReferences": [
"Castle.Core.dll",
"System.Diagnostics.EventLog.dll",
"Moq.dll",
"nunit.framework.dll",
"System.Runtime.CompilerServices.Unsafe.dll",
"System.Threading.Tasks.Extensions.dll"
],
...
}
With those changes (already documented), there should no longer be a problem.