Generate user model
Accept user model migration
Add testing for the :name and :email attributes
Modify user model
Write name and email initial tests
Write a test for name length validation
Add a length validation for the name attribute
Write tests for email format validation
Add validating the email format with a regular expression
Write a test for the rejection of duplicate email addresses
Add validating the uniqueness of email addresses
A test for the rejection of duplicate email addresses, insensitive to case
Validating the uniqueness of email addresses, ignoring case
Generate add_index_to_users_email migration
Write the migration for enforcing email uniqueness
Accept add_index_to_users_email migration
Ensuring email uniqueness by downcasing the email attribute
Modify user_spec test to support password-digest
Genereate migration add_password_digest_to_users
Accept add_password_digest_to_users migration