am running a test with mailers within Ruby on Rails, and I am getting the 
following errors: 

*********-C02MGBVJFD57:myapp ************$ bundle exec rake test:mailers
# Running:

EE
Finished in 0.110500s, 18.0995 runs/s, 0.0000 assertions/s.

  1) 
Error:UserMailerTest#test_account_activation:ActiveRecord::StatementInvalid: 
Mysql2::Error: Incorrect datetime value: '2014-12-18 01:07:49 UTC' for column 
'activated_at' at row 1: INSERT INTO `users` (`name`, `email`, 
`password_digest`, `admin`, `activated`, `activated_at`, `created_at`, 
`updated_at`, `id`) VALUES ('Michael Example', 'mich...@example.com', 
'$2a$04$hz6pvZctid6gZEuv0.qAe.0mEfbEjxso9GrXwC3yHRhIThIJ7Vx5m', 1, 1, 
'2014-12-18 01:07:49 UTC', '2014-12-18 01:07:49', '2014-12-18 01:07:49', 
762146111)



  2) Error:UserMailerTest#test_password_reset:ActiveRecord::StatementInvalid: 
Mysql2::Error: Incorrect datetime value: '2014-12-18 01:07:49 UTC' for column 
'activated_at' at row 1: INSERT INTO `users` (`name`, `email`, 
`password_digest`, `admin`, `activated`, `activated_at`, `created_at`, 
`updated_at`, `id`) VALUES ('Michael Example', 'mich...@example.com', 
'$2a$04$XTAWn5P9kikgOXqxQgiJqOjP027p4HnucHZ6pth2aaLwolaFcehsm', 1, 1, 
'2014-12-18 01:07:49 UTC', '2014-12-18 01:07:49', '2014-12-18 01:07:49', 
762146111)

2 runs, 0 assertions, 0 failures, 2 errors, 0 skips

When I check my fixtures users.yml file, I see that I am using the time 
zone ruby stamp:

michael:
  name: Michael Example
  email: mich...@example.com
  password_digest: <%= User.digest('password') %>
  admin: true
  activated: true
  activated_at: <%= Time.zone.now %>

archer:
  name: Sterling Archer
  email: duch...@example.gov
  password_digest: <%= User.digest('password') %>
  activated: true
  activated_at: <%= Time.zone.now %>

lana:
  name: Lana Kane
  email: ha...@example.gov
  password_digest: <%= User.digest('password') %>
  activated: true
  activated_at: <%= Time.zone.now %>

mallory:
  name: Mallory Archer
  email: b...@example.gov
  password_digest: <%= User.digest('password') %>
  activated: true
  activated_at: <%= Time.zone.now %>
<% 30.times do |n| %>
user_<%= n %>:
  name:  <%= "User #{n}" %>
  email: <%= "user-#{n}@example.com" %>
  password_digest: <%= User.digest('password') %>
  activated: true
  activated_at: <%= Time.zone.now %><% end %>  

and my db/seeds.rb file looks like so:

User.create!(name:  "Example User",
             email: "exam...@railstutorial.org",
             password:              "foobar",
             password_confirmation: "foobar",
             admin: true,
             activated: true,
             activated_at: Time.zone.now)
99.times do |n|
  name  = Faker::Name.name
  email = "example-#{n+1}@railstutorial.org"
  password = "password"
  User.create!(name:  name,
               email: email,
               password:              password,
               password_confirmation: password,
               activated: true,
               activated_at: Time.zone.now)end

So I should be using the right time form. 

Here is the test itself:

user_mailer_test.rb:

require 'test_helper'

class UserMailerTest < ActionMailer::TestCase

  test "account_activation" do
    mail = UserMailer.account_activation
    assert_equal "Account activation", mail.subject
    assert_equal ["t...@example.org"], mail.to
    assert_equal ["f...@example.com"], mail.from
    assert_match "Hi", mail.body.encoded
  end

  test "password_reset" do
    mail = UserMailer.password_reset
    assert_equal "Password reset", mail.subject
    assert_equal ["t...@example.org"], mail.to
    assert_equal ["f...@example.com"], mail.from
    assert_match "Hi", mail.body.encoded
  end
end

Is there something I am doing wrong? Thank you for your help. 

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/7c779d06-608c-46ac-ad27-15bda1365bf1%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to