Skip to content

Commit d7249ce

Browse files
authored
Merge pull request #71 from abacaphiliac/logger-interface
use `\Psr\Log\LoggerInterface::warning` instead of `\Monolog\Logger::warn` in `\LaunchDarkly\LDClient`
2 parents f7ca356 + c1423c4 commit d7249ce

File tree

2 files changed

+22
-5
lines changed

2 files changed

+22
-5
lines changed

src/LaunchDarkly/LDClient.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ class LDClient {
2424
protected $_send_events = true;
2525
/** @var array|mixed */
2626
protected $_defaults = array();
27-
/** @var mixed|LoggerInterface */
27+
/** @var LoggerInterface */
2828
protected $_logger;
2929

3030
/** @var FeatureRequester */
@@ -113,11 +113,11 @@ public function variation($key, $user, $default = false) {
113113
try {
114114
if (is_null($user) || is_null($user->getKey())) {
115115
$this->_sendFlagRequestEvent($key, $user, $default, $default);
116-
$this->_logger->warn("Variation called with null user or null user key! Returning default value");
116+
$this->_logger->warning("Variation called with null user or null user key! Returning default value");
117117
return $default;
118118
}
119119
if ($user->isKeyBlank()) {
120-
$this->_logger->warn("User key is blank. Flag evaluation will proceed, but the user will not be stored in LaunchDarkly.");
120+
$this->_logger->warning("User key is blank. Flag evaluation will proceed, but the user will not be stored in LaunchDarkly.");
121121
}
122122
$flag = $this->_featureRequester->get($key);
123123

@@ -178,7 +178,7 @@ public function track($eventName, $user, $data) {
178178
return;
179179
}
180180
if (is_null($user) || $user->isKeyBlank()) {
181-
$this->_logger->warn("Track called with null user or null/empty user key!");
181+
$this->_logger->warning("Track called with null user or null/empty user key!");
182182
}
183183

184184
$event = array();
@@ -200,7 +200,7 @@ public function identify($user) {
200200
return;
201201
}
202202
if (is_null($user) || $user->isKeyBlank()) {
203-
$this->_logger->warn("Track called with null user or null/empty user key!");
203+
$this->_logger->warning("Track called with null user or null/empty user key!");
204204
}
205205

206206
$event = array();

tests/LDClientTest.php

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
use LaunchDarkly\LDClient;
77
use LaunchDarkly\LDUser;
88
use LaunchDarkly\LDUserBuilder;
9+
use Psr\Log\LoggerInterface;
910

1011

1112
class LDClientTest extends \PHPUnit_Framework_TestCase {
@@ -64,6 +65,22 @@ public function testSecureModeHash() {
6465
$user = new LDUser("Message");
6566
$this->assertEquals("aa747c502a898200f9e4fa21bac68136f886a0e27aec70ba06daf2e2a5cb5597", $client->secureModeHash($user));
6667
}
68+
69+
public function testLoggerInterfaceWarn()
70+
{
71+
// Use LoggerInterface impl, instead of concreate Logger from Monolog, to demonstrate the problem with `warn`.
72+
$logger = $this->getMockBuilder(LoggerInterface::class)->getMock();
73+
74+
$logger->expects(self::atLeastOnce())->method('warning');
75+
76+
$client = new LDClient('secret', [
77+
'logger' => $logger,
78+
]);
79+
80+
$user = new LDUser('');
81+
82+
$client->variation('MyFeature', $user);
83+
}
6784
}
6885

6986

0 commit comments

Comments
 (0)