Adds basic test suite for existing functionality #8
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds a basic test suite for the existing functionality. Since I'm not too familiar with Livewire, I didn't add any tests using
Livewire::test()
. I also tried to mostly document the existing behavior without changing too much of the implementation.There were a few issues I noticed while writing the tests:
execute
method on theSpotlight
class does not check ifgetCommandById
actually found a command. If it returnsnull
themethod_exists
check will fail with aTypeError
.placeholder
onSpotlightCommandDependency
doesn't have a default value but also isn't required in the constructor. This effectively makes it mandatory to callsetPlaceholder
since you'd run into an error when callingtoArray
because the$placeholder
property has not been initialized yet.setType
method on theSpotlightCommandDependency
class accepts any string, even though it looks like the package only knows how to deal withsearch
andinput
. Maybe replace it with two separate methods to set the$type
tosearch
orinput
, respectively?Anyways, let me know what you think!