cli: rails g model User name:string email:string
schema.rb: cli: rake db:migrate
user_spec.rb: changed content to match that of Hartl listing 6.5
user_spec.rb: added specs to test name validation
user.rb: added validation for name presence
user_spec.rb: added specs to test email validation
user.rb: added validation for email presence
user_spec.rb: added specs to test validation of name length
user.rb: added validation for name length
user_spec.rb: added tests for validation of email format
user.rb: added validation for email format
user_spec.rb: added spec to test for email uniqueness
user.rb: added validation for email uniqueness
cli: rails g migration add_index_to_users_email
schema.rb: cli: rake db:migrate
Gemfile: added 3.0.1 bcrypt-ruby gem
Gemfile.lock: cli: bundle install
user_spec.rb: test that User objects have :password_digest column
cli: rails g migration add_password_digest_to_users password_digest:string
schema.rb: cli: rake db:migrate