const auth = require('../lib/Auth'); const Config = require('../lib/Config'); const rest = require('../lib/rest'); describe('Enable single schema cache', () => { beforeEach(done => { reconfigureServer({ enableSingleSchemaCache: true, schemaCacheTTL: 30000, }).then(() => { done(); }); }); it('can perform multiple create and query operations', done => { let config = fakeRequestForConfig(); let nobody = auth.nobody(config); rest .create(config, nobody, 'Foo', { type: 1 }) .then(() => { config = fakeRequestForConfig(); nobody = auth.nobody(config); return rest.create(config, nobody, 'Foo', { type: 2 }); }) .then(() => { config = fakeRequestForConfig(); nobody = auth.nobody(config); return rest.create(config, nobody, 'Bar'); }) .then(() => { config = fakeRequestForConfig(); nobody = auth.nobody(config); return rest.find(config, nobody, 'Bar', { type: 1 }); }) .then( () => { fail('Should throw error'); done(); }, error => { config = fakeRequestForConfig(); nobody = auth.nobody(config); expect(error).toBeDefined(); return rest.find(config, nobody, 'Foo', { type: 1 }); } ) .then(response => { config = fakeRequestForConfig(); nobody = auth.nobody(config); expect(response.results.length).toEqual(1); done(); }); }); }); const fakeRequestForConfig = function () { return Config.get('test'); };