strategy: with tests