[Cps Path Parser] Don't quote numbers in comparison 27/139527/2
authordanielhanrahan <daniel.hanrahan@est.tech>
Thu, 21 Nov 2024 18:05:05 +0000 (18:05 +0000)
committerdanielhanrahan <daniel.hanrahan@est.tech>
Mon, 25 Nov 2024 18:00:28 +0000 (18:00 +0000)
commit1ea72e9c1dff6b1fcdd584362d1d2aaa1d9ce28d
tree983642f2ca867971f2c4c168ef31bc2635752cc7
parent295495b3f4376f42c5788e89725aef0466a8a578
[Cps Path Parser] Don't quote numbers in comparison

Presently, Cps Path Parser will wrap numbers in quotes when
normalizing or getting parent path, which can lead to invalid paths.
For example:
  /books[@price > 15]
will be normalized to:
  /books[@price>'15']

This causes trouble when running queries on normalized paths:
(CpsPathException: "can use only > with integer")

Note this patch will still normalize numbers to string for equality:
  /books[@price='15']
Much existing code relies on this, and it does not cause problems.

Issue-ID: CPS-2365
Signed-off-by: danielhanrahan <daniel.hanrahan@est.tech>
Change-Id: I15d326ad7db2311b64c636283a4d52623a125176
cps-path-parser/src/main/java/org/onap/cps/cpspath/parser/CpsPathBuilder.java
cps-path-parser/src/test/groovy/org/onap/cps/cpspath/parser/CpsPathQuerySpec.groovy