Skip to content

Commit 2ba1981

Browse files
committed
Use platform based 64base decoding function
1 parent c5616d7 commit 2ba1981

File tree

1 file changed

+17
-16
lines changed

1 file changed

+17
-16
lines changed

packages/firestore/test/unit/remote/bloom_filter.test.ts

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import { expect } from 'chai';
1818

1919
import { BloomFilter } from '../../../src/remote/bloom_filter';
20+
import { ByteString } from '../../../src/util/byte_string';
2021

2122
import {
2223
testDataCount1Rate0001,
@@ -150,16 +151,16 @@ describe('BloomFilter', () => {
150151
membershipTestResults: string;
151152
}
152153

153-
function convertBase64ToUint8Array(base64: string): Uint8Array {
154-
return Uint8Array.from(atob(base64), item => item.charCodeAt(0));
154+
function decodeBase64ToUint8Array(encoded: string): Uint8Array {
155+
return ByteString.fromBase64String(encoded).toUint8Array();
155156
}
156157

157158
it('mightContain result for 1 document with 1 false positive rate should match backend result', () => {
158159
const { bits, hashCount } = testDataCount1Rate1 as TestDataType;
159160
const { membershipTestResults } = testResultCount1Rate1 as TestResultType;
160161

161162
const bloomFilter = new BloomFilter(
162-
convertBase64ToUint8Array(bits.bitmap || ''),
163+
decodeBase64ToUint8Array(bits.bitmap || ''),
163164
bits.padding || 0,
164165
hashCount || 0
165166
);
@@ -176,7 +177,7 @@ describe('BloomFilter', () => {
176177
testResultCount1Rate01 as TestResultType;
177178

178179
const bloomFilter = new BloomFilter(
179-
convertBase64ToUint8Array(bits.bitmap || ''),
180+
decodeBase64ToUint8Array(bits.bitmap || ''),
180181
bits.padding || 0,
181182
hashCount || 0
182183
);
@@ -193,7 +194,7 @@ describe('BloomFilter', () => {
193194
testResultCount1Rate0001 as TestResultType;
194195

195196
const bloomFilter = new BloomFilter(
196-
convertBase64ToUint8Array(bits.bitmap || ''),
197+
decodeBase64ToUint8Array(bits.bitmap || ''),
197198
bits.padding || 0,
198199
hashCount || 0
199200
);
@@ -210,7 +211,7 @@ describe('BloomFilter', () => {
210211
testResultCount500Rate1 as TestResultType;
211212

212213
const bloomFilter = new BloomFilter(
213-
convertBase64ToUint8Array(bits.bitmap || ''),
214+
decodeBase64ToUint8Array(bits.bitmap || ''),
214215
bits.padding || 0,
215216
hashCount || 0
216217
);
@@ -227,7 +228,7 @@ describe('BloomFilter', () => {
227228
testResultCount500Rate01 as TestResultType;
228229

229230
const bloomFilter = new BloomFilter(
230-
convertBase64ToUint8Array(bits.bitmap || ''),
231+
decodeBase64ToUint8Array(bits.bitmap || ''),
231232
bits.padding || 0,
232233
hashCount || 0
233234
);
@@ -244,7 +245,7 @@ describe('BloomFilter', () => {
244245
testResultCount500Rate0001 as TestResultType;
245246

246247
const bloomFilter = new BloomFilter(
247-
convertBase64ToUint8Array(bits.bitmap || ''),
248+
decodeBase64ToUint8Array(bits.bitmap || ''),
248249
bits.padding || 0,
249250
hashCount || 0
250251
);
@@ -261,7 +262,7 @@ describe('BloomFilter', () => {
261262
testResultCount5000Rate1 as TestResultType;
262263

263264
const bloomFilter = new BloomFilter(
264-
convertBase64ToUint8Array(bits.bitmap || ''),
265+
decodeBase64ToUint8Array(bits.bitmap || ''),
265266
bits.padding || 0,
266267
hashCount || 0
267268
);
@@ -278,7 +279,7 @@ describe('BloomFilter', () => {
278279
testResultCount5000Rate01 as TestResultType;
279280

280281
const bloomFilter = new BloomFilter(
281-
convertBase64ToUint8Array(bits.bitmap || ''),
282+
decodeBase64ToUint8Array(bits.bitmap || ''),
282283
bits.padding || 0,
283284
hashCount || 0
284285
);
@@ -295,7 +296,7 @@ describe('BloomFilter', () => {
295296
testResultCount5000Rate0001 as TestResultType;
296297

297298
const bloomFilter = new BloomFilter(
298-
convertBase64ToUint8Array(bits.bitmap || ''),
299+
decodeBase64ToUint8Array(bits.bitmap || ''),
299300
bits.padding || 0,
300301
hashCount || 0
301302
);
@@ -312,7 +313,7 @@ describe('BloomFilter', () => {
312313
testResultCount50000Rate1 as TestResultType;
313314

314315
const bloomFilter = new BloomFilter(
315-
convertBase64ToUint8Array(bits.bitmap || ''),
316+
decodeBase64ToUint8Array(bits.bitmap || ''),
316317
bits.padding || 0,
317318
hashCount || 0
318319
);
@@ -329,7 +330,7 @@ describe('BloomFilter', () => {
329330
testResultCount50000Rate01 as TestResultType;
330331

331332
const bloomFilter = new BloomFilter(
332-
convertBase64ToUint8Array(bits.bitmap || ''),
333+
decodeBase64ToUint8Array(bits.bitmap || ''),
333334
bits.padding || 0,
334335
hashCount || 0
335336
);
@@ -340,15 +341,15 @@ describe('BloomFilter', () => {
340341
expect(mightContain).to.equal(backendMembershipResult);
341342
}
342343
//Extend default timeout(2000)
343-
}).timeout(3000);
344+
}).timeout(5000);
344345

345346
it('mightContain result for 50000 documents with 0.0001 false positive rate should match backend result', () => {
346347
const { bits, hashCount } = testDataCount50000Rate0001 as TestDataType;
347348
const { membershipTestResults } =
348349
testResultCount50000Rate0001 as TestResultType;
349350

350351
const bloomFilter = new BloomFilter(
351-
convertBase64ToUint8Array(bits.bitmap || ''),
352+
decodeBase64ToUint8Array(bits.bitmap || ''),
352353
bits.padding || 0,
353354
hashCount || 0
354355
);
@@ -359,6 +360,6 @@ describe('BloomFilter', () => {
359360
expect(mightContain).to.equal(backendMembershipResult);
360361
}
361362
//Extend default timeout(2000)
362-
}).timeout(4000);
363+
}).timeout(5000);
363364
});
364365
});

0 commit comments

Comments
 (0)