= Create an account record programmatically

In some scenarios you might want to create an account records programmatically,
for example in your tests.

If you're storing passwords in a separate table, you can create an account
records as follows:

  account_id = DB[:accounts].insert(
    email:     "name@example.com",
    status_id: 2, # verified
  )

  DB[:account_password_hashes].insert(
    id:            account_id,
    password_hash: BCrypt::Password.create("secret").to_s,
  )

If the password is stored in a column in the accounts table:

  account_id = DB[:accounts].insert(
    email:         "name@example.com",
    password_hash: BCrypt::Password.create("secret").to_s,
    status_id:     2, # verified
  )

If you are creating accounts in your tests, you probably want to use
the +:cost+ option, otherwise you will have very slow tests:

  account_id = DB[:accounts].insert(
    email:     "name@example.com",
    status_id: 2, # verified
  )

  DB[:account_password_hashes].insert(
    id:            account_id,
    password_hash: BCrypt::Password.create("secret", cost: BCrypt::Engine::MIN_COST).to_s,
  )
