mirror of
https://github.com/snipe/snipe-it.git
synced 2025-01-12 22:37:28 -08:00
Add guard against attempting to access property on unsaved template
This commit is contained in:
parent
87853921c3
commit
4c62e8ade9
|
@ -62,6 +62,10 @@ class ReportTemplate extends Model
|
|||
|
||||
public function selectValue(string $property, string $model = null)
|
||||
{
|
||||
if (!isset($this->options[$property])) {
|
||||
return null;
|
||||
}
|
||||
|
||||
// If a model is provided then we should ensure we only return
|
||||
// the value if the model still exists.
|
||||
if ($model) {
|
||||
|
|
|
@ -61,6 +61,7 @@ class ReportTemplateTest extends TestCase
|
|||
$this->assertEquals('4', $savedReport->selectValue('is_a_text_field_as_well'));
|
||||
$this->assertEquals('', $savedReport->selectValue('non_existent_key'));
|
||||
$this->assertNull($savedReport->selectValue('contains_a_null_value'));
|
||||
$this->assertNull((new ReportTemplate)->selectValue('value_on_unsaved_template'));
|
||||
}
|
||||
|
||||
public function testParsingSelectValues()
|
||||
|
@ -102,6 +103,7 @@ class ReportTemplateTest extends TestCase
|
|||
|
||||
$this->assertNull($templateWithDeletedId->selectValue('single_value', Location::class));
|
||||
$this->assertNull($templateWithInvalidId->selectValue('single_value', Location::class));
|
||||
$this->assertNull((new ReportTemplate)->selectValue('value_on_unsaved_template', Location::class));
|
||||
}
|
||||
|
||||
public function testSelectValuesDoNotIncludeDeletedOrNonExistentModels()
|
||||
|
|
Loading…
Reference in a new issue