1
0
mirror of https://github.com/redis/node-redis.git synced 2025-08-06 02:15:48 +03:00

fix EXPIREAT spec

This commit is contained in:
dovi
2023-05-02 20:13:27 -04:00
parent 73994f243b
commit fe1ae49a40
3 changed files with 36 additions and 30 deletions

View File

@@ -1,36 +1,39 @@
import { strict as assert } from 'assert'; import { strict as assert } from 'assert';
import testUtils, { GLOBAL } from '../test-utils'; import testUtils, { GLOBAL } from '../test-utils';
import { transformArguments } from './EXPIREAT'; import EXPIREAT from './EXPIREAT';
describe('EXPIREAT', () => { describe('EXPIREAT', () => {
describe('transformArguments', () => { describe('transformArguments', () => {
it('number', () => { it('number', () => {
assert.deepEqual( assert.deepEqual(
transformArguments('key', 1), EXPIREAT.transformArguments('key', 1),
['EXPIREAT', 'key', '1'] ['EXPIREAT', 'key', '1']
); );
});
it('date', () => {
const d = new Date();
assert.deepEqual(
transformArguments('key', d),
['EXPIREAT', 'key', Math.floor(d.getTime() / 1000).toString()]
);
});
it('with set option', () => {
assert.deepEqual(
transformArguments('key', 1, 'GT'),
['EXPIREAT', 'key', '1', 'GT']
);
});
}); });
testUtils.testWithClient('client.expireAt', async client => { it('date', () => {
assert.equal( const d = new Date();
await client.expireAt('key', 1), assert.deepEqual(
false EXPIREAT.transformArguments('key', d),
); ['EXPIREAT', 'key', Math.floor(d.getTime() / 1000).toString()]
}, GLOBAL.SERVERS.OPEN); );
});
it('with set option', () => {
assert.deepEqual(
EXPIREAT.transformArguments('key', 1, 'GT'),
['EXPIREAT', 'key', '1', 'GT']
);
});
});
testUtils.testAll('expireAt', async client => {
assert.equal(
await client.expireAt('key', 1),
false
);
}, {
client: GLOBAL.SERVERS.OPEN,
cluster: GLOBAL.CLUSTERS.OPEN
});
}); });

View File

@@ -9,7 +9,7 @@ export default {
timestamp: number | Date, timestamp: number | Date,
mode?: 'NX' | 'XX' | 'GT' | 'LT' mode?: 'NX' | 'XX' | 'GT' | 'LT'
) { ) {
const args = ['EXPIRE', key, transformEXAT(timestamp)]; const args = ['EXPIREAT', key, transformEXAT(timestamp)];
if (mode) { if (mode) {
args.push(mode); args.push(mode);

View File

@@ -97,6 +97,7 @@ import MSETNX from './MSETNX';
import PERSIST from './PERSIST'; import PERSIST from './PERSIST';
import EXISTS from './EXISTS'; import EXISTS from './EXISTS';
import EXPIRE from './EXPIRE'; import EXPIRE from './EXPIRE';
import EXPIREAT from './EXPIREAT';
import PEXPIRE from './PEXPIRE'; import PEXPIRE from './PEXPIRE';
import PEXPIREAT from './PEXPIREAT'; import PEXPIREAT from './PEXPIREAT';
import PEXPIRETIME from './PEXPIRETIME'; import PEXPIRETIME from './PEXPIRETIME';
@@ -381,6 +382,8 @@ export default {
exists: EXISTS, exists: EXISTS,
EXPIRE, EXPIRE,
expire: EXPIRE, expire: EXPIRE,
EXPIREAT,
expireAt: EXPIREAT,
PEXPIRE, PEXPIRE,
pExpire: PEXPIRE, pExpire: PEXPIRE,
PEXPIREAT, PEXPIREAT,