1. Implemented a "RecordedTests" unit test case running recorded commands from file
2. Updated "DynamoViewModel.OnPlaybackTimerTick" method to shut Dynamo down when done
3. Updated "AskUserToSaveWorkspacesOrCancel" to not ask to save workspace in playback mode
1. Introduced "DynamoView.MakeSandboxForUnitTest" method for use in "RecordedTests"
2. Added verification codes in "RecordedTests.TestCreateNodesAndConnectors" test case
Reduced playback timer interval from 500ms to 20ms (5 commands per second)
1. Introduced "AutomationSettings" class to encapsulate automation stuff from DynamoViewModel
2. Refactored all playback related codes into "AutomationSettings" class
Folded recording functionality from "DynamoViewModel" into "AutomationSettings"
Moved "AutomationSettings" class (and referenced namespaces) out to a separate file
1. Introduced "PauseAfterPlayback" and "ExitAfterPlayback" properties to "AutomationSettings".
2. Retrofit these attributes back into "CreateNodesAndConnectors.xml" (although it's optional).
Updated "AutomationSettings" to honor both "ExitAfterPlayback" and "PauseAfterPlayback" attributes
Merge branch 'master' into Automation
1. Updated "DynamoView.MakeSandboxForUnitTest" to return the "DynamoView" for handling in test case
2. Added "RecordedTests.Exception" data member to track exception from view
3. Updated "OnShutdownTimerTick" to call "Dispatcher.BeginInvokeShutdown" to close the main window
Merge branch 'master' into Automation
1. Updated "AutomationSettings.BeginCommandPlayback" to take "System.Windows.Window" as an argument
2. Instead of shutting down the dispatcher (and fail subsequent test), each playback closes the main window
3. We now only start command playback when Dynamo window (and all assemblies) is fully loaded
Replaced the unused "Exception" data member in "RecordedTests" with "WorkspaceModel"
Switch to using a shared resource dictionary.
Merge branch 'master' into Automation
Merge branch 'master' of github.com:ikeough/Dynamo
Dispatch loading timer with Loaded priority so we get render time.
Fix binding issue with zoom control visibility.
Remove drop shadow.
Remove layout update callback to calculate port position.