chapter 10 with tests gemfile