1. Go to this page and download the library: Download thatsus/laravel-better-bind library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
thatsus / laravel-better-bind example snippets
class TestCase
{
use \ThatsUs\BetterBind;
...
}
class DogTest extends TestCase
{
public function testBark()
{
$mock = Mockery::mock(Sound::class);
$mock->shouldReceive('emit')
->once();
$this->betterInstance(Sound::class, $mock, $params);
$dog = new Dog();
$dog->bark();
$this->assertEquals(['animal' => $dog], $params);
}
}
class Sound
{
public function __construct(Animal $animal)
{
// ...
}
}
class Dog
{
public function bark()
{
App::makeWith(Sound::class, ['animal' => $this])->emit();
}
}
class Dog
{
public function bark()
{
App::makeWith(Sound::class, [$this])->emit();
}
}
class Dog
{
public function bark()
{
App::makeWith(Sound::class, ['animal' => $this, 'volume' => 'loud'])->emit();
}
}
class Dog
{
public function bark()
{
App::makeWith(Sound::class, ['animal' => 'this'])->emit();
}
}
class DogTest extends TestCase
{
public function testBark()
{
$mock = Mockery::mock(Sound::class);
$mock->shouldReceive('emit')
->once();
$this->betterInstance(Sound::class, $mock, $params);
$dog = new Dog();
$dog->bark();
$this->assertEquals(['animal' => $dog], $params);
}
}
class DogTest extends TestCase
{
public function testBark()
{
$mock = Mockery::mock(Sound::class);
$mock->shouldReceive('emit')
->once();
App::bind(Sound::class, function ($app, $bind_params) use (&$params, $mock) {
$params = $bind_params;
return $mock;
});
$dog = new Dog();
$dog->bark();
$this->assertEquals(['animal' => $dog], $params);
}
}
class Dog
{
public function bark()
{
App::makeWith(Sound::class, [$this])->emit();
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.