I’ve started a new blog series where I attempt to explain functional programming concepts in terms everyday OO programmers will find familiar. Part 1 goes over the overall case for functional programming and part 2 covers some of the ways higher order functions let us create generalized solutions to common problems. Future parts will cover topics like integrating functional programming with existing highly mutable systems and how to do functional programming in your existing language of choice.
There don’t seem to be many NUnit test runners that will monitor your project and automatically re-run your tests whenever your assembly changes on OSX. After some looking around I settled on using the plain nunit.exe that comes with NUnit itself. This requires me to fire off a command line to boot it up each time instead of it just being an app. I figured there had to be a way to get a simple app bundle to wrap the command so that it could be launched like a normal app via spotlight or Alfred or whatever your launcher of choice is.
Enter Platypus, a drop dead simple way to wrap up a shell script, Ruby, Python, Perl, or other “needs to be launched from the command line” utility you might have. Configuration was extremely simple, I created a shell script to kick off NUnit
mono nunit.exe &
Then I told Platypus what script to run and included all of the requisite NUnit files that are needed and hit create.
Make sure to uncheck the “Remain running after initial execution” or the Platypus process will hang around.
If you just want the NUnit app bundle you can get it here.