/
gravatar.test.js
44 lines (37 loc) · 2.03 KB
/
gravatar.test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
var should = require('should')
, url = require('url')
, gravatar = require('../lib/gravatar');
describe('gravatar', function() {
var baseNoProtocolURL = "//www.gravatar.com/avatar/";
var baseUnsecureURL = "http://www.gravatar.com/avatar/";
var baseSecureURL = "https://s.gravatar.com/avatar/";
it('should gererate correct uri given an email', function() {
gravatar.url('emerleite@gmail.com').should.be.equal(baseNoProtocolURL + "93e9084aa289b7f1f5e4ab6716a56c3b");
gravatar.url('emerleite@yahoo.com.br').should.be.equal(baseNoProtocolURL + "6c47672b0d58bd6aae4fa70920cb3ee4");
});
it('should generate same uri ignoring case', function() {
gravatar.url('EMERLEITE@gmAil.com').should.be.equal(baseNoProtocolURL + "93e9084aa289b7f1f5e4ab6716a56c3b");
gravatar.url('emerleite@YAHOO.com.BR').should.be.equal(baseNoProtocolURL + "6c47672b0d58bd6aae4fa70920cb3ee4");
});
it('should generate uri with user passed parameters', function() {
var gravatarURL = gravatar.url('emerleite@gmail.com', { s: '200', f: 'y', r: 'g', d: '404'});
var queryString = url.parse(gravatarURL, true).query;
queryString.s.should.equal('200');
queryString.f.should.equal('y');
queryString.r.should.equal('g');
queryString.d.should.equal('404');
});
it('should force http protocol on gravatar uri generation', function() {
gravatar.url('emerleite@gmail.com', {}, false).should.be.equal(baseUnsecureURL + "93e9084aa289b7f1f5e4ab6716a56c3b");
gravatar.url('emerleite@yahoo.com.br', {}, false).should.be.equal(baseUnsecureURL + "6c47672b0d58bd6aae4fa70920cb3ee4");
});
it('should force https protocol on gravatar uri generation', function() {
var gravatarURL = gravatar.url('emerleite@gmail.com', {}, true);
gravatar.url('emerleite@gmail.com', {}, true).should.equal(baseSecureURL + "93e9084aa289b7f1f5e4ab6716a56c3b");
});
it('should handle falsey values for the email property', function () {
gravatar.url(null).should.be.ok;
gravatar.url(undefined).should.be.ok;
gravatar.url('').should.be.ok;
});
});