yumi-flutter/test/install_referrer_utils_test.dart
2026-04-27 19:30:20 +08:00

45 lines
1.2 KiB
Dart

import 'package:flutter_test/flutter_test.dart';
import 'package:yumi/shared/tools/sc_install_referrer_utils.dart';
void main() {
group('SCInstallReferrerUtils.extractInviteCode', () {
test('extracts invite code from decoded referrer', () {
expect(
SCInstallReferrerUtils.extractInviteCode(
'invite_code=LZSWI6GO&source=share',
),
'LZSWI6GO',
);
});
test('extracts invite code from encoded referrer', () {
expect(
SCInstallReferrerUtils.extractInviteCode(
'invite_code%3DLZSWI6GO%26source%3Dshare',
),
'LZSWI6GO',
);
});
test('extracts invite code from play store url', () {
expect(
SCInstallReferrerUtils.extractInviteCode(
'https://play.google.com/store/apps/details'
'?id=com.org.yumiparty'
'&referrer=invite_code%3DLZSWI6GO%26source%3Dshare',
),
'LZSWI6GO',
);
});
test('extracts invite code from camel case key', () {
expect(
SCInstallReferrerUtils.extractInviteCode(
'inviteCode=LZSWI6GO&source=share',
),
'LZSWI6GO',
);
});
});
}