Skip to content

Commit 860610d

Browse files
committed
Add logger() helper
commit 622f16d Author: Adam Tomat <[email protected]> Date: Mon Jul 22 10:45:24 2019 +0100 Fix bug with logger() helper test commit 1320d23 Author: Adam Tomat <[email protected]> Date: Wed Jul 17 13:12:14 2019 +0100 Add logger helper
1 parent 970feea commit 860610d

File tree

3 files changed

+68
-5
lines changed

3 files changed

+68
-5
lines changed

src/Helpers.php

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
use Rareloop\Lumberjack\Http\Responses\RedirectResponse;
1010
use Rareloop\Lumberjack\Http\Responses\TimberResponse;
1111
use Rareloop\Lumberjack\Facades\Session;
12+
use Rareloop\Lumberjack\Facades\Log;
1213

1314
class Helpers
1415
{
@@ -80,4 +81,13 @@ public static function back()
8081
{
8182
return static::redirect(static::session()->previousUrl());
8283
}
84+
85+
public static function logger($message = null, $context = [])
86+
{
87+
if (is_null($message)) {
88+
return static::app('logger');
89+
}
90+
91+
return Log::debug($message, $context);
92+
}
8393
}

src/functions.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,3 +64,10 @@ function request()
6464
return call_user_func_array([Helpers::class, 'request'], func_get_args());
6565
}
6666
}
67+
68+
if (!function_exists('logger')) {
69+
function logger()
70+
{
71+
return call_user_func_array([Helpers::class, 'logger'], func_get_args());
72+
}
73+
}

tests/Unit/HelpersTest.php

Lines changed: 51 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
use Rareloop\Lumberjack\Exceptions\HandlerInterface;
1818
use Rareloop\Lumberjack\Http\Responses\TimberResponse;
1919
use Rareloop\Lumberjack\Http\Responses\RedirectResponse;
20+
use Monolog\Logger;
2021

2122
/**
2223
* @runTestsInSeparateProcesses
@@ -140,8 +141,7 @@ public function can_get_a_url_for_a_named_route()
140141
$app = new Application;
141142
FacadeFactory::setContainer($app);
142143
$router = new Router;
143-
$router->get('test/route', function () {
144-
})->name('test.route');
144+
$router->get('test/route', function () { })->name('test.route');
145145
$app->bind('router', $router);
146146

147147
$url = Helpers::route('test.route');
@@ -155,8 +155,7 @@ public function can_get_a_url_for_a_named_route_with_params()
155155
$app = new Application;
156156
FacadeFactory::setContainer($app);
157157
$router = new Router;
158-
$router->get('test/{name}', function ($name) {
159-
})->name('test.route');
158+
$router->get('test/{name}', function ($name) { })->name('test.route');
160159
$app->bind('router', $router);
161160

162161
$url = Helpers::route('test.route', [
@@ -306,11 +305,58 @@ public function can_get_server_request()
306305

307306
$this->assertSame($request, Helpers::request());
308307
}
308+
309+
/** @test */
310+
public function can_get_logger()
311+
{
312+
$app = new Application;
313+
FacadeFactory::setContainer($app);
314+
315+
$logger = new Logger('app');
316+
$app->bind('logger', $logger);
317+
318+
$newLogger = Helpers::logger();
319+
320+
$this->assertInstanceOf(Logger::class, $newLogger);
321+
$this->assertSame($logger, $newLogger);
322+
}
323+
324+
/** @test */
325+
public function can_write_debug_log()
326+
{
327+
$app = new Application;
328+
FacadeFactory::setContainer($app);
329+
330+
$logger = \Mockery::mock(Logger::class)->makePartial();
331+
$logger->shouldReceive('debug')->with('Example message', [])->once();
332+
333+
$app->bind('logger', $logger);
334+
335+
Helpers::logger('Example message');
336+
}
337+
338+
/** @test */
339+
public function can_write_debug_log_with_context()
340+
{
341+
$app = new Application;
342+
FacadeFactory::setContainer($app);
343+
344+
$logger = \Mockery::mock(Logger::class)->makePartial();
345+
$logger->shouldReceive('debug')->with('Example message', [
346+
'test' => 123,
347+
])->once();
348+
349+
$app->bind('logger', $logger);
350+
351+
Helpers::logger('Example message', [
352+
'test' => 123,
353+
]);
354+
}
309355
}
310356

311357
class TestExceptionHandler extends Handler
312358
{
313-
359+
// ...
314360
}
315361

316362
class RequiresConstructorParams

0 commit comments

Comments
 (0)