Skip to content

Commit 60ce03a

Browse files
Decouple video_player XCTests from real app registry
1 parent db36cfa commit 60ce03a

File tree

1 file changed

+46
-93
lines changed

1 file changed

+46
-93
lines changed

packages/video_player/video_player_avfoundation/darwin/RunnerTests/VideoPlayerTests.m

Lines changed: 46 additions & 93 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,6 @@
1616
#import <video_player_avfoundation/FVPNativeVideoViewFactory.h>
1717
#endif
1818

19-
// TODO(stuartmorgan): Convert to using mock registrars instead.
20-
NSObject<FlutterPluginRegistry> *GetPluginRegistry(void) {
21-
#if TARGET_OS_IOS
22-
return (NSObject<FlutterPluginRegistry> *)[[UIApplication sharedApplication] delegate];
23-
#else
24-
return (FlutterViewController *)NSApplication.sharedApplication.windows[0].contentViewController;
25-
#endif
26-
}
27-
2819
#if TARGET_OS_IOS
2920
@interface FakeAVAssetTrack : AVAssetTrack
3021
@property(readonly, nonatomic) CGAffineTransform preferredTransform;
@@ -168,18 +159,15 @@ - (FVPDisplayLink *)displayLinkWithRegistrar:(id<FlutterPluginRegistrar>)registr
168159
@implementation VideoPlayerTests
169160

