Sha256: b786ffa6b222dc4e470ea3f1fb6198d3c4a72bf949a641875fc06f20df4f44da

Contents?: true

Size: 1.68 KB

Versions: 3

Compression:

Stored size: 1.68 KB

Contents

import BucketCache from '../../lib/system/cache';
import { moduleFor, AbstractTestCase } from 'internal-test-helpers';

moduleFor(
  'BucketCache',
  class extends AbstractTestCase {
    constructor() {
      super();

      this.cache = new BucketCache();
    }

    ['@test has - returns false when bucket is not in cache'](assert) {
      assert.strictEqual(this.cache.has('foo'), false);
      assert.strictEqual(this.cache.has('constructor'), false);
    }

    ['@test has - returns true when bucket is in cache'](assert) {
      let token = {};

      this.cache.stash('foo', 'bar', token);
      this.cache.stash('constructor', 'bar', token);

      assert.strictEqual(this.cache.has('foo'), true);
      assert.strictEqual(this.cache.has('constructor'), true);
    }

    ['@test lookup - returns stashed value if key does exist in bucket'](assert) {
      let token = {};
      let defaultValue = {};

      this.cache.stash('foo', 'bar', token);

      assert.strictEqual(this.cache.lookup('foo', 'bar', defaultValue), token);
    }

    ['@test lookup - returns default value if key does not exist in bucket'](assert) {
      let token = {};
      let defaultValue = {};

      this.cache.stash('foo', 'bar', token);

      assert.strictEqual(this.cache.lookup('foo', 'boo', defaultValue), defaultValue);
      assert.strictEqual(this.cache.lookup('foo', 'constructor', defaultValue), defaultValue);
    }

    ['@test lookup - returns default value if bucket does not exist'](assert) {
      let defaultValue = {};

      assert.strictEqual(this.cache.lookup('boo', 'bar', defaultValue), defaultValue);
      assert.strictEqual(this.cache.lookup('constructor', 'bar', defaultValue), defaultValue);
    }
  }
);

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
discourse-ember-source-3.6.0.0 dist/es/@ember/-internals/routing/tests/system/cache_test.js
discourse-ember-source-3.5.1.1 dist/es/ember-routing/tests/system/cache_test.js
discourse-ember-source-3.5.1.0 dist/dist/es/ember-routing/tests/system/cache_test.js