!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 

uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Safe-mode: OFF (not secure)

/var/www/html/notification/vendor/illuminate/testing/Concerns/   drwxr-xr-x
Free 13.15 GB of 57.97 GB (22.68%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     TestDatabases.php (5.02 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

namespace Illuminate\Testing\Concerns;

use 
Illuminate\Database\QueryException;
use 
Illuminate\Foundation\Testing;
use 
Illuminate\Support\Arr;
use 
Illuminate\Support\Facades\Artisan;
use 
Illuminate\Support\Facades\DB;
use 
Illuminate\Support\Facades\ParallelTesting;
use 
Illuminate\Support\Facades\Schema;

trait 
TestDatabases
{
    
/**
     * Indicates if the test database schema is up to date.
     *
     * @var bool
     */
    
protected static $schemaIsUpToDate false;

    
/**
     * Boot a test database.
     *
     * @return void
     */
    
protected function bootTestDatabase()
    {
        
ParallelTesting::setUpProcess(function () {
            
$this->whenNotUsingInMemoryDatabase(function ($database) {
                if (
ParallelTesting::option('recreate_databases')) {
                    
Schema::dropDatabaseIfExists(
                        
$this->testDatabase($database)
                    );
                }
            });
        });

        
ParallelTesting::setUpTestCase(function ($testCase) {
            
$uses array_flip(class_uses_recursive(get_class($testCase)));

            
$databaseTraits = [
                
Testing\DatabaseMigrations::class,
                
Testing\DatabaseTransactions::class,
                
Testing\RefreshDatabase::class,
            ];

            if (
Arr::hasAny($uses$databaseTraits) && ! ParallelTesting::option('without_databases')) {
                
$this->whenNotUsingInMemoryDatabase(function ($database) use ($uses) {
                    [
$testDatabase$created] = $this->ensureTestDatabaseExists($database);

                    
$this->switchToDatabase($testDatabase);

                    if (isset(
$uses[Testing\DatabaseTransactions::class])) {
                        
$this->ensureSchemaIsUpToDate();
                    }

                    if (
$created) {
                        
ParallelTesting::callSetUpTestDatabaseCallbacks($testDatabase);
                    }
                });
            }
        });

        
ParallelTesting::tearDownProcess(function () {
            
$this->whenNotUsingInMemoryDatabase(function ($database) {
                if (
ParallelTesting::option('drop_databases')) {
                    
Schema::dropDatabaseIfExists(
                        
$this->testDatabase($database)
                    );
                }
            });
        });
    }

    
/**
     * Ensure a test database exists and returns its name.
     *
     * @param  string  $database
     * @return array
     */
    
protected function ensureTestDatabaseExists($database)
    {
        
$testDatabase $this->testDatabase($database);

        try {
            
$this->usingDatabase($testDatabase, function () {
                
Schema::hasTable('dummy');
            });
        } catch (
QueryException $e) {
            
$this->usingDatabase($database, function () use ($testDatabase) {
                
Schema::dropDatabaseIfExists($testDatabase);
                
Schema::createDatabase($testDatabase);
            });

            return [
$testDatabasetrue];
        }

        return [
$testDatabasefalse];
    }

    
/**
     * Ensure the current database test schema is up to date.
     *
     * @return void
     */
    
protected function ensureSchemaIsUpToDate()
    {
        if (! static::
$schemaIsUpToDate) {
            
Artisan::call('migrate');

            static::
$schemaIsUpToDate true;
        }
    }

    
/**
     * Runs the given callable using the given database.
     *
     * @param  string  $database
     * @param  callable  $callable
     * @return void
     */
    
protected function usingDatabase($database$callable)
    {
        
$original DB::getConfig('database');

        try {
            
$this->switchToDatabase($database);
            
$callable();
        } finally {
            
$this->switchToDatabase($original);
        }
    }

    
/**
     * Apply the given callback when tests are not using in memory database.
     *
     * @param  callable  $callback
     * @return void
     */
    
protected function whenNotUsingInMemoryDatabase($callback)
    {
        
$database DB::getConfig('database');

        if (
$database !== ':memory:') {
            
$callback($database);
        }
    }

    
/**
     * Switch to the given database.
     *
     * @param  string  $database
     * @return void
     */
    
protected function switchToDatabase($database)
    {
        
DB::purge();

        
$default config('database.default');

        
$url config("database.connections.{$default}.url");

        if (
$url) {
            
config()->set(
                
"database.connections.{$default}.url",
                
preg_replace('/^(.*)(\/[\w-]*)(\??.*)$/'"$1/{$database}$3"$url),
            );
        } else {
            
config()->set(
                
"database.connections.{$default}.database",
                
$database,
            );
        }
    }

    
/**
     * Returns the test database name.
     *
     * @return string
     */
    
protected function testDatabase($database)
    {
        
$token ParallelTesting::token();

        return 
"{$database}_test_{$token}";
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0065 ]--