story creation and validation with tests