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
- Asset Database warning is being logged continuously when creating a script in an embedded package
- The Scene is marked as dirty when navigating Hierarchy by using arrow keys
- Build process only shows Initializing when building for Android
- TileMap Palette preview flickers when scaled
- Shader Graph Blackboard "plus" sign is not centered within the button
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.