Skip to content

Commit cdc6e1d

Browse files
authored
Merge pull request #1851 from denissonleal/hotfix/multiconnection-queue
fix queued mongodb usage check
2 parents 4c75151 + e8b6e75 commit cdc6e1d

File tree

3 files changed

+14
-1
lines changed

3 files changed

+14
-1
lines changed

src/Jenssegers/Mongodb/MongodbQueueServiceProvider.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
namespace Jenssegers\Mongodb;
44

5+
use DB;
56
use Illuminate\Queue\QueueServiceProvider;
67
use Jenssegers\Mongodb\Queue\Failed\MongoFailedJobProvider;
78

@@ -13,7 +14,7 @@ class MongodbQueueServiceProvider extends QueueServiceProvider
1314
protected function registerFailedJobServices()
1415
{
1516
// Add compatible queue failer if mongodb is configured.
16-
if (config('queue.failed.database') == 'mongodb') {
17+
if (DB::connection(config('queue.failed.database'))->getDriverName() == 'mongodb') {
1718
$this->app->singleton('queue.failer', function ($app) {
1819
return new MongoFailedJobProvider($app['db'], config('queue.failed.database'), config('queue.failed.table'));
1920
});

tests/QueueTest.php

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
<?php
22
declare(strict_types=1);
33

4+
use Jenssegers\Mongodb\Queue\Failed\MongoFailedJobProvider;
5+
46
class QueueTest extends TestCase
57
{
68
public function setUp(): void
@@ -56,6 +58,13 @@ public function testQueueJobExpired(): void
5658
$this->assertEquals(0, Queue::getDatabase()->table(Config::get('queue.connections.database.table'))->count());
5759
}
5860

61+
public function testFailQueueJob(): void
62+
{
63+
$provider = app('queue.failer');
64+
65+
$this->assertInstanceOf(MongoFailedJobProvider::class, $provider);
66+
}
67+
5968
public function testFindFailJobNull(): void
6069
{
6170
Config::set('queue.failed.database', 'mongodb');

tests/TestCase.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ protected function getPackageProviders($app)
2828
{
2929
return [
3030
Jenssegers\Mongodb\MongodbServiceProvider::class,
31+
Jenssegers\Mongodb\MongodbQueueServiceProvider::class,
3132
Jenssegers\Mongodb\Auth\PasswordResetServiceProvider::class,
3233
Jenssegers\Mongodb\Validation\ValidationServiceProvider::class,
3334
];
@@ -50,6 +51,7 @@ protected function getEnvironmentSetUp($app)
5051
$app['config']->set('database.default', 'mongodb');
5152
$app['config']->set('database.connections.mysql', $config['connections']['mysql']);
5253
$app['config']->set('database.connections.mongodb', $config['connections']['mongodb']);
54+
$app['config']->set('database.connections.mongodb2', $config['connections']['mongodb']);
5355
$app['config']->set('database.connections.dsn_mongodb', $config['connections']['dsn_mongodb']);
5456

5557
$app['config']->set('auth.model', 'User');
@@ -63,5 +65,6 @@ protected function getEnvironmentSetUp($app)
6365
'queue' => 'default',
6466
'expire' => 60,
6567
]);
68+
$app['config']->set('queue.failed.database', 'mongodb2');
6669
}
6770
}

0 commit comments

Comments
 (0)