56 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			PHP
		
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			PHP
		
	
	
<?php
 | 
						|
 | 
						|
use League\Flysystem\Cached\Storage\Predis;
 | 
						|
use PHPUnit\Framework\TestCase;
 | 
						|
 | 
						|
class PredisTests extends TestCase
 | 
						|
{
 | 
						|
    public function testLoadFail()
 | 
						|
    {
 | 
						|
        $client = Mockery::mock('Predis\Client');
 | 
						|
        $command = Mockery::mock('Predis\Command\CommandInterface');
 | 
						|
        $client->shouldReceive('createCommand')->with('get', ['flysystem'])->once()->andReturn($command);
 | 
						|
        $client->shouldReceive('executeCommand')->with($command)->andReturn(null);
 | 
						|
        $cache = new Predis($client);
 | 
						|
        $cache->load();
 | 
						|
        $this->assertFalse($cache->isComplete('', false));
 | 
						|
    }
 | 
						|
 | 
						|
    public function testLoadSuccess()
 | 
						|
    {
 | 
						|
        $response = json_encode([[], ['' => true]]);
 | 
						|
        $client = Mockery::mock('Predis\Client');
 | 
						|
        $command = Mockery::mock('Predis\Command\CommandInterface');
 | 
						|
        $client->shouldReceive('createCommand')->with('get', ['flysystem'])->once()->andReturn($command);
 | 
						|
        $client->shouldReceive('executeCommand')->with($command)->andReturn($response);
 | 
						|
        $cache = new Predis($client);
 | 
						|
        $cache->load();
 | 
						|
        $this->assertTrue($cache->isComplete('', false));
 | 
						|
    }
 | 
						|
 | 
						|
    public function testSave()
 | 
						|
    {
 | 
						|
        $data = json_encode([[], []]);
 | 
						|
        $client = Mockery::mock('Predis\Client');
 | 
						|
        $command = Mockery::mock('Predis\Command\CommandInterface');
 | 
						|
        $client->shouldReceive('createCommand')->with('set', ['flysystem', $data])->once()->andReturn($command);
 | 
						|
        $client->shouldReceive('executeCommand')->with($command)->once();
 | 
						|
        $cache = new Predis($client);
 | 
						|
        $cache->save();
 | 
						|
    }
 | 
						|
 | 
						|
    public function testSaveWithExpire()
 | 
						|
    {
 | 
						|
        $data = json_encode([[], []]);
 | 
						|
        $client = Mockery::mock('Predis\Client');
 | 
						|
        $command = Mockery::mock('Predis\Command\CommandInterface');
 | 
						|
        $client->shouldReceive('createCommand')->with('set', ['flysystem', $data])->once()->andReturn($command);
 | 
						|
        $client->shouldReceive('executeCommand')->with($command)->once();
 | 
						|
        $expireCommand = Mockery::mock('Predis\Command\CommandInterface');
 | 
						|
        $client->shouldReceive('createCommand')->with('expire', ['flysystem', 20])->once()->andReturn($expireCommand);
 | 
						|
        $client->shouldReceive('executeCommand')->with($expireCommand)->once();
 | 
						|
        $cache = new Predis($client, 'flysystem', 20);
 | 
						|
        $cache->save();
 | 
						|
    }
 | 
						|
}
 |