devices.xunit icon indicating copy to clipboard operation
devices.xunit copied to clipboard

Device runner for macOS?

Open 1Cor125 opened this issue 6 years ago • 6 comments

I need a device runner for macOS and I am already using xunit device runners. Since Xamarin Forms 3, macOS is possible. Is there interest in supporting a macOS device runner? I would be willing to contribute a PR. Any insights would be appreciated.

1Cor125 avatar Sep 11 '18 23:09 1Cor125

Certainly happy to take a PR that adds mac support. It'll need a mac target in the main runner, but also a test app. Finally, it'll need some kind of project template to get people started and I'm not sure what VSfM uses for that?

clairernovotny avatar Sep 13 '18 14:09 clairernovotny

Ok. Pulled the repo down last night and started perusing. I look forward to chipping away at this.

1Cor125 avatar Sep 13 '18 23:09 1Cor125

@onovotny I am currently working to take this on, just looking at the project structure. Do you have any preferences/recommendations on how to best integrate the Xamarin.Mac project?

velocitysystems avatar Dec 25 '18 09:12 velocitysystems

@onovotny @1Cor125 I have a very early port of the device runner working for macOS. https://github.com/velocitysystems/devices.xunit/tree/macos_device_runner

Please see screenshots below. Needs some more work and UI tweaks, but its working!

screenshot 2018-12-25 at 12 04 10 pm

screenshot 2018-12-25 at 12 04 29 pm

screenshot 2018-12-25 at 12 04 33 pm

velocitysystems avatar Dec 25 '18 12:12 velocitysystems

Looks great!

Can it build (but not run) from a Windows VM like iOS does? I would open a PR with the updates and we can take it from there.

clairernovotny avatar Dec 25 '18 14:12 clairernovotny

Thanks @onovotny. I've just made a couple of further tweaks to the branch and will open a PR. Unfortunately, I believe the MacOS project can't build on a Windows VM only using VS for Mac.

To this end, I have separated it into a seperate project/SLN which can be opened independently from VS for Mac but references all the existing files in xunit.runner.devices.

velocitysystems avatar Jan 10 '19 09:01 velocitysystems