Skip to content

Commit 6181dcf

Browse files
committed
test: add unit test for masking repro steps
1 parent 45a6e60 commit 6181dcf

File tree

1 file changed

+26
-3
lines changed

1 file changed

+26
-3
lines changed

test/utils/instabug_navigator_observer_test.dart

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import 'package:flutter_test/flutter_test.dart';
44
import 'package:instabug_flutter/instabug_flutter.dart';
55
import 'package:instabug_flutter/src/generated/instabug.api.g.dart';
66
import 'package:instabug_flutter/src/utils/screen_loading/screen_loading_manager.dart';
7+
import 'package:instabug_flutter/src/utils/screen_name_masker.dart';
78
import 'package:mockito/annotations.dart';
89
import 'package:mockito/mockito.dart';
910

@@ -35,6 +36,8 @@ void main() {
3536
observer = InstabugNavigatorObserver();
3637
route = createRoute(screen);
3738
previousRoute = createRoute(previousScreen);
39+
40+
ScreenNameMasker.I.setMaskingCallback(null);
3841
});
3942

4043
test('should report screen change when a route is pushed', () {
@@ -44,7 +47,7 @@ void main() {
4447
async.elapse(const Duration(milliseconds: 1000));
4548

4649
verify(
47-
mScreenLoadingManager.startUiTrace(screen),
50+
mScreenLoadingManager.startUiTrace(screen, screen),
4851
).called(1);
4952

5053
verify(
@@ -62,7 +65,7 @@ void main() {
6265
async.elapse(const Duration(milliseconds: 1000));
6366

6467
verify(
65-
mScreenLoadingManager.startUiTrace(previousScreen),
68+
mScreenLoadingManager.startUiTrace(previousScreen, previousScreen),
6669
).called(1);
6770

6871
verify(
@@ -80,14 +83,34 @@ void main() {
8083
async.elapse(const Duration(milliseconds: 1000));
8184

8285
verifyNever(
83-
mScreenLoadingManager.startUiTrace(any),
86+
mScreenLoadingManager.startUiTrace(any, any),
8487
);
8588

8689
verifyNever(
8790
mHost.reportScreenChange(any),
8891
);
8992
});
9093
});
94+
95+
test('should mask screen name when masking callback is set', () {
96+
const maskedScreen = 'maskedScreen';
97+
98+
ScreenNameMasker.I.setMaskingCallback((_) => maskedScreen);
99+
100+
fakeAsync((async) {
101+
observer.didPush(route, previousRoute);
102+
103+
async.elapse(const Duration(milliseconds: 1000));
104+
105+
verify(
106+
mScreenLoadingManager.startUiTrace(maskedScreen, screen),
107+
).called(1);
108+
109+
verify(
110+
mHost.reportScreenChange(maskedScreen),
111+
).called(1);
112+
});
113+
});
91114
}
92115

93116
Route createRoute(String? name) {

0 commit comments

Comments
 (0)