-
Notifications
You must be signed in to change notification settings - Fork 640
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Test/net crash test #786
Test/net crash test #786
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are you able to run this locally end to end? For me, once I modified the working directory path to match what's on my machine, I was able to start the test, but when the test gets invoked via Process.Start, dotnet test is encountering locking issues:
C:\Program Files\dotnet\sdk\7.0.104\Microsoft.Common.CurrentVersion.targets(4862,5): error MSB3027: Could not copy "....\Lucene.Net.TestFramework.dll" to "bin\Debug\net7.0\Lucene.Net.TestFramework.dll". Exceeded retry count of 10. Failed. The file is locked by: "testhost (5360)" [..\src\Lucene.Net.Tests._I-J\Lucene.Net.Tests._I-J.csproj]
…ation to crash the test upon timeout and log the results. Added missing support for the tmpDir system property when creating temp folders and files so we can pass the from one process to another.
Thanks for the PR. I went through and completed this task, as it was clearly going to take a lot of back and forth to work out, especially being that I admittedly didn't have a complete picture of what the test was doing. Several things it does are very subtle and you have to consider the implementation of how the test framework functions in order to work them out.
Ultimately, we got it done, though. It took a lot of research and analysis to pull off. Do note that creating the directory has been moved inside of the loop because I realized that if it were left a single shared directory all of the loops would put results into the same temp directory that is checked. And since they are checked in lexicographical order and always return on the first index checked, there is a high probability that if the first check fails most of the rest of the checks would also fail. |
Closes #768