Skip to content

Commit 485d7f5

Browse files
committed
Merge branch 'main' into fix/export-typings
# Conflicts: # package.json
2 parents 780b881 + de2224a commit 485d7f5

File tree

5 files changed

+105
-70
lines changed

5 files changed

+105
-70
lines changed

example/package-lock.json

Lines changed: 24 additions & 43 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package-lock.json

Lines changed: 68 additions & 14 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

sdk/analytics.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,8 @@ export class AnalyticsProcessor {
4949
this.lastFlushed = Date.now();
5050
}
5151

52-
trackFeature(featureId: number) {
53-
this.analyticsData[featureId] = (this.analyticsData[featureId] || 0) + 1;
52+
trackFeature(featureName: string) {
53+
this.analyticsData[featureName] = (this.analyticsData[featureName] || 0) + 1;
5454
if (Date.now() - this.lastFlushed > ANALYTICS_TIMER * 1000) {
5555
this.flush();
5656
}

sdk/models.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ export class Flags {
129129
}
130130

131131
if (this.analyticsProcessor && flag.featureId) {
132-
this.analyticsProcessor.trackFeature(flag.featureId);
132+
this.analyticsProcessor.trackFeature(flag.featureName);
133133
}
134134

135135
return flag;

tests/sdk/analytics.test.ts

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,28 +8,28 @@ afterEach(() => {
88

99
test('test_analytics_processor_track_feature_updates_analytics_data', () => {
1010
const aP = analyticsProcessor();
11-
aP.trackFeature(1);
12-
expect(aP.analyticsData[1]).toBe(1);
11+
aP.trackFeature("myFeature");
12+
expect(aP.analyticsData["myFeature"]).toBe(1);
1313

14-
aP.trackFeature(1);
15-
expect(aP.analyticsData[1]).toBe(2);
14+
aP.trackFeature("myFeature");
15+
expect(aP.analyticsData["myFeature"]).toBe(2);
1616
});
1717

1818
test('test_analytics_processor_flush_clears_analytics_data', async () => {
1919
const aP = analyticsProcessor();
20-
aP.trackFeature(1);
20+
aP.trackFeature("myFeature");
2121
await aP.flush();
2222
expect(aP.analyticsData).toStrictEqual({});
2323
});
2424

2525
test('test_analytics_processor_flush_post_request_data_match_ananlytics_data', async () => {
2626
const aP = analyticsProcessor();
27-
aP.trackFeature(1);
28-
aP.trackFeature(2);
27+
aP.trackFeature("myFeature1");
28+
aP.trackFeature("myFeature2");
2929
await aP.flush();
3030
expect(fetch).toHaveBeenCalledTimes(1);
3131
expect(fetch).toHaveBeenCalledWith('http://testUrlanalytics/flags/', {
32-
body: '{"1":1,"2":1}',
32+
body: '{"myFeature1":1,"myFeature2":1}',
3333
headers: { 'Content-Type': 'application/json', 'X-Environment-Key': 'test-key' },
3434
method: 'POST',
3535
timeout: 3
@@ -39,9 +39,9 @@ test('test_analytics_processor_flush_post_request_data_match_ananlytics_data', a
3939
jest.useFakeTimers()
4040
test('test_analytics_processor_flush_post_request_data_match_ananlytics_data_test', async () => {
4141
const aP = analyticsProcessor();
42-
aP.trackFeature(1);
42+
aP.trackFeature("myFeature1");
4343
setTimeout(() => {
44-
aP.trackFeature(2);
44+
aP.trackFeature("myFeature2");
4545
expect(fetch).toHaveBeenCalledTimes(1);
4646
}, 15000);
4747
jest.runOnlyPendingTimers();

0 commit comments

Comments
 (0)