170161
- (void)testCreateWithOptionsReturnsErrorForInvalidAssetPath {
171-
NSObject<FlutterPluginRegistrar> *registrar = [GetPluginRegistry()
172-
registrarForPlugin:@"testCreateWithOptionsReturnsErrorForInvalidAssetPath"];
162+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
163+
OCMStub([registrar lookupKeyForAsset:[OCMArg any]]).andReturn(nil);
173164
FVPVideoPlayerPlugin *videoPlayerPlugin =
174165
[[FVPVideoPlayerPlugin alloc] initWithRegistrar:registrar];
175166

176167
FlutterError *initializationError;
177168
[videoPlayerPlugin initialize:&initializationError];
178169
XCTAssertNil(initializationError);
179170

180-
id mockRegistrar = OCMPartialMock(registrar);
181-
OCMStub([mockRegistrar lookupKeyForAsset:[OCMArg any]]).andReturn(nil);
182-
183171
FVPCreationOptions *create =
184172
[FVPCreationOptions makeWithAsset:@"invalid/path/to/asset"
185173
uri:nil
@@ -202,8 +190,7 @@ - (void)testBlankVideoBugWithEncryptedVideoStreamAndInvertedAspectRatioBugForSom
202190
// video streams (not just iOS 16). (https://github.com/flutter/flutter/issues/109116). An
203191
// invisible AVPlayerLayer is used to overwrite the protection of pixel buffers in those streams
204192
// for issue #1, and restore the correct width and height for issue #2.
205-
NSObject<FlutterPluginRegistrar> *registrar =
206-
[GetPluginRegistry() registrarForPlugin:@"testPlayerLayerWorkaround"];
193+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
207194
FVPVideoPlayerPlugin *videoPlayerPlugin =
208195
[[FVPVideoPlayerPlugin alloc] initWithRegistrar:registrar];
209196

@@ -232,10 +219,8 @@ - (void)testBlankVideoBugWithEncryptedVideoStreamAndInvertedAspectRatioBugForSom
232219
- (void)testPlayerForPlatformViewDoesNotRegisterTexture {
233220
NSObject<FlutterTextureRegistry> *mockTextureRegistry =
234221
OCMProtocolMock(@protocol(FlutterTextureRegistry));
235-
NSObject<FlutterPluginRegistrar> *registrar =
236-
[GetPluginRegistry() registrarForPlugin:@"testPlayerForPlatformViewDoesNotRegisterTexture"];
237-
NSObject<FlutterPluginRegistrar> *partialRegistrar = OCMPartialMock(registrar);
238-
OCMStub([partialRegistrar textures]).andReturn(mockTextureRegistry);
222+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
223+
OCMStub([registrar textures]).andReturn(mockTextureRegistry);
239224
FVPDisplayLink *mockDisplayLink =
240225
OCMPartialMock([[FVPDisplayLink alloc] initWithRegistrar:registrar
241226
callback:^(){
@@ -246,7 +231,7 @@ - (void)testPlayerForPlatformViewDoesNotRegisterTexture {
246231
FVPVideoPlayerPlugin *videoPlayerPlugin = [[FVPVideoPlayerPlugin alloc]
247232
initWithAVFactory:[[StubFVPAVFactory alloc] initWithPlayer:nil output:mockVideoOutput]
248233
displayLinkFactory:stubDisplayLinkFactory
249-
registrar:partialRegistrar];
234+
registrar:registrar];
250235

251236
FlutterError *initalizationError;
252237
[videoPlayerPlugin initialize:&initalizationError];
@@ -267,10 +252,8 @@ - (void)testPlayerForPlatformViewDoesNotRegisterTexture {
267252
- (void)testSeekToWhilePausedStartsDisplayLinkTemporarily {
268253
NSObject<FlutterTextureRegistry> *mockTextureRegistry =
269254
OCMProtocolMock(@protocol(FlutterTextureRegistry));
270-
NSObject<FlutterPluginRegistrar> *registrar =
271-
[GetPluginRegistry() registrarForPlugin:@"SeekToWhilePausedStartsDisplayLinkTemporarily"];
272-
NSObject<FlutterPluginRegistrar> *partialRegistrar = OCMPartialMock(registrar);
273-
OCMStub([partialRegistrar textures]).andReturn(mockTextureRegistry);
255+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
256+
OCMStub([registrar textures]).andReturn(mockTextureRegistry);
274257
FVPDisplayLink *mockDisplayLink =
275258
OCMPartialMock([[FVPDisplayLink alloc] initWithRegistrar:registrar
276259
callback:^(){
@@ -281,7 +264,7 @@ - (void)testSeekToWhilePausedStartsDisplayLinkTemporarily {
281264
FVPVideoPlayerPlugin *videoPlayerPlugin = [[FVPVideoPlayerPlugin alloc]
282265
initWithAVFactory:[[StubFVPAVFactory alloc] initWithPlayer:nil output:mockVideoOutput]
283266
displayLinkFactory:stubDisplayLinkFactory
284-
registrar:partialRegistrar];
267+
registrar:registrar];
285268

286269
FlutterError *initalizationError;
287270
[videoPlayerPlugin initialize:&initalizationError];
@@ -338,10 +321,8 @@ - (void)testSeekToWhilePausedStartsDisplayLinkTemporarily {
338321
- (void)testInitStartsDisplayLinkTemporarily {
339322
NSObject<FlutterTextureRegistry> *mockTextureRegistry =
340323
OCMProtocolMock(@protocol(FlutterTextureRegistry));
341-
NSObject<FlutterPluginRegistrar> *registrar =
342-
[GetPluginRegistry() registrarForPlugin:@"InitStartsDisplayLinkTemporarily"];
343-
NSObject<FlutterPluginRegistrar> *partialRegistrar = OCMPartialMock(registrar);
344-
OCMStub([partialRegistrar textures]).andReturn(mockTextureRegistry);
324+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
325+
OCMStub([registrar textures]).andReturn(mockTextureRegistry);
345326
FVPDisplayLink *mockDisplayLink =
346327
OCMPartialMock([[FVPDisplayLink alloc] initWithRegistrar:registrar
347328
callback:^(){
@@ -354,7 +335,7 @@ - (void)testInitStartsDisplayLinkTemporarily {
354335
initWithAVFactory:[[StubFVPAVFactory alloc] initWithPlayer:stubAVPlayer
355336
output:mockVideoOutput]
356337
displayLinkFactory:stubDisplayLinkFactory
357-
registrar:partialRegistrar];
338+
registrar:registrar];
358339

359340
FlutterError *initalizationError;
360341
[videoPlayerPlugin initialize:&initalizationError];
@@ -393,10 +374,8 @@ - (void)testInitStartsDisplayLinkTemporarily {
393374
- (void)testSeekToWhilePlayingDoesNotStopDisplayLink {
394375
NSObject<FlutterTextureRegistry> *mockTextureRegistry =
395376
OCMProtocolMock(@protocol(FlutterTextureRegistry));
396-
NSObject<FlutterPluginRegistrar> *registrar =
397-
[GetPluginRegistry() registrarForPlugin:@"SeekToWhilePlayingDoesNotStopDisplayLink"];
398-
NSObject<FlutterPluginRegistrar> *partialRegistrar = OCMPartialMock(registrar);
399-
OCMStub([partialRegistrar textures]).andReturn(mockTextureRegistry);
377+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
378+
OCMStub([registrar textures]).andReturn(mockTextureRegistry);
400379
FVPDisplayLink *mockDisplayLink =
401380
OCMPartialMock([[FVPDisplayLink alloc] initWithRegistrar:registrar
402381
callback:^(){
@@ -407,7 +386,7 @@ - (void)testSeekToWhilePlayingDoesNotStopDisplayLink {
407386
FVPVideoPlayerPlugin *videoPlayerPlugin = [[FVPVideoPlayerPlugin alloc]
408387
initWithAVFactory:[[StubFVPAVFactory alloc] initWithPlayer:nil output:mockVideoOutput]
409388
displayLinkFactory:stubDisplayLinkFactory
410-
registrar:partialRegistrar];
389+
registrar:registrar];
411390

412391
FlutterError *initalizationError;
413392
[videoPlayerPlugin initialize:&initalizationError];
@@ -463,10 +442,8 @@ - (void)testSeekToWhilePlayingDoesNotStopDisplayLink {
463442
- (void)testPauseWhileWaitingForFrameDoesNotStopDisplayLink {
464443
NSObject<FlutterTextureRegistry> *mockTextureRegistry =
465444
OCMProtocolMock(@protocol(FlutterTextureRegistry));
466-
NSObject<FlutterPluginRegistrar> *registrar =
467-
[GetPluginRegistry() registrarForPlugin:@"PauseWhileWaitingForFrameDoesNotStopDisplayLink"];
468-
NSObject<FlutterPluginRegistrar> *partialRegistrar = OCMPartialMock(registrar);
469-
OCMStub([partialRegistrar textures]).andReturn(mockTextureRegistry);
445+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
446+
OCMStub([registrar textures]).andReturn(mockTextureRegistry);
470447
FVPDisplayLink *mockDisplayLink =
471448
OCMPartialMock([[FVPDisplayLink alloc] initWithRegistrar:registrar
472449
callback:^(){
@@ -477,7 +454,7 @@ - (void)testPauseWhileWaitingForFrameDoesNotStopDisplayLink {
477454
FVPVideoPlayerPlugin *videoPlayerPlugin = [[FVPVideoPlayerPlugin alloc]
478455
initWithAVFactory:[[StubFVPAVFactory alloc] initWithPlayer:nil output:mockVideoOutput]
479456
displayLinkFactory:stubDisplayLinkFactory
480-
registrar:partialRegistrar];
457+
registrar:registrar];
481458

482459
FlutterError *initalizationError;
483460
[videoPlayerPlugin initialize:&initalizationError];
@@ -502,8 +479,7 @@ - (void)testPauseWhileWaitingForFrameDoesNotStopDisplayLink {
502479
}
503480

504481
- (void)testDeregistersFromPlayer {
505-
NSObject<FlutterPluginRegistrar> *registrar =
506-
[GetPluginRegistry() registrarForPlugin:@"testDeregistersFromPlayer"];
482+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
507483
FVPVideoPlayerPlugin *videoPlayerPlugin =
508484
(FVPVideoPlayerPlugin *)[[FVPVideoPlayerPlugin alloc] initWithRegistrar:registrar];
509485

@@ -535,8 +511,7 @@ - (void)testDeregistersFromPlayer {
535511
}
536512

537513
- (void)testBufferingStateFromPlayer {
538-
NSObject<FlutterPluginRegistrar> *registrar =
539-
[GetPluginRegistry() registrarForPlugin:@"testLiveStreamBufferEndFromPlayer"];
514+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
540515
FVPVideoPlayerPlugin *videoPlayerPlugin =
541516
(FVPVideoPlayerPlugin *)[[FVPVideoPlayerPlugin alloc] initWithRegistrar:registrar];
542517

@@ -580,8 +555,7 @@ - (void)testBufferingStateFromPlayer {
580555
}
581556

582557
- (void)testVideoControls {
583-
NSObject<FlutterPluginRegistrar> *registrar =
584-
[GetPluginRegistry() registrarForPlugin:@"TestVideoControls"];
558+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
585559

586560
FVPVideoPlayerPlugin *videoPlayerPlugin =
587561
(FVPVideoPlayerPlugin *)[[FVPVideoPlayerPlugin alloc] initWithRegistrar:registrar];
@@ -595,8 +569,7 @@ - (void)testVideoControls {
595569
}
596570

597571
- (void)testAudioControls {
598-
NSObject<FlutterPluginRegistrar> *registrar =
599-
[GetPluginRegistry() registrarForPlugin:@"TestAudioControls"];
572+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
600573

601574
FVPVideoPlayerPlugin *videoPlayerPlugin =
602575
(FVPVideoPlayerPlugin *)[[FVPVideoPlayerPlugin alloc] initWithRegistrar:registrar];
@@ -611,8 +584,7 @@ - (void)testAudioControls {
611584
}
612585

613586
- (void)testHLSControls {
614-
NSObject<FlutterPluginRegistrar> *registrar =
615-
[GetPluginRegistry() registrarForPlugin:@"TestHLSControls"];
587+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
616588

617589
FVPVideoPlayerPlugin *videoPlayerPlugin =
618590
(FVPVideoPlayerPlugin *)[[FVPVideoPlayerPlugin alloc] initWithRegistrar:registrar];
@@ -627,8 +599,7 @@ - (void)testHLSControls {
627599

628600
- (void)testAudioOnlyHLSControls {
629601
XCTSkip(@"Flaky; see https://github.com/flutter/flutter/issues/164381");
630-
NSObject<FlutterPluginRegistrar> *registrar =
631-
[GetPluginRegistry() registrarForPlugin:@"TestAudioOnlyHLSControls"];
602+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
632603

633604
FVPVideoPlayerPlugin *videoPlayerPlugin =
634605
(FVPVideoPlayerPlugin *)[[FVPVideoPlayerPlugin alloc] initWithRegistrar:registrar];
@@ -656,8 +627,7 @@ - (void)testTransformFix {
656627
#endif
657628

658629
- (void)testSeekToleranceWhenNotSeekingToEnd {
659-
NSObject<FlutterPluginRegistrar> *registrar =
660-
[GetPluginRegistry() registrarForPlugin:@"TestSeekTolerance"];
630+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
661631

662632
StubAVPlayer *stubAVPlayer = [[StubAVPlayer alloc] init];
663633
StubFVPAVFactory *stubAVFactory = [[StubFVPAVFactory alloc] initWithPlayer:stubAVPlayer
@@ -695,8 +665,7 @@ - (void)testSeekToleranceWhenNotSeekingToEnd {
695665
}
696666

697667
- (void)testSeekToleranceWhenSeekingToEnd {
698-
NSObject<FlutterPluginRegistrar> *registrar =
699-
[GetPluginRegistry() registrarForPlugin:@"TestSeekToEndTolerance"];
668+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
700669

701670
StubAVPlayer *stubAVPlayer = [[StubAVPlayer alloc] init];
702671
StubFVPAVFactory *stubAVFactory = [[StubFVPAVFactory alloc] initWithPlayer:stubAVPlayer
@@ -792,8 +761,7 @@ - (void)testSeekToleranceWhenSeekingToEnd {
792761
//
793762
// Failing to de-register results in a crash in [AVPlayer willChangeValueForKey:].
794763
- (void)testDoesNotCrashOnRateObservationAfterDisposal {
795-
NSObject<FlutterPluginRegistrar> *registrar =
796-
[GetPluginRegistry() registrarForPlugin:@"testDoesNotCrashOnRateObservationAfterDisposal"];
764+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
797765

798766
AVPlayer *avPlayer = nil;
799767
__weak FVPVideoPlayer *weakPlayer = nil;
@@ -848,8 +816,7 @@ - (void)testDoesNotCrashOnRateObservationAfterDisposal {
848816
// Both of these methods dispatch [FVPVideoPlayer dispose] on the main thread
849817
// leading to a possible crash when de-registering observers twice.
850818
- (void)testHotReloadDoesNotCrash {
851-
NSObject<FlutterPluginRegistrar> *registrar =
852-
[GetPluginRegistry() registrarForPlugin:@"testHotReloadDoesNotCrash"];
819+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
853820

854821
__weak FVPVideoPlayer *weakPlayer = nil;
855822

@@ -900,42 +867,32 @@ - (void)testHotReloadDoesNotCrash {
900867

901868
#if TARGET_OS_IOS
902869
- (void)testNativeVideoViewFactoryRegistration {
903-
NSObject<FlutterPluginRegistry> *registry = GetPluginRegistry();
904-
NSObject<FlutterPluginRegistrar> *registrar =
905-
[registry registrarForPlugin:@"testNativeVideoViewFactoryRegistration"];
906-
id mockRegistrar = OCMPartialMock(registrar);
870+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
907871

908-
OCMExpect([mockRegistrar
909-
registerViewFactory:[OCMArg isKindOfClass:[FVPNativeVideoViewFactory class]]
910-
withId:@"plugins.flutter.dev/video_player_ios"]);
911-
[FVPVideoPlayerPlugin registerWithRegistrar:mockRegistrar];
872+
OCMExpect([registrar registerViewFactory:[OCMArg isKindOfClass:[FVPNativeVideoViewFactory class]]
873+
withId:@"plugins.flutter.dev/video_player_ios"]);
874+
[FVPVideoPlayerPlugin registerWithRegistrar:registrar];
912875

913-
OCMVerifyAll(mockRegistrar);
876+
OCMVerifyAll(registrar);
914877
}
915878
#endif
916879

917880
- (void)testPublishesInRegistration {
918-
NSString *pluginKey = @"TestRegistration";
919-
NSObject<FlutterPluginRegistry> *registry = GetPluginRegistry();
920-
NSObject<FlutterPluginRegistrar> *registrar = [registry registrarForPlugin:pluginKey];
921-
id mockRegistrar = OCMPartialMock(registrar);
922-
// Empty stub to pass a check in Flutter's engine (double factory registration).
923-
// registerWithRegistrar gets called at the beginning of the test, and factory is registered
924-
// there. Additional call would try to register the same factory another time, which would fail a
925-
// check in the engine.
926-
OCMStub([mockRegistrar registerViewFactory:[OCMArg any] withId:[OCMArg any]]);
927-
928-
[FVPVideoPlayerPlugin registerWithRegistrar:mockRegistrar];
881+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
882+
__block NSObject *publishedValue;
883+
OCMStub([registrar publish:[OCMArg checkWithBlock:^BOOL(id value) {
884+
publishedValue = value;
885+
return YES;
886+
}]]);
929887

930-
id publishedValue = [registry valuePublishedByPlugin:pluginKey];
888+
[FVPVideoPlayerPlugin registerWithRegistrar:registrar];
931889

932890
XCTAssertNotNil(publishedValue);
933891
XCTAssertTrue([publishedValue isKindOfClass:[FVPVideoPlayerPlugin class]]);
934892
}
935893

936894
- (void)testFailedToLoadVideoEventShouldBeAlwaysSent {
937-
NSObject<FlutterPluginRegistrar> *registrar =
938-
[GetPluginRegistry() registrarForPlugin:@"testFailedToLoadVideoEventShouldBeAlwaysSent"];
895+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
939896
FVPVideoPlayerPlugin *videoPlayerPlugin =
940897
[[FVPVideoPlayerPlugin alloc] initWithRegistrar:registrar];
941898
FlutterError *error;
@@ -969,8 +926,7 @@ - (void)testFailedToLoadVideoEventShouldBeAlwaysSent {
969926
}
970927

971928
- (void)testUpdatePlayingStateShouldNotResetRate {
972-
NSObject<FlutterPluginRegistrar> *registrar =
973-
[GetPluginRegistry() registrarForPlugin:@"testUpdatePlayingStateShouldNotResetRate"];
929+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
974930

975931
FVPVideoPlayerPlugin *videoPlayerPlugin = [[FVPVideoPlayerPlugin alloc]
976932
initWithAVFactory:[[StubFVPAVFactory alloc] initWithPlayer:nil output:nil]
@@ -1005,12 +961,10 @@ - (void)testUpdatePlayingStateShouldNotResetRate {
1005961
}
1006962

1007963
- (void)testPlayerShouldNotDropEverySecondFrame {
1008-
NSObject<FlutterPluginRegistrar> *registrar =
1009-
[GetPluginRegistry() registrarForPlugin:@"testPlayerShouldNotDropEverySecondFrame"];
1010-
NSObject<FlutterPluginRegistrar> *partialRegistrar = OCMPartialMock(registrar);
964+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
1011965
NSObject<FlutterTextureRegistry> *mockTextureRegistry =
1012966
OCMProtocolMock(@protocol(FlutterTextureRegistry));
1013-
OCMStub([partialRegistrar textures]).andReturn(mockTextureRegistry);
967+
OCMStub([registrar textures]).andReturn(mockTextureRegistry);
1014968

1015969
FVPDisplayLink *displayLink = [[FVPDisplayLink alloc] initWithRegistrar:registrar
1016970
callback:^(){
@@ -1021,7 +975,7 @@ - (void)testPlayerShouldNotDropEverySecondFrame {
1021975
FVPVideoPlayerPlugin *videoPlayerPlugin = [[FVPVideoPlayerPlugin alloc]
1022976
initWithAVFactory:[[StubFVPAVFactory alloc] initWithPlayer:nil output:mockVideoOutput]
1023977
displayLinkFactory:stubDisplayLinkFactory
1024-
registrar:partialRegistrar];
978+
registrar:registrar];
1025979

1026980
FlutterError *error;
1027981
[videoPlayerPlugin initialize:&error];
@@ -1084,8 +1038,7 @@ - (void)testPlayerShouldNotDropEverySecondFrame {
10841038

10851039
#if TARGET_OS_IOS
10861040
- (void)testVideoPlayerShouldNotOverwritePlayAndRecordNorDefaultToSpeaker {
1087-
NSObject<FlutterPluginRegistrar> *registrar = [GetPluginRegistry()
1088-
registrarForPlugin:@"testVideoPlayerShouldNotOverwritePlayAndRecordNorDefaultToSpeaker"];
1041+
NSObject<FlutterPluginRegistrar> *registrar = OCMProtocolMock(@protocol(FlutterPluginRegistrar));
10891042
FVPVideoPlayerPlugin *videoPlayerPlugin =
10901043
[[FVPVideoPlayerPlugin alloc] initWithRegistrar:registrar];
10911044
FlutterError *error;

0 commit comments

Comments
 (0)