test(selector): add tests for "Supported Forms" #15
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.
Supported forms testing
This PR provides a set of testcases to verify that the
Selector
behaves properly according to the "Supported Forms" table proposed in a GitHub issue at ucan-wg/delegation#5 (comment).The test cases are divided into three groups:
datamodel.Node
snil
in Goerror
Currently all the
nil
anderror
testcases pass. There are tennode
testcases that are failing with two having obvious causes:The "Negative Index" test properly
Parse
s theSelector
text but fails with anindex out of range [-1]
panic whenSelect
is called.The "Optional Iterator" test returns the expected values but also a
nil
value for the second element which isn't aList
. This should probably be pruned duringSelect
.