示例#1
0
  it('returns the count after deleting a single key', () => {
    const orchard = new Orchard();

    const key = uuid.v4();
    const value = { x: uuid.v4() };

    return orchard(key, value).then(() => orchard.del(key))
    .then((out) => {
      expect(out).to.equal(1);
    });
  });
示例#2
0
  it('deletes a single key', () => {
    const orchard = new Orchard();

    const key = uuid.v4();
    const value = { x: uuid.v4() };

    return orchard(key, value).then(() => orchard.del(key))
    .then(() => {
      expect(redisClient.del.callCount).to.equal(1);

      const args = redisClient.del.getCall(0).args;

      expect(args[0]).to.equal(key);
    });
  });
示例#3
0
  it('deletes multiple keys', () => {
    const orchard = new Orchard();

    const keyA = `k:${uuid.v6()}`;
    const keyB = `k:${uuid.v6()}`;

    const value = { x: uuid.v4() };

    return Promise.all([
      orchard(keyA, value),
      orchard(keyB, value)
    ])
    .then(() => orchard.del('k:*'))
    .then(() => {
      expect(redisClient.del.callCount).to.equal(2);

      const argsA = redisClient.del.getCall(0).args;

      expect(argsA[0]).to.equal(keyA);

      const argsB = redisClient.del.getCall(1).args;

      expect(argsB[0]).to.equal(keyB);
    });
  });
示例#4
0
  it('supports a "prefix" option', () => {
    const prefix = uuid.v4();

    const orchard = new Orchard({ prefix });

    const key = uuid.v4();
    const value = [uuid.v4(), uuid.v4()];

    return orchard(key, value).then(() => orchard.del(key))
    .then(() => {
      expect(redisClient.del.callCount).to.equal(1);

      const args = redisClient.del.getCall(0).args;

      expect(args[0]).to.equal(`${prefix}:${key}`);
    });
  });
示例#5
0
  it('accepts a "scanCount" option', () => {
    const orchard = new Orchard({ scanCount: 1 });

    const keyA = `k:${uuid.v6()}`;
    const keyB = `k:${uuid.v6()}`;

    const value = { x: uuid.v4() };

    return Promise.all([
      orchard(keyA, value),
      orchard(keyB, value)
    ])
    .then(() => orchard.del('k:*'))
    .then(() => {
      expect(redisClient.scan.callCount).to.equal(2);
    });
  });
示例#6
0
  it('returns the count after deleting a single key', () => {
    const orchard = new Orchard();

    const keyA = `k:${uuid.v6()}`;
    const keyB = `k:${uuid.v6()}`;

    const value = { x: uuid.v4() };

    return Promise.all([
      orchard(keyA, value),
      orchard(keyB, value)
    ])
    .then(() => orchard.del('k:*'))
    .then((out) => {
      expect(out).to.equal(2);
    });
  });