discourse/app/jobs
Blake Erickson 67dec38f31 FIX: Gravatar download attempt if user is missing their email
It is possible that a user could exist without an email, if so we should
not enqueue a job to download their gravatar.

This commit resolves this error that can occur:

```
Job exception: undefined method `email' for nil:NilClass
/var/www/discourse/app/models/user.rb:1204:in `email'
/var/www/discourse/app/jobs/regular/update_gravatar.rb:12:in `execute'
```

This commit also fixes the original spec which actually was wrong. The
job never enqueued in the original spec and so the gravatar was never
actually updated and the test was checking if the two values were the
same, but they were both null and never updated, so of course they were
the same!

A new test has also been added to make sure the gravatar job isn't
enqueued when a user's email is missing.
2020-09-02 20:19:46 -06:00
..
concerns DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
onceoff FEATURE: Remove deprecated uploads url site settings. 2020-06-22 14:32:29 +08:00
regular FIX: Gravatar download attempt if user is missing their email 2020-09-02 20:19:46 -06:00
scheduled DEV: Require scheduled job in development to avoid loading file twice. 2020-09-01 10:14:40 +08:00
base.rb Update rubocop to 2.3.1. 2020-07-24 17:19:21 +08:00