Skip to content

Commit

Permalink
refactor: pr feedback on tests for firebase_deep_link client
Browse files Browse the repository at this point in the history
  • Loading branch information
elianortega committed Sep 25, 2024
1 parent a9207df commit 84f9219
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 45 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,8 @@ import 'package:firebase_dynamic_links/firebase_dynamic_links.dart';
/// {@endtemplate}
class FirebaseDeepLinkClient implements DeepLinkClient {
/// {@macro firebase_deep_link_client}
FirebaseDeepLinkClient({FirebaseDynamicLinks? firebaseDynamicLinks})
: _firebaseDynamicLinks =
firebaseDynamicLinks ?? FirebaseDynamicLinks.instance;
FirebaseDeepLinkClient({required FirebaseDynamicLinks firebaseDynamicLinks})
: _firebaseDynamicLinks = firebaseDynamicLinks;

final FirebaseDynamicLinks _firebaseDynamicLinks;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
// ignore_for_file: deprecated_member_use

import 'dart:async';
import 'package:firebase_core/firebase_core.dart';
import 'package:firebase_core_platform_interface/firebase_core_platform_interface.dart';
import 'package:firebase_deep_link_client/firebase_deep_link_client.dart';
import 'package:firebase_dynamic_links/firebase_dynamic_links.dart';
Expand Down Expand Up @@ -53,55 +52,18 @@ void main() {
final client =
FirebaseDeepLinkClient(firebaseDynamicLinks: dynamicLinks);

expect(
client.deepLinkStream,
emitsInOrder(
<Uri>[expectedUri1, expectedUri1, expectedUri2, expectedUri1],
),
);

onLinkStreamController
..add(PendingDynamicLinkData(link: expectedUri1))
..add(PendingDynamicLinkData(link: expectedUri1))
..add(PendingDynamicLinkData(link: expectedUri2))
..add(PendingDynamicLinkData(link: expectedUri1));
});
});

group('with default FirebaseDynamicLinks', () {
setUp(() {
TestWidgetsFlutterBinding.ensureInitialized();

final mock = MockFirebaseCore();
Firebase.delegatePackingProperty = mock;

final platformApp = FirebaseAppPlatform(
'testAppName',
const FirebaseOptions(
apiKey: 'apiKey',
appId: 'appId',
messagingSenderId: 'messagingSenderId',
projectId: 'projectId',
expect(
client.deepLinkStream,
emitsInOrder(
<Uri>[expectedUri1, expectedUri1, expectedUri2, expectedUri1],
),
);

when(() => mock.apps).thenReturn([platformApp]);
when(() => mock.app(any())).thenReturn(platformApp);
when(
() => mock.initializeApp(
name: any(named: 'name'),
options: any(named: 'options'),
),
).thenAnswer((_) => Future.value(platformApp));
});

tearDown(() {
Firebase.delegatePackingProperty = null;
});

test('can be instantiated', () async {
await Firebase.initializeApp();
expect(FirebaseDeepLinkClient.new, returnsNormally);
});
});
});
Expand Down

0 comments on commit 84f9219

Please sign in to comment.