SCXML Test Plan Coverage

Now that I have finished my implementation report, running every mandatory test that I support, I thought I'd share updated code coverage results for the main runtime.

https://gist.github.com/anonymous/c81c0275212944ad9cbf

You can ignore any lines with ****0 at the beginning that relate to <invoke> or <send> to an external target. These tests were skipped, and thus not exercised in the algorithm. However, there is one interesting takeaway:

The isInFinalState() function only ever tests compound states, never any parallel states or atomic states. (Lines 430-433.) We should add SCXML tests that exercise this functionality. I guess that this means that we have no test for <final> states as descendants of a <parallel>? Or is it algorithmically impossible to reach these code branches (in which case the implementation of isInFinalState could be simplified)?

(The 0 hits on line 442 of getTransitionDomain() is, I now see, an implementation flaw on my part (testing for nil instead of empty set).)


--
(-, /\ \/ / /\/

Received on Monday, 30 June 2014 20:57:25 UTC