fix: return null if field does not exist

v1.18.x
Barış Soner Uşaklı 5 years ago
parent 14e7866745
commit e72a29b3fd

@ -11,7 +11,6 @@ Settings.get = async function (hash) {
const data = await db.getObject('settings:' + hash) || {}; const data = await db.getObject('settings:' + hash) || {};
const sortedLists = await db.getSetMembers('settings:' + hash + ':sorted-lists'); const sortedLists = await db.getSetMembers('settings:' + hash + ':sorted-lists');
await Promise.all(sortedLists.map(async function (list) { await Promise.all(sortedLists.map(async function (list) {
const members = await db.getSortedSetRange('settings:' + hash + ':sorted-list:' + list, 0, -1) || []; const members = await db.getSortedSetRange('settings:' + hash + ':sorted-list:' + list, 0, -1) || [];
const keys = []; const keys = [];
@ -32,7 +31,7 @@ Settings.get = async function (hash) {
Settings.getOne = async function (hash, field) { Settings.getOne = async function (hash, field) {
const data = await Settings.get(hash); const data = await Settings.get(hash);
return data[field]; return data[field] !== undefined ? data[field] : null;
}; };
Settings.set = async function (hash, values, quiet) { Settings.set = async function (hash, values, quiet) {

@ -94,6 +94,11 @@ describe('meta', function () {
}); });
}); });
it('should return null if setting field does not exist', async function () {
const val = await meta.settings.getOne('some:hash', 'does not exist');
assert.strictEqual(val, null);
});
const someList = [ const someList = [
{ name: 'andrew', status: 'best' }, { name: 'andrew', status: 'best' },
{ name: 'baris', status: 'wurst' }, { name: 'baris', status: 'wurst' },

Loading…
Cancel
Save