HEX
Server: LiteSpeed
System: Linux s1049.use1.mysecurecloudhost.com 4.18.0-477.27.2.lve.el8.x86_64 #1 SMP Wed Oct 11 12:32:56 UTC 2023 x86_64
User: xedaptot (3356)
PHP: 8.3.31
Disabled: NONE
Upload Files
File: /home/xedaptot/be.naniguide.com/tests/Unit/RemoteSubscription/RemoteCheckCommandTest.php
<?php

namespace Tests\Unit\RemoteSubscription;

use Tests\TestCase;
use Mockery;
use App\Model\PaymentGateway;
use App\Services\Subscription\SubscriptionManagementService;

class RemoteCheckCommandTest extends TestCase
{
    public function test_check_shows_no_gateways_message()
    {
        $subscriptionService = Mockery::mock(SubscriptionManagementService::class);
        $subscriptionService->shouldReceive('getRemoteGateways')->andReturn([]);
        $this->app->instance(SubscriptionManagementService::class, $subscriptionService);

        $this->artisan('remote:check')
            ->expectsOutputToContain('No active remote subscription gateways found')
            ->assertExitCode(0);
    }

    /**
     * Note: Tests that require DB (gateway listing with PlanRemoteMapping counts)
     * are not included here since plan_remote_mappings table may not exist.
     * The command logic is thoroughly tested via SyncService + DTO unit tests.
     */

    protected function tearDown(): void
    {
        Mockery::close();
        parent::tearDown();
    }
}