diff options
author | Shin'ya Ueoka <ueokande@i-beam.org> | 2020-04-13 20:37:36 +0900 |
---|---|---|
committer | Shin'ya Ueoka <ueokande@i-beam.org> | 2020-04-13 20:37:36 +0900 |
commit | e1dac618a8b8929f601c7ec8aca3842c5ebf9d03 (patch) | |
tree | 6a914a8243c8c02e7752a83667a54d3fa832955c /test/background/completion/impl/PrefetchAndCache.test.ts | |
parent | 685f2b7b69218b06b5bb676069e35f79c5048c9b (diff) |
Use plugin:prettier/recommended
Diffstat (limited to 'test/background/completion/impl/PrefetchAndCache.test.ts')
-rw-r--r-- | test/background/completion/impl/PrefetchAndCache.test.ts | 80 |
1 files changed, 53 insertions, 27 deletions
diff --git a/test/background/completion/impl/PrefetchAndCache.test.ts b/test/background/completion/impl/PrefetchAndCache.test.ts index 23e3879..b24dfa9 100644 --- a/test/background/completion/impl/PrefetchAndCache.test.ts +++ b/test/background/completion/impl/PrefetchAndCache.test.ts @@ -1,39 +1,39 @@ -import PrefetchAndCache, {shortKey} from "../../../../src/background/completion/impl/PrefetchAndCache"; -import { expect } from 'chai'; +import PrefetchAndCache, { + shortKey, +} from "../../../../src/background/completion/impl/PrefetchAndCache"; +import { expect } from "chai"; class MockRepository { public history: string[] = []; - constructor( - private items: string[], - ) { - } + constructor(private items: string[]) {} get(query: string): Promise<string[]> { this.history.push(query); if (query.length === 0) { return Promise.resolve(this.items); } else { - return Promise.resolve(this.items.filter(item => item.includes(query))); + return Promise.resolve(this.items.filter((item) => item.includes(query))); } } } -const filter = (items: string[], query: string) => query.length === 0 ? items : items.filter(item => item.includes(query)); +const filter = (items: string[], query: string) => + query.length === 0 ? items : items.filter((item) => item.includes(query)); -describe('shortKey', () => { - it('returns query excluding the last word', () => { - const query = "hello\t world good bye"; - const shorten = shortKey(query); - expect(shorten).to.equal("hello world good") +describe("shortKey", () => { + it("returns query excluding the last word", () => { + const query = "hello\t world good bye"; + const shorten = shortKey(query); + expect(shorten).to.equal("hello world good"); }); - it('returns half-length of the query', () => { + it("returns half-length of the query", () => { const query = "the-query-with-super-long-word"; const shorten = shortKey(query); - expect(shorten).to.equal("the-query-with-") + expect(shorten).to.equal("the-query-with-"); }); - it('returns shorten URL', () => { + it("returns shorten URL", () => { let query = "https://example.com/path/to/resource?q=hello"; let shorten = shortKey(query); expect(shorten).to.equal("https://example.com/path/to/"); @@ -45,20 +45,39 @@ describe('shortKey', () => { query = "https://www.google.c"; shorten = shortKey(query); expect(shorten).to.equal("https://ww"); - }) + }); }); -describe('PrefetchAndCache', () => { - describe('get', () => { - it('returns cached request', async() => { - const repo = new MockRepository(["apple", "apple pie", "apple juice", "banana", "banana pudding", "cherry"]); +describe("PrefetchAndCache", () => { + describe("get", () => { + it("returns cached request", async () => { + const repo = new MockRepository([ + "apple", + "apple pie", + "apple juice", + "banana", + "banana pudding", + "cherry", + ]); const sut = new PrefetchAndCache(repo.get.bind(repo), filter); expect(await sut.get("apple pie")).deep.equal(["apple pie"]); - expect(await sut.get("apple ")).deep.equal(["apple", "apple pie", "apple juice"]); - expect(await sut.get("apple")).deep.equal(["apple", "apple pie", "apple juice"]); - expect(await sut.get("appl")).deep.equal(["apple", "apple pie", "apple juice"]); - expect(repo.history).to.deep.equal(["apple", 'ap']); + expect(await sut.get("apple ")).deep.equal([ + "apple", + "apple pie", + "apple juice", + ]); + expect(await sut.get("apple")).deep.equal([ + "apple", + "apple pie", + "apple juice", + ]); + expect(await sut.get("appl")).deep.equal([ + "apple", + "apple pie", + "apple juice", + ]); + expect(repo.history).to.deep.equal(["apple", "ap"]); expect(await sut.get("banana")).deep.equal(["banana", "banana pudding"]); expect(repo.history).to.deep.equal(["apple", "ap", "ban"]); @@ -68,7 +87,14 @@ describe('PrefetchAndCache', () => { expect(repo.history).to.deep.equal(["apple", "ap", "ban", "banana", "b"]); expect(await sut.get("")).to.have.lengthOf(6); - expect(repo.history).to.deep.equal(["apple", "ap", "ban", "banana", "b", ""]); + expect(repo.history).to.deep.equal([ + "apple", + "ap", + "ban", + "banana", + "b", + "", + ]); }); }); -});
\ No newline at end of file +}); |