mirror of
https://github.com/TryGhost/Ghost.git
synced 2025-04-08 02:52:39 -05:00
Revert "Replace update user last seen middleware with package version"
This reverts commit07f8c6efbb
. Revert "Remove unused unit test file" This reverts commitf1798119d3
.
This commit is contained in:
parent
d4e0ae14f1
commit
0692ddf57d
5 changed files with 73 additions and 9 deletions
|
@ -1,7 +1,7 @@
|
|||
module.exports = {
|
||||
cors: require('./cors'),
|
||||
normalizeImage: require('./normalize-image'),
|
||||
updateUserLastSeen: require('@tryghost/mw-update-user-last-seen'),
|
||||
updateUserLastSeen: require('./update-user-last-seen'),
|
||||
upload: require('./upload'),
|
||||
versionMatch: require('./version-match')
|
||||
};
|
||||
|
|
15
core/server/web/api/middleware/update-user-last-seen.js
Normal file
15
core/server/web/api/middleware/update-user-last-seen.js
Normal file
|
@ -0,0 +1,15 @@
|
|||
const constants = require('@tryghost/constants');
|
||||
|
||||
module.exports = function updateUserLastSeenMiddleware(req, res, next) {
|
||||
if (!req.user) {
|
||||
return next();
|
||||
}
|
||||
|
||||
if (Date.now() - req.user.get('last_seen') < constants.ONE_HOUR_MS) {
|
||||
return next();
|
||||
}
|
||||
|
||||
req.user.updateLastSeen().then(() => {
|
||||
next();
|
||||
}, next);
|
||||
};
|
|
@ -87,7 +87,6 @@
|
|||
"@tryghost/metrics": "1.0.0",
|
||||
"@tryghost/minifier": "0.1.0",
|
||||
"@tryghost/mw-session-from-token": "0.1.26",
|
||||
"@tryghost/mw-update-user-last-seen": "0.1.1",
|
||||
"@tryghost/nodemailer": "0.3.6",
|
||||
"@tryghost/package-json": "1.0.6",
|
||||
"@tryghost/promise": "0.1.13",
|
||||
|
|
|
@ -0,0 +1,57 @@
|
|||
const should = require('should');
|
||||
const sinon = require('sinon');
|
||||
const constants = require('@tryghost/constants');
|
||||
const updateUserLastSeenMiddleware = require('../../../../../../core/server/web/api/middleware/update-user-last-seen');
|
||||
|
||||
describe('updateUserLastSeenMiddleware', function () {
|
||||
afterEach(function () {
|
||||
sinon.restore();
|
||||
});
|
||||
|
||||
it('calls next with no error if there is no user on the request', function (done) {
|
||||
updateUserLastSeenMiddleware({}, {}, function next(err) {
|
||||
should.equal(err, undefined);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('calls next with no error if the current last_seen is less than an hour before now', function (done) {
|
||||
const fakeLastSeen = new Date();
|
||||
const fakeUser = {
|
||||
get: sinon.stub().withArgs('last_seen').returns(fakeLastSeen)
|
||||
};
|
||||
updateUserLastSeenMiddleware({user: fakeUser}, {}, function next(err) {
|
||||
should.equal(err, undefined);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
describe('when the last_seen is longer than an hour ago', function () {
|
||||
it('calls updateLastSeen on the req.user, calling next with nothing if success', function (done) {
|
||||
const fakeLastSeen = new Date(Date.now() - constants.ONE_HOURS_MS);
|
||||
const fakeUser = {
|
||||
get: sinon.stub().withArgs('last_seen').returns(fakeLastSeen),
|
||||
updateLastSeen: sinon.stub().resolves()
|
||||
};
|
||||
updateUserLastSeenMiddleware({user: fakeUser}, {}, function next(err) {
|
||||
should.equal(err, undefined);
|
||||
should.equal(fakeUser.updateLastSeen.callCount, 1);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('calls updateLastSeen on the req.user, calling next with err if error', function (done) {
|
||||
const fakeLastSeen = new Date(Date.now() - constants.ONE_HOURS_MS);
|
||||
const fakeError = new Error('gonna need a bigger boat');
|
||||
const fakeUser = {
|
||||
get: sinon.stub().withArgs('last_seen').returns(fakeLastSeen),
|
||||
updateLastSeen: sinon.stub().rejects(fakeError)
|
||||
};
|
||||
updateUserLastSeenMiddleware({user: fakeUser}, {}, function next(err) {
|
||||
should.equal(err, fakeError);
|
||||
should.equal(fakeUser.updateLastSeen.callCount, 1);
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
|
@ -1631,13 +1631,6 @@
|
|||
resolved "https://registry.yarnpkg.com/@tryghost/mw-session-from-token/-/mw-session-from-token-0.1.26.tgz#41c6acca153cf43e1b4826c75232c56d51d0f1f0"
|
||||
integrity sha512-VEcOSKK3FWKXKZVY6kASX+O7Gv3W2dTPskgcbp0BTILhCjg+hTFsYBe23v6ukroaEjJ7WxWVrTZyjkkipiw3QA==
|
||||
|
||||
"@tryghost/mw-update-user-last-seen@0.1.1":
|
||||
version "0.1.1"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/mw-update-user-last-seen/-/mw-update-user-last-seen-0.1.1.tgz#684cc24121363637725c1fb8499b12c38130899c"
|
||||
integrity sha512-empnt6wwdIRxG8B5t2K5CjG2QltGyzKrr8HCSNy4bh0xsMdQiirM3Mu7akEay/Sz32CLePOfASaoYFWvmC2YWg==
|
||||
dependencies:
|
||||
"@tryghost/constants" "1.0.0"
|
||||
|
||||
"@tryghost/nodemailer@0.3.6":
|
||||
version "0.3.6"
|
||||
resolved "https://registry.yarnpkg.com/@tryghost/nodemailer/-/nodemailer-0.3.6.tgz#e882f3a103bb30c0357e79d455bca3a402999bea"
|
||||
|
|
Loading…
Add table
Reference in a new issue