create observer, mailer and tests