Laravel - Mocking - Facade Spies

If you would like to spy on a facade, you may call the spy method on the corresponding facade. Spies are similar to mocks; however, spies record any interaction between the spy and the code being tested, allowing you to make assertions after the code is executed:

    
    use Illuminate\Support\Facades\Cache;
    
    public function test_values_are_be_stored_in_cache()
    {
        Cache::spy();
    
        $response = $this->get('/');
    
        $response->assertStatus(200);
    
        Cache::shouldHaveReceived('put')->once()->with('name', 'Taylor', 10);
    }