Skip to content

Commit d537537

Browse files
authored
Fix test confirming send_events = false is honored (#78)
1 parent 77b990e commit d537537

File tree

1 file changed

+20
-19
lines changed

1 file changed

+20
-19
lines changed

tests/LDClientTest.php

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,11 @@
33

44
use InvalidArgumentException;
55
use LaunchDarkly\EvaluationReason;
6-
use LaunchDarkly\FeatureRequester;
76
use LaunchDarkly\LDClient;
87
use LaunchDarkly\LDUser;
98
use LaunchDarkly\LDUserBuilder;
10-
use LaunchDarkly\Impl\Events\EventFactory;
11-
use LaunchDarkly\Impl\Events\EventProcessor;
129
use LaunchDarkly\Impl\Model\FeatureFlag;
1310
use Psr\Log\LoggerInterface;
14-
use PHPUnit\Framework\TestCase;
1511

1612
class LDClientTest extends \PHPUnit\Framework\TestCase
1713
{
@@ -64,7 +60,7 @@ private function makeClient($overrideOptions = array())
6460
);
6561
return new LDClient("someKey", array_merge($options, $overrideOptions));
6662
}
67-
63+
6864
public function testVariationReturnsFlagValue()
6965
{
7066
$flag = $this->makeOffFlagWithValue('feature', 'value');
@@ -362,7 +358,7 @@ public function testAllFlagsStateReturnsState()
362358
$builder = new LDUserBuilder(3);
363359
$user = $builder->build();
364360
$state = $client->allFlagsState($user);
365-
361+
366362
$this->assertTrue($state->isValid());
367363
$this->assertEquals(array('feature' => 'off'), $state->toValuesMap());
368364
$expectedState = array(
@@ -405,7 +401,7 @@ public function testAllFlagsStateReturnsStateWithReasons()
405401
$builder = new LDUserBuilder(3);
406402
$user = $builder->build();
407403
$state = $client->allFlagsState($user, array('withReasons' => true));
408-
404+
409405
$this->assertTrue($state->isValid());
410406
$this->assertEquals(array('feature' => 'off'), $state->toValuesMap());
411407
$expectedState = array(
@@ -447,7 +443,7 @@ public function testAllFlagsStateCanFilterForClientSideFlags()
447443
$builder = new LDUserBuilder(3);
448444
$user = $builder->build();
449445
$state = $client->allFlagsState($user, array('clientSideOnly' => true));
450-
446+
451447
$this->assertTrue($state->isValid());
452448
$this->assertEquals(array('client-side-1' => 'value1', 'client-side-2' => 'value2'), $state->toValuesMap());
453449
}
@@ -507,7 +503,7 @@ public function testAllFlagsStateCanOmitDetailsForUntrackedFlags()
507503
$builder = new LDUserBuilder(3);
508504
$user = $builder->build();
509505
$state = $client->allFlagsState($user, array('withReasons' => true, 'detailsOnlyForTrackedFlags' => true));
510-
506+
511507
$this->assertTrue($state->isValid());
512508
$this->assertEquals(array('flag1' => 'value1', 'flag2' => 'value2', 'flag3' => 'value3'), $state->toValuesMap());
513509
$expectedState = array(
@@ -610,7 +606,7 @@ public function testAliasEventsAreCorrect()
610606
{
611607
$ep = new MockEventProcessor();
612608
$client = $this->makeClient(array('event_processor' => $ep));
613-
609+
614610
$user_builder = new LDUserBuilder("[email protected]");
615611
$user = $user_builder->anonymous(false)->build();
616612
$anon_builder = new LDUserBuilder("[email protected]");
@@ -639,16 +635,21 @@ public function testEventsAreNotPublishedIfSendEventsIsFalse()
639635
$mockPublisher = new MockEventPublisher("", array());
640636
$options = array(
641637
'feature_requester_class' => MockFeatureRequester::class,
642-
'event_publisher' => $mockPublisher
638+
'event_publisher' => $mockPublisher,
639+
'send_events' => false,
643640
);
644641
$client = new LDClient("someKey", $options);
645642
$client->track('eventkey', new LDUser('userkey'));
643+
644+
// We don't flush the event processor until __destruct is called. Let's
645+
// force that by unsetting this variable.
646+
unset($client);
646647
$this->assertEquals(array(), $mockPublisher->payloads);
647648
}
648649

649650
public function testOnlyValidFeatureRequester()
650651
{
651-
$this->expectException(\InvalidArgumentException::class);
652+
$this->expectException(InvalidArgumentException::class);
652653
new LDClient("BOGUS_SDK_KEY", ['feature_requester_class' => \stdClass::class]);
653654
}
654655

@@ -658,29 +659,29 @@ public function testSecureModeHash()
658659
$user = new LDUser("Message");
659660
$this->assertEquals("aa747c502a898200f9e4fa21bac68136f886a0e27aec70ba06daf2e2a5cb5597", $client->secureModeHash($user));
660661
}
661-
662+
662663
public function testLoggerInterfaceWarn()
663664
{
664665
// Use LoggerInterface impl, instead of concreate Logger from Monolog, to demonstrate the problem with `warn`.
665666
$logger = $this->getMockBuilder(LoggerInterface::class)->getMock();
666-
667+
667668
$logger->expects(self::atLeastOnce())->method('warning');
668-
669+
669670
$client = new LDClient('secret', [
670671
'logger' => $logger,
671672
]);
672-
673+
673674
$user = new LDUser('');
674-
675+
675676
$client->variation('MyFeature', $user);
676677
}
677-
678+
678679
private function getPrivateField(&$object, $fieldName)
679680
{
680681
$reflection = new \ReflectionClass(get_class($object));
681682
$field = $reflection->getProperty($fieldName);
682683
$field->setAccessible(true);
683-
684+
684685
return $field->getValue($object);
685686
}
686687
}

0 commit comments

Comments
 (0)