mirror of
https://github.com/discourse/discourse.git
synced 2025-05-21 18:12:32 +08:00
Never render an avatar img if we know the username is invalid.
This commit is contained in:
@ -110,3 +110,35 @@ test("isAnImage", function() {
|
||||
ok(!utils.isAnImage("http://foo.bar/path/to/file.txt"));
|
||||
ok(!utils.isAnImage(""));
|
||||
});
|
||||
|
||||
test("avatarUrl", function() {
|
||||
blank(Discourse.Utilities.avatarUrl('', 'tiny'), "no avatar url returns blank");
|
||||
blank(Discourse.Utilities.avatarUrl('this is not a username', 'tiny'), "invalid username returns blank");
|
||||
|
||||
equal(Discourse.Utilities.avatarUrl('eviltrout', 'tiny'), "/users/eviltrout/avatar/20?__ws=", "simple avatar url");
|
||||
equal(Discourse.Utilities.avatarUrl('eviltrout', 'large'), "/users/eviltrout/avatar/45?__ws=", "different size");
|
||||
equal(Discourse.Utilities.avatarUrl('EvilTrout', 'tiny'), "/users/eviltrout/avatar/20?__ws=", "lowercases username");
|
||||
equal(Discourse.Utilities.avatarUrl('eviltrout', 'tiny', 'test{size}'), "test20", "replaces the size in a template");
|
||||
});
|
||||
|
||||
test("avatarUrl with a baseUrl", function() {
|
||||
Discourse.BaseUrl = "http://try.discourse.org";
|
||||
equal(Discourse.Utilities.avatarUrl('eviltrout', 'tiny'), "/users/eviltrout/avatar/20?__ws=http%3A%2F%2Ftry.discourse.org", "simple avatar url");
|
||||
});
|
||||
|
||||
test("avatarImg", function() {
|
||||
equal(Discourse.Utilities.avatarImg({username: 'eviltrout', size: 'tiny'}),
|
||||
"<img width='20' height='20' src='/users/eviltrout/avatar/20?__ws=' class='avatar'>",
|
||||
"it returns the avatar html");
|
||||
|
||||
equal(Discourse.Utilities.avatarImg({username: 'eviltrout', size: 'tiny', title: 'evilest trout'}),
|
||||
"<img width='20' height='20' src='/users/eviltrout/avatar/20?__ws=' class='avatar' title='evilest trout'>",
|
||||
"it adds a title if supplied");
|
||||
|
||||
equal(Discourse.Utilities.avatarImg({username: 'eviltrout', size: 'tiny', extraClasses: 'evil fish'}),
|
||||
"<img width='20' height='20' src='/users/eviltrout/avatar/20?__ws=' class='avatar evil fish'>",
|
||||
"it adds extra classes if supplied");
|
||||
|
||||
blank(Discourse.Utilities.avatarImg({username: 'weird*username', size: 'tiny'}),
|
||||
"it doesn't render avatars for invalid usernames");
|
||||
});
|
@ -81,5 +81,6 @@ QUnit.testStart(function() {
|
||||
// Allow our tests to change site settings and have them reset before the next test
|
||||
Discourse.SiteSettings = jQuery.extend(true, {}, Discourse.SiteSettingsOriginal);
|
||||
Discourse.BaseUri = "/";
|
||||
Discourse.BaseUrl = "";
|
||||
})
|
||||
|
||||
|
Reference in New Issue
Block a user