UnitDriven v0.0.5 Available

http://unitdriven.codeplex.com/releases/view/46068

I applied some updates to UnitDriven and released a new version recently. The updates provide some nicer nesting of namespaces in the test runner UI as well as improved disabling of ‘Run’ buttons and correctly functioning Timeouts.

Also the update is paired with updates to StatLight so you can run your Silverlight unit tests in a purely automated fashion.

Also, if you find yourself trying to remember why you would want to use UnitDriven instead of one of the other unit test frameworks for Silverlight, here are the main features.

  • First class support for asynchronous tests.
  • Supports the ability to author identical tests for Silverlight and .NET (file linking).
  • Parallels either MSTest or NUnit seamlessly.

MetaSharp Cloning Error

By the way, if you have cloned the MetaSharp source code in the past and are now experiencing issues pulling you will need to re-create your clone.

There was a lingering CodePlex issue that resulted from the TFS->Mg migration that required some maintenance and as a result it broke all current clones. Going forward there will (hopefully) not be any more such events.

MetaSharp on CodePlex

I finally managed to get the source code for the little side project I’ve been working on into CodePlex.

http://metasharp.codeplex.com

Give it a shot and let me know how it works out for you! There are definitely known limitations at this point, there is almost certainly language syntax that doesn’t work right for starters. Most of the basic stuff is there but l haven’t really tested abstract members much or events and things like that. I also haven’t implemented “macros” yet, which isn’t very hard to do in the parser but is much harder to do in the compiler. I’ll probably hook that up for v0.2.

I’m also in dire need of cleaning up some regular project maintenance stuff such as versions for the assemblies, automated build, many more unit tests, code analysis, etc.

If you’re still scratching your head about what I’m even trying to do here check out these two wiki pages

Basic Workflow

http://metasharp.codeplex.com/Wiki/View.aspx?title=Workflow

Song Sample

http://metasharp.codeplex.com/Wiki/View.aspx?title=Song%20Sample

If you’re still scratching your head please let me know, because I’m either not explaining it right or this is more confusing than I thought.

By the way, this project is not an official Microsoft project in any way. This is something I have done in the evenings and weekends for my own enjoyment. Please don’t ask anyone else for support and don’t blame them if you think this project is lame 🙂

Offline Editing With TFS Integrated Source Control

I am a big fan of TFS. I have been using it for a while both at work and through codeplex. I have used several other source control systems including CVS, SVN, VSS and Star Team. I can say without equivocation that TFS is the best hands down, my second favorite is SVN which is a really great source control system as well.

Up until today there was two areas where I would say that SVN beats TFS and makes it worth using. The first is price; SVN is free while TFS is expensive, so it depends on your budget and your need for quality. If you are working on a public project you might as well go with codeplex because you’ll get a great source control system for free along with wiki pages, forums and issues management.

The second area is the ability to work on your project offline. SVN is perfectly designed with this concept in mind, you edit offline to your hearts content then the next time you’re online you fetch and merge everything and then check it in. Very simple but with TFS, since you’re integrated, once you are offline you loose the ability to keep track of what items you’re checking out and working on then the next time you go back online you end up needing to checkout stuff as a guess and it will also cause your integrated source control settings to get messed up it is very kludgy and annoying.

Well today I ran into a bug in TFS integrated source control and looked it up on the MSDN forums to see what the answer was. I had a situation where everytime I opened my TFS bound project it would be offline and I would have to rebind to the source control server every single time. Verrry annoying. Well after reading on the forums I found out that integrated projects actually have an “offline” mode built in and by right clicking on an offline solution node in the solution explorer tree you can select the “Go Online” command which will reconnect you to the server. What’s cool is that it actually keeps track of your offline edits, adds and deletes and will prompt you to check out the items when you go online! This is really cool, it effectively solves the offline problem of TFS integrated source control. Now I’d say SVN only has one advantage.

Of course in Visual Studio 2008 pre SP1 there is a bug here, and if I had some feedback for the TFS team I would reccommend that they either automatically “Go Online” when a bound solution is opened and the machine is connected or have some sort of icon somewhere to attract attention to the fact that this feature even exists. I have a feeling it’s been there for a while but I simply didn’t know about it. Maybe give the solution node a “disconnected” icon? Maybe keep all of the regular source control icons still? Something here is a little unintuitive.

So the tip of the day is if you’re working on your laptop with a TFS project and you suddenly go offline, don’t worry! Next time you’re online just right click your solution and select “Go Online” and you’re back in business.