You've already forked node-redis
mirror of
https://github.com/redis/node-redis.git
synced 2025-08-04 15:02:09 +03:00
Standard is not as up to date and still uses a old eslint version. Instead, use the airbnb default with a couple of modifications. All required changes are included.
59 lines
1.8 KiB
JavaScript
59 lines
1.8 KiB
JavaScript
'use strict'
|
|
|
|
const assert = require('assert')
|
|
const config = require('../lib/config')
|
|
const helper = require('../helper')
|
|
|
|
const { redis } = config
|
|
|
|
describe('The \'sinter\' method', () => {
|
|
helper.allTests((ip, args) => {
|
|
describe(`using ${ip}`, () => {
|
|
let client
|
|
|
|
beforeEach(() => {
|
|
client = redis.createClient.apply(null, args)
|
|
return client.flushdb()
|
|
})
|
|
|
|
it('handles two sets being intersected', () => {
|
|
client.sadd('sa', 'a').then(helper.isNumber(1))
|
|
client.sadd('sa', 'b').then(helper.isNumber(1))
|
|
client.sadd('sa', 'c').then(helper.isNumber(1))
|
|
|
|
client.sadd('sb', 'b').then(helper.isNumber(1))
|
|
client.sadd('sb', 'c').then(helper.isNumber(1))
|
|
client.sadd('sb', 'd').then(helper.isNumber(1))
|
|
|
|
return client.sinter('sa', 'sb').then((intersection) => {
|
|
assert.strictEqual(intersection.length, 2)
|
|
assert.deepStrictEqual(intersection.sort(), ['b', 'c'])
|
|
})
|
|
})
|
|
|
|
it('handles three sets being intersected', () => {
|
|
client.sadd('sa', 'a').then(helper.isNumber(1))
|
|
client.sadd('sa', 'b').then(helper.isNumber(1))
|
|
client.sadd('sa', 'c').then(helper.isNumber(1))
|
|
|
|
client.sadd('sb', 'b').then(helper.isNumber(1))
|
|
client.sadd('sb', 'c').then(helper.isNumber(1))
|
|
client.sadd('sb', 'd').then(helper.isNumber(1))
|
|
|
|
client.sadd('sc', 'c').then(helper.isNumber(1))
|
|
client.sadd('sc', 'd').then(helper.isNumber(1))
|
|
client.sadd('sc', 'e').then(helper.isNumber(1))
|
|
|
|
return client.sinter('sa', 'sb', 'sc').then((intersection) => {
|
|
assert.strictEqual(intersection.length, 1)
|
|
assert.strictEqual(intersection[0], 'c')
|
|
})
|
|
})
|
|
|
|
afterEach(() => {
|
|
client.end(true)
|
|
})
|
|
})
|
|
})
|
|
})
|