true, 'messageDismissed' => false, 'expectedResult' => true, ], [ 'isSplitActive' => true, 'messageDismissed' => 'yes', 'expectedResult' => false, ], ]; } /** * @dataProvider shouldShowSplitActivationNoticeDataProvider */ public function testShouldShowSplitActivationNotice( bool $isSplitActive, string|false $messageDismissed, bool $expectedResult, ): void { $wpAdapter = MockFactory::createWpAdapter( $this ); $wpAdapter ->method( 'getTransient' ) ->willReturn( $messageDismissed ); $downloader = $this->createMock( FeatureFlagDownloader::class ); $downloader ->method( 'getFlags' ) ->willReturn( [ FeatureFlagProvider::FLAG_SPLIT_ACTIVE => $isSplitActive, ] ); $manager = new FeatureFlagProvider( $wpAdapter, $downloader, ); self::assertEquals( $expectedResult, $manager->shouldShowSplitActivationNotice() ); } }