mmanela / chutzpah

Chutzpah is an open source JavaScript test runner which enables you to run unit tests using QUnit, Jasmine, Mocha and TypeScript.
http://mmanela.github.io/chutzpah/
Apache License 2.0
550 stars 142 forks source link

VS2022 support? #807

Closed anupshah closed 2 years ago

anupshah commented 3 years ago

Hi, thanks for this extension.

Any plans for supporting VS2022?

acangialosi commented 3 years ago

@mmanela, please let us know if you have any issues upgrading the extension to VS 2022. We can loop in folks from the engineering team to help out with any questions or technical issues. Do you have an idea of when you expect to publish your new version?

DomZZ commented 2 years ago

@mmanela, please make your adapter working on VS2022. Chutzpah apdater/runner are the only things that prevent us to move on VS 2022 :(

mmanela commented 2 years ago

Thanks for reaching out @DomZZ @acangialosi . I would love to release for VS 2022 but just have not had the time. The process looks more involved than for past releases so I will need to find time once things settle down at work/home. If I get a PR the changes, it would make the process fast but barring that it make take a bit of time.

iprak commented 2 years ago

@mmanela The structure and dependencies of the extension make its side by side migration to VS2022 difficult. I took the approach of creating just VS2022 specific extension and have had good success with the extension itself. I haven't been able to get unit tests working though; I am not sure if this is due change in Xunit or something else. Unfortunately this not something which can be merged into main repo so I did not submit a PR but here is the code https://github.com/iprak/chutzpah/tree/Vs2022

mmanela commented 2 years ago

@iprak Thanks for taking a start on this. Can you share details on the changes you needed to make? I also noticed you commented out some code and was curious why?

iprak commented 2 years ago

I think I only commented out cs code in 2 files (vstst.cs and ChutzpahTestSettingsFile.cs); the code did not seem used and was flagged in CodeAnalysis. Yes I did comment out Fact.Testable > Inject; I just could not get it compiling :-(

Here is a summary of what I settled out after some iterations:

High level changes:

Previously, Chutzpah.csproj listed some packages e.g. psake, xunit.console.runner so that they can be used in psake tasks. Some references were strong signed via a psake task and deposited in packages_autosigned folder. These signed components were explcitly referenced from packages_autosigned folder.

We can't do this with PackageReference. I decided to let packages be installed at their default location instead of forcing them into local packages folder. This makes best use of user nuget cache.

Build.bat was instead adjusted to install these utility packages, psake being one of them.

At the end I renamed all VS2012 instances to VS2022 since that was just confusing to me.

DomZZ commented 2 years ago

Hello guys, Any news on this ?

Thanks

mmanela commented 2 years ago

Just released

https://marketplace.visualstudio.com/items?itemName=vs-publisher-2795.chutzpahcontextmenu2022 https://marketplace.visualstudio.com/items?itemName=vs-publisher-2795.chutzpahtestadapater2022