-
Notifications
You must be signed in to change notification settings - Fork 160
Consider later NUnit versions as a valid framework. #1041
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
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.
See my general comment. This single token change basically tries to re-purpose the NUnit 3 driver factory to handle NUnit 4, which we may not want to do. For now, we'll keep it as a reminder of a possible simple fix but we'd want tests before merging it.
All the tests pass because this change is untested. That's because the latest release of If you accompanied this with a test, I'd be willing to merge it into the dev-4.0 branch rather than master. I'd also be willing to accept a PR against master, for inclusion in the 3.13 release, giving a cleaner error message - if you're interested. For now, I'm marking this PR as Blocked until we know what will be happening with NUnit 4 and when. |
@CharliePoole I agree with your comments, but shouldn't this have been considered when nunit 4 developement was started? I'm happy for moving this into a 4.0-dev branch which is referenced in nunit3testadapter (5.0.0-dev?branch) to be used in nunit4. Regarding a PR in master for a better error message, I'm not sure if we can. Yes we can improve the message in the |
@manfred-brands A few years back, we decided that the NUnit Project was too big and split it into individual key projects, like NUnit framework and NUnit Console. (The NUnit test adapters had already been separate for a long time.) This allows us to move ahead in each project without necessarily worrying about the others - at least most of the time. :-) In this case, both the NUnit Framework and the Engine/Console Runner are at the point of building toward a major release at the same time. That's kind of awkward, obviously, and each project made the best decision it could based on the info available to it. The original issue, which triggered the PR, seems to be more about the adapter than anything else. You should be aware that any change to the engine will have no impact on the adapter until a new adapter version actually uses that new engine version. I no longer work on the framework, so I'm not aware of how the framework team actually runs the framework tests. My guess is that they are not using the engine, because somebody would have complained by now if they were. :-) If you can think of something I can do in version 3.13 to make things easier for you, let me know. We are not currently releasing dev builds of the console runner or engine from the dev-4.0 branch, but we could conceivably do that if it would help. Not sure what you mean by a 5.0.0 branch. That's farther ahead than I can even think right now. :-) |
I know, that is where I started searching, but then it called into nunit.engine to find tests and hence I got here.
That was referring to NUnit3TestAdapter which is currently at version 4.1.0. If this has to going into a new main branch it would have to be 5.0.0 If NUnit 4 is compatible with the NUnit3 engine at least for now, then all we need is my change (plus a new unit test), followed by updated references in the NUnit3testadapter and nunit repositories. They could be called a fix iso a feature. As an alternative is to tell everyone to make nunit PRs against 3.13.2 and future port it to nunit4 iso backport. There are some issues in nunit that also affect my developments and if I can I wouldn't mind assisting in fixing some if I can. |
AFAIK the change to 4.0 in master branch is deliberate. That's a decision the team and team lead need to make, of course. It basically has to do with what you want your focus to be. Whichever is not the main branch tends to get less attention. WRT the adapter, adding a new feature (running 4.0) isn't a breaking change, so I assume Terje would just go to 4.2 or 4.3 when upgrading the adapter, unless the 4.0 engine were actually missing some features he uses. |
I thought I would be able to edit the PR to change the merge target, but apparently not. See if GitHub will allow you to do it as the author. The branch we want is dev-4.0. Otherwise, if you delete this and start over, we lose all the discussion. |
6787762
to
a7efe43
Compare
Re-directed the branch to dev-4.0 and added unit test for the |
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.
This looks good for the dev-4.0 branch. We may, run into further glitches down the road, but support for NUnit 4 seems like a must-have feature, so we'll fix them as they happen. Thanks for your work.
@manfred-brands Because the dev-4.0 branch has drifted quite a bit from main, this can't just be merged into main. So I'll be replicating your changes separately. See #1102. |
Thanks @CharliePoole As I don't know the state of nunit 4, I do my fixes on nunit 3.13 where I can run the tests properly, then cherry pick to 4.0 |
I should probably have one system-level test for the console runner where it runs using the latest nunit 4 build. |
This issue has been resolved in version 4.0.0-beta.1 The release is available on: |
This goes towards fixing nunit/nunit#3867