/** * @return string */ public function avatar() { $avatar = $this->wrappedObject->avatar; // Empty? Default avatar if (empty($avatar)) { return asset('images/avatar.png'); } elseif (filter_var($avatar, FILTER_VALIDATE_URL) !== false) { return $avatar; } elseif (filter_var($avatar, FILTER_VALIDATE_EMAIL) !== false) { return $this->gravatarGenerator->setDefault(asset('images/avatar.png'))->getGravatar($avatar); } elseif (file_exists(public_path("uploads/avatars/{$avatar}"))) { return asset("uploads/avatars/{$avatar}"); } else { return asset('images/avatar.png'); } }
public function testSetRatingSecure() { $email = '*****@*****.**'; $emailHash = md5($email); $rating = 'pg'; $generator = new Generator(); $generator->setEmail($email); $generator->setRating($rating); $generator->setSecure(true); $expected = "https://secure.gravatar.com/avatar/{$emailHash}.png?s=80&d=mm&rating={$rating}"; $this->assertEquals($expected, $generator->getGravatar()); }