public void Scenario(Subject subject, Action action) { "Given an aggregate root with a valid memento implementation" .f(() => subject = new Subject { Name = "name", Value = "value" }); "When using the model assertions to validate the memento" .f(() => action = () => ModelValidator.HasValidMemento(subject)); "Then the action should throw" .f(() => action.ShouldThrow <Exception>()); }