According to the spec a terminate node in the subprocess aborts the execution in the subprocess. "Then the process continues on the normal flow" out of the subprocess [Bruce Silver, BPMN Method & Style, p. 82]
The spec says:
Sub-process level end events
For a "terminate" End Event, the Sub-Process is abnormally terminated. In case of a multi-instance Sub-Process, only the affected instance is terminated—no other ongoing Sub-Process instances or higher-level Sub-Process or Process instances are affected.
The attached unit test shows the incorrect implementation. In the test case the node "AfterSubprocess" should be invoked, but it isn't when the end event is an terminating end event.