ForExpression no longer executes the body if the test fails initially.

ForExpression no longer executes the body if the test fails initially.
Added a unit test to cover this scenario.