Skip to content

Commit fc49a83

Browse files
author
Stiven Katuuk
committed
fix: skipping test and fix action logic
1 parent fdb7477 commit fc49a83

File tree

2 files changed

+10
-7
lines changed

2 files changed

+10
-7
lines changed

src/Actions/ResolveForPropertyValueAction.php

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ class ResolveForPropertyValueAction
66
{
77
/**
88
* Action that resolve property value of log
9-
* that cannot be handled by PHP or This Package
9+
* that cannot be handled by PHP as default
1010
*
1111
* @param mixed $value
1212
* @return mixed
@@ -15,6 +15,9 @@ public static function execute(mixed $value): mixed
1515
{
1616
$instance = new static;
1717

18+
/**
19+
* Give a fallback value if value not a backed enum
20+
*/
1821
if ($instance->isValueAreEnum($value)) {
1922
return $value->value ?? $value->name;
2023
}
@@ -28,10 +31,8 @@ protected function isValueAreEnum($value): bool
2831
return false;
2932
}
3033

31-
$enumNamespace = is_object($value)
32-
? get_class($value)
33-
: $value;
34+
$enumNamespace = is_object($value) ? get_class($value): $value;
3435

35-
return enum_exists($enumNamespace);
36+
return ! is_array($value) && enum_exists($enumNamespace);
3637
}
3738
}

tests/AbleStoreNonBackedEnumTest.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@
1919

2020
expect($latestActivity->description)->toEqual($description)
2121
->and($latestActivity->properties['role'])->toEqual('User');
22-
});
22+
})
23+
->skip(! function_exists('enum_exists'), "PHP doesn't support enum");
2324

2425
it('can store non-backed enum with properties', function () {
2526
$description = 'ROLE LOG';
@@ -32,4 +33,5 @@
3233

3334
expect($latestActivity->description)->toEqual($description)
3435
->and($latestActivity->properties['role'])->toEqual('User');
35-
});
36+
})
37+
->skip(! function_exists('enum_exists'), "PHP doesn't support enum");

0 commit comments

Comments
 (0)