public IEnumerable <CallChain> IterateNodes() { foreach (var callChain in Setups) { foreach (var item in callChain.IterateNodes()) { yield return(item); } } if (TestChain != null) { foreach (var item in TestChain.IterateNodes()) { yield return(item); } } foreach (var callChain in Teardowns) { foreach (var item in callChain.IterateNodes()) { yield return(item); } } }