I was tasked into analyze if Coyote could serve our purposes for testing multithreaded quite complex code. However, I started by building a simple scenario to test where I can actually induce an error but could not pass the rewrite step.
1>Target CopyFilesToOutputDirectory:
1> ConcurrencyTests -> S:\Src\ravendb-60-git\test\ConcurrencyTests\bin\Debug\net8.0\ConcurrencyTests.dll
1>Target CoyoteRewrite:
1> Microsoft (R) Coyote version 1.7.11.0 for .NET 8.0.6
1> Copyright (C) Microsoft Corporation. All rights reserved.
1>
1> . Rewriting the assemblies specified in S:\Src\ravendb-60-git\test\ConcurrencyTests\bin\Debug\net8.0.
1> ... Rewriting the 'Sparrow.dll' assembly (Sparrow, Version=6.1.0.0, Culture=neutral, PublicKeyToken=37f41c7f99471593)
1> Object reference not set to an instance of an object.
1> S:\Src\ravendb-60-git\test\ConcurrencyTests\ConcurrencyTests.csproj(51,5): error MSB3073: The command "coyote rewrite coyote.json" exited with code 1.
1>Done building target "CoyoteRewrite" in project "ConcurrencyTests.csproj" -- FAILED.
1>
1>Done building project "ConcurrencyTests.csproj" -- FAILED.
Repro
Build in debug the ConcurrencyTests project from the following branch:
I was tasked into analyze if Coyote could serve our purposes for testing multithreaded quite complex code. However, I started by building a simple scenario to test where I can actually induce an error but could not pass the rewrite step.
Repro
Build in debug the ConcurrencyTests project from the following branch: