0
Fork 0
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 commit 07f8c6efbb.

Revert "Remove unused unit test file"

This reverts commit f1798119d3.
This commit is contained in:
Sam Lord 2021-11-17 10:57:57 +00:00
parent d4e0ae14f1
commit 0692ddf57d
5 changed files with 73 additions and 9 deletions

View file

@ -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')
};

View 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);
};

View file

@ -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",

View file

@ -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();
});
});
});
});

View file

@ -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"