Skip to content

Commit 24878af

Browse files
authored
Merge pull request #3 from argos-ci/async-api
feat: make the API async
2 parents 9322e70 + 545e225 commit 24878af

6 files changed

Lines changed: 112 additions & 88 deletions

File tree

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ import { fingerprintDiff } from 'mask-fingerprint'
6969

7070
const png = fs.readFileSync('diff.png')
7171

72-
const fingerprint = fingerprintDiff(png, {
72+
const fingerprint = await fingerprintDiff(png, {
7373
gridSize: 16,
7474
dilateRadius: 1,
7575
padToSquare: true,
@@ -92,6 +92,8 @@ The returned value is designed to be stored in a database, indexed, and compared
9292

9393
### `fingerprintDiff(buffer, options?)`
9494

95+
Returns a `Promise<string>`.
96+
9597
#### Parameters
9698

9799
**buffer**

__test__/index.spec.ts

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,32 +5,32 @@ import { describe, expect, it } from 'vitest'
55
import { fingerprintDiff } from '../index'
66

77
describe('diff fingerprint', () => {
8-
it('generates a same fingerprint for similar diffs', () => {
8+
it('generates a same fingerprint for similar diffs', async () => {
99
const fixturesDir = path.join(__dirname, './__fixtures__')
1010

11-
const generateFingerprintFromFilename = (name: string) => {
11+
const generateFingerprintFromFilename = async (name: string) => {
1212
const diffPath = path.join(fixturesDir, name)
1313
const buffer = fs.readFileSync(diffPath)
1414
console.time(name)
15-
const res = fingerprintDiff(buffer)
15+
const res = await fingerprintDiff(buffer)
1616
console.timeEnd(name)
1717
return res
1818
}
1919

20-
const generateFingerprintFromPath = (name: string) => {
20+
const generateFingerprintFromPath = async (name: string) => {
2121
const diffPath = path.join(fixturesDir, name)
2222
console.time(`${name}-path`)
23-
const res = fingerprintDiff(diffPath)
23+
const res = await fingerprintDiff(diffPath)
2424
console.timeEnd(`${name}-path`)
2525
return res
2626
}
2727

28-
const fA1 = generateFingerprintFromFilename('diff-A1.png')
29-
const fA1Path = generateFingerprintFromPath('diff-A1.png')
30-
const fA2 = generateFingerprintFromFilename('diff-A2.png')
31-
const fA3 = generateFingerprintFromFilename('diff-A3.png')
32-
const fB1 = generateFingerprintFromFilename('diff-B1.png')
33-
const fLong = generateFingerprintFromFilename('long-diff.png')
28+
const fA1 = await generateFingerprintFromFilename('diff-A1.png')
29+
const fA1Path = await generateFingerprintFromPath('diff-A1.png')
30+
const fA2 = await generateFingerprintFromFilename('diff-A2.png')
31+
const fA3 = await generateFingerprintFromFilename('diff-A3.png')
32+
const fB1 = await generateFingerprintFromFilename('diff-B1.png')
33+
const fLong = await generateFingerprintFromFilename('long-diff.png')
3434

3535
expect(fA1).toBe('v1:g16:d1:t0.002,0.02,0.08:202566ca9533046b')
3636
expect(fA1).toBe(fA2)

index.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/* auto-generated by NAPI-RS */
22
/* eslint-disable */
3-
export declare function fingerprintDiff(pngInput: string | Buffer, options?: JsEqualityFingerprintOptions | undefined | null): string
3+
export declare function fingerprintDiff(pngInput: string | Buffer, options?: JsEqualityFingerprintOptions | undefined | null): Promise<string>
44

55
export interface JsEqualityFingerprintOptions {
66
redThreshold?: JsRedThreshold

0 commit comments

Comments
 (0)