Skip to content

Instantly share code, notes, and snippets.

@lucasraziel
Created May 13, 2022 20:33
Show Gist options
  • Save lucasraziel/286f872cedc7be5dbda3952bba49c2af to your computer and use it in GitHub Desktop.
Save lucasraziel/286f872cedc7be5dbda3952bba49c2af to your computer and use it in GitHub Desktop.
test.ts Usando NPM Package para criar uma Arquitetura Limpa - Parte 2
import { FakeCacheProvider, Data } from '../src/index';
let fakeCacheProvider: FakeCacheProvider;
describe('Tests', () => {
beforeEach(() => {
fakeCacheProvider = new FakeCacheProvider();
});
it('should be abble to add and recover value', async () => {
const data: Data<number> = {
key: 'test',
data: 1,
};
await fakeCacheProvider.save(data, 'app:');
const dataRecovered = await fakeCacheProvider.recover<number>(
'test',
'app:'
);
expect(dataRecovered).toBe(1);
});
it('should invalidate key', async () => {
const data: Data<number> = {
key: 'test',
data: 1,
};
await fakeCacheProvider.save(data, 'app:');
const dataRecovered = await fakeCacheProvider.recover<number>(
'test',
'app:'
);
expect(dataRecovered).toBe(1);
await fakeCacheProvider.invalidate('test', 'app:');
const dataRecovered2 = await fakeCacheProvider.recover<number>(
'test',
'app:'
);
expect(dataRecovered2).toBe(null);
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment