Enforce augment statement argument well-formedness 61/93961/3
authorRobert Varga <robert.varga@pantheon.tech>
Fri, 27 Nov 2020 16:02:43 +0000 (17:02 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Fri, 27 Nov 2020 17:34:42 +0000 (18:34 +0100)
commiteb5ea74052360c816b88f33680116e545f01c8a7
treeb76f477639e40ffc7d71d9fe716e5f1d0f36b360
parentd8119ea5b4ead35fc3dfad489e80e49a034226f6
Enforce augment statement argument well-formedness

'augment' statement has dual use, depending on where it is declared.
Each use requires a different schema node identifier:
- plain augment requires SchemaNodeIdentifier.Absolute
- uses/augment requires SchemaNodeIdentifier.Descendant

Make sure we enforce proper parsing, so that our argument will end
up being correctly captured (and can be used for further reasoning).

JIRA: YANGTOOLS-1189
Change-Id: I4e628fd1aee29e103a045cfe90bae58f91ce32ed
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/augment/AbstractAugmentStatementSupport.java
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/YT1189Test.java [new file with mode: 0644]
yang/yang-parser-rfc7950/src/test/resources/bugs/YT1189/bar.yang [new file with mode: 0644]
yang/yang-parser-rfc7950/src/test/resources/bugs/YT1189/foo.yang [new file with mode: 0644]
yang/yang-parser-rfc7950/src/test/resources/bugs/bug5481/module2.yang