for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Tzsk\Payu\Tests\Helpers;
use Tzsk\Payu\Tests\TestCase;
use Illuminate\Support\Facades\Session;
use Tzsk\Payu\Helpers\Storage;
class StorageTest extends TestCase
{
public function testItWillHaveSimpleStorageFields()
$data = $this->getSimpleData();
$storage = new Storage();
$this->assertEquals($data['status_url'], $storage->getStatusUrl());
$this->assertEquals($data['payment'], $storage->getPayment());
$this->assertNotEmpty($storage->getAccount());
$this->assertEmpty($storage->getModel());
$this->assertTrue(is_array($storage->getData()));
}
public function testItWillHaveCustomExtendedStorageFields()
$data = $this->getExtendedData();
$data
This check looks for variable assignements that are either overwritten by other assignments or where the variable is not used subsequently.
$myVar = 'Value'; $higher = false; if (rand(1, 6) > 3) { $higher = true; } else { $higher = false; }
Both the $myVar assignment in line 1 and the $higher assignment in line 2 are dead. The first because $myVar is never used and the second because $higher is always overwritten for every possible time line.
$myVar
$higher
$this->assertTrue(is_array($storage->getModel()));
public function getExtendedData()
$data = [
'data' => [],
'status_url' => 'foo',
'account' => 'bar',
'model' => ['id' => 1, 'class' => 'baz'],
'payment' => 'foo'
];
Session::put('tzsk_payu_data', $data);
return $data;
public function getSimpleData()
'account' => null,
'model' => null,
This check looks for variable assignements that are either overwritten by other assignments or where the variable is not used subsequently.
Both the
$myVar
assignment in line 1 and the$higher
assignment in line 2 are dead. The first because$myVar
is never used and the second because$higher
is always overwritten for every possible time line.