Hey there, Thank you so much again for your great work here. Lots of good contributions we could definitely use.
Moving to xUnit.Net was actually on my list of things to do - basically also because it's API is much better and more flexible (and less buggy!) and my experience with it was much better than with NUnit (which we use an outdated version of). Some people claim xUnit is also faster, so hey - why not. Are you sure you can "easily move all tests to xUnit"? From what I can tell this will be a rather rigorous copy-paste job? While the JavaCompatibility bits we have ( https://github.com/apache/lucenenet/tree/master/src/Lucene.Net.TestFramework/JavaCompatibility) do contain centralized function like assertTrue() etc that save loads of time and effort porting tests, so that could be changed easily to use xUnit, there are many places where asserts etc where ported in full to the NUnit API. I am definitely pro this change, but let's make sure we don't go down into a rabbit hole first. Let me know what you think. With regards to the status update: 1. I made some last minor comments on the merge scheduler PR - we should be able to merge it within a few days now. Great work there 2. What is keeping us from merging your ICU etc changes? please note some subprojects are absolutely necessary for Lucene.NET to run on Core CLR as well - even though they are "sub" projects and not part of the Lucene core itself. Queries and Analysis are probably the biggest ones (latter not fully ported yet, and it's the one with the ICU dep). 3. Other than what you posted - are there any other pending items to get this running on .NET Core? -- Itamar Syn-Hershko http://code972.com | @synhershko <https://twitter.com/synhershko> Freelance Developer & Consultant Lucene.NET committer and PMC member On Fri, May 20, 2016 at 3:17 AM, Elizabeth Maher (NEWMAN) < [email protected]> wrote: > Lucene.NET Community, > > Connie and I continue to make progress on moving Lucene.NET to .NET Core. > The last challenge we face is to get the tests to successfully run on .NET > Core. Currently the unit tests use NUnit. There is a .NET Core version > called NUnitLite. However, the issue is there is some manual steps to get > NUnitLite tests to work on .NET Core. We would have to create console > applications for each of the test library, call the appropriate APIs to > create a test results file and then work with the CI system to manually > upload the results. Also, there is not Test Runner integration for > NUnitLite. While, this is all possible to do, I would like to propose a > different change. I could easily move all the test to use xUnit. The > would benefit Lucene.NET in the long run as there are both full fx< > https://xunit.github.io/docs/getting-started-desktop.html> and core fx< > https://xunit.github.io/docs/getting-started-dotnet-core.html> versions > of xUnit, there is a TeamCity plugin that automatically works< > https://xunit.github.io/docs/getting-test-results-in-teamcity.html>, as > well as the ability to run tests in Visual Studio.< > https://xunit.github.io/docs/getting-started-dotnet-core.html#run-tests-vs.> > I believe the long-term maintenance cost for both full and core fx tests > would be lower using xUnit. Is this an acceptable direction for me to take > the unit tests? Please let me know. > > Below is the progress of our migration work, for the curious. > > 1. Remove use of SharpZipLib dependency - completed > > 2. Update ICU4NET dependency for .NET Core - completed in dev branch > > a. In https://github.com/conniey/lucenenet/tree/move2dnx. > > 3. Remove Appache.NMS dependency - completed > > 4. Move Scheduler to use Tasks - PR submitted > > a. Pull request at https://github.com/apache/lucenenet/pull/171. > > 5. Make portable libraries to build .NET Core binaries - completed > in dev branch > > a. In https://github.com/conniey/lucenenet/tree/move2dnx. > > 6. Verify tests pass on both full framework and .Net Core. - In > progress > > a. Need to get tests to run on .NET Core. > > > Thanks, > Elizabeth >
