Fix ChoiceNodeContextNode's byQName indexing 27/100227/2
authorRobert Varga <robert.varga@pantheon.tech>
Wed, 23 Mar 2022 17:31:39 +0000 (18:31 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Wed, 23 Mar 2022 17:46:01 +0000 (18:46 +0100)
When we are traversing by provided QName, we are meant to encounter
each ContextNode significant to PathArgument construction. This works
for all cases except for 'choice->case->choice', where
ChoiceNodeContextNode's internal indexing does not account for itself:
it ends up storing the second ChoiceNodeContextNode under the
ChoiceSchemaNode's QName -- and therefore it fails to find it by its
consituents' QNames.

This has impact primarily on instance-identifier parsers, as evidenced
by the corresponding JSON-based unit test.

Fix this by properly overriding getQNameIdentifiers() to provide the
internal table's keySet().

JIRA: YANGTOOLS-1411
Change-Id: I11df2d4072157e06342c2899dbcf02f74eef8090
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>

No differences found