ikeough/Dynamo — pull request #851 by Benglin (2013-11-27 09:02:12+00:00)
Title: Fix: https://github.com/ikeough/Dynamo/issues/832

Background
==========
This commit is meant to fix the following defect reported by a user:

https://github.com/ikeough/Dynamo/issues/832

An empty cell in worksheet causes a 'null' **WatchNode** to be generated in **Watch** node. Apparently **VirtualizingStackPanel**, which is what **Watch** node is using, does not work well with recycling view for 'null' values. It causes exception in virtualizing stack panel, resulting the entire WPF visual tree to become extremely unstable (even Snoop tool is not able to attach to it, and nothing else worked).

The fix, naturally is to detect for the case when **Watch.Process** returns a 'null' value, and create an empty **WatchNode** for the caller.

Unit testing
============
* All existing test cases are passing (except the known failure **VisualizationManagerUITests**)
* Added new test case **Defect_MAGN_883**, although it does not cause the issue as in real use case. The test case is now added as a reference point, and I have left a TODO comment in there for a revisit later on.