Skip to content

Commit 6a94aeb

Browse files
gtamanahaalexs-mparticle
authored andcommitted
refactor(reportingLogger): Change rateLimiter type to IRateLimiter and update related tests
1 parent 36e2a4f commit 6a94aeb

File tree

2 files changed

+7
-8
lines changed

2 files changed

+7
-8
lines changed

src/logging/reportingLogger.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ export class ReportingLogger implements IReportingLogger {
1212
private readonly apiClient: IAPIClient;
1313
private readonly reporter: string = 'mp-wsdk';
1414
private readonly integration: string = 'mp-wsdk';
15-
private readonly rateLimiter: RateLimiter;
15+
private readonly rateLimiter: IRateLimiter;
1616

1717
constructor(
1818
apiClient: IAPIClient,
1919
private readonly sdkVersion: string,
20-
rateLimiter?: RateLimiter,
20+
rateLimiter?: IRateLimiter,
2121
) {
2222
this.isEnabled = this.isReportingEnabled();
2323
this.apiClient = apiClient;

test/jest/reportingLogger.spec.ts

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { RateLimiter, ReportingLogger } from '../../src/logging/reportingLogger';
1+
import { IRateLimiter, RateLimiter, ReportingLogger } from '../../src/logging/reportingLogger';
22
import { LogRequestSeverity } from '../../src/logging/logRequest';
33
import { ErrorCodes } from '../../src/logging/errorCodes';
44

@@ -70,14 +70,13 @@ describe('ReportingLogger', () => {
7070
});
7171

7272
it('rate limits after 3 errors', () => {
73-
const mockRateLimiter = {
73+
let count = 0;
74+
const mockRateLimiter: IRateLimiter = {
7475
incrementAndCheck: jest.fn().mockImplementation((severity) => {
75-
// allow only first 3, then start rate limiting
76-
mockRateLimiter.count = (mockRateLimiter.count || 0) + 1;
77-
return mockRateLimiter.count > 3;
76+
return ++count > 3;
7877
}),
7978
};
80-
logger = new ReportingLogger(apiClient, sdkVersion, mockRateLimiter as any);
79+
logger = new ReportingLogger(apiClient, sdkVersion, mockRateLimiter);
8180

8281
for (let i = 0; i < 5; i++) logger.error('err');
8382
expect(apiClient.sendLogToServer).toHaveBeenCalledTimes(3);

0 commit comments

Comments
 (0)