mirror of
https://github.com/snipe/snipe-it.git
synced 2024-11-14 01:24:06 -08:00
53 lines
1.5 KiB
PHP
53 lines
1.5 KiB
PHP
<?php
|
|
namespace Tests\Unit;
|
|
|
|
use App\Models\AssetMaintenance;
|
|
use Carbon\Carbon;
|
|
use Tests\Support\InteractsWithSettings;
|
|
use Tests\TestCase;
|
|
|
|
class AssetMaintenanceTest extends TestCase
|
|
{
|
|
use InteractsWithSettings;
|
|
|
|
public function testZerosOutWarrantyIfBlank()
|
|
{
|
|
$c = new AssetMaintenance;
|
|
$c->is_warranty = '';
|
|
$this->assertTrue($c->is_warranty === 0);
|
|
$c->is_warranty = '4';
|
|
$this->assertTrue($c->is_warranty == 4);
|
|
}
|
|
|
|
public function testSetsCostsAppropriately()
|
|
{
|
|
$c = new AssetMaintenance();
|
|
$c->cost = '0.00';
|
|
$this->assertTrue($c->cost === null);
|
|
$c->cost = '9.54';
|
|
$this->assertTrue($c->cost === 9.54);
|
|
$c->cost = '9.50';
|
|
$this->assertTrue($c->cost === 9.5);
|
|
}
|
|
|
|
public function testNullsOutNotesIfBlank()
|
|
{
|
|
$c = new AssetMaintenance;
|
|
$c->notes = '';
|
|
$this->assertTrue($c->notes === null);
|
|
$c->notes = 'This is a long note';
|
|
$this->assertTrue($c->notes === 'This is a long note');
|
|
}
|
|
|
|
public function testNullsOutCompletionDateIfBlankOrInvalid()
|
|
{
|
|
$c = new AssetMaintenance;
|
|
$c->completion_date = '';
|
|
$this->assertTrue($c->completion_date === null);
|
|
$c->completion_date = '0000-00-00';
|
|
$this->assertTrue($c->completion_date === null);
|
|
$c->completion_date = '2017-05-12';
|
|
$this->assertTrue($c->completion_date == Carbon::parse('2017-05-12'));
|
|
}
|
|
}
|