Skip to content

Commit 45587eb

Browse files
committed
Address comments
Signed-off-by: Craig Perkins <cwperx@amazon.com>
1 parent 66e6e3e commit 45587eb

4 files changed

Lines changed: 10 additions & 19 deletions

File tree

data-prepper-expression/src/main/antlr/DataPrepperExpression.g4

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,6 @@ literal
182182
| Integer
183183
| Boolean
184184
| String
185-
| RawString
186185
| Null
187186
;
188187

@@ -270,12 +269,9 @@ VariableNameCharacter
270269
| [0-9-]
271270
;
272271
273-
RawString
274-
: [r] DOUBLEQUOTE StringCharacters? DOUBLEQUOTE
275-
;
276-
277272
String
278273
: DOUBLEQUOTE StringCharacters? DOUBLEQUOTE
274+
| DOUBLEQUOTE DOUBLEQUOTE DOUBLEQUOTE StringCharacters? DOUBLEQUOTE DOUBLEQUOTE DOUBLEQUOTE
279275
;
280276
281277
fragment

data-prepper-expression/src/main/java/org/opensearch/dataprepper/expression/ParseTreeCoercionService.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,11 +68,10 @@ public Object coercePrimaryTerminalNode(final TerminalNode node, final Event eve
6868
case DataPrepperExpressionParser.JsonPointer:
6969
return resolveJsonPointerValue(nodeStringValue, event);
7070
case DataPrepperExpressionParser.String:
71-
final String nodeStringValueWithQuotesStripped = nodeStringValue.substring(1, nodeStringValue.length() - 1);
71+
final String nodeStringValueWithQuotesStripped = nodeStringValue != null
72+
? nodeStringValue.replaceAll("^\"{1,3}|\"{1,3}$", "")
73+
: null;
7274
return nodeStringValueWithQuotesStripped;
73-
case DataPrepperExpressionParser.RawString:
74-
final String nodeStringValueWithRAndQuotesStripped = nodeStringValue.substring(2, nodeStringValue.length() - 1);
75-
return nodeStringValueWithRAndQuotesStripped;
7675
case DataPrepperExpressionParser.Integer:
7776
Long longValue = Long.valueOf(nodeStringValue);
7877
if (longValue > Integer.MAX_VALUE || longValue < Integer.MIN_VALUE) {

data-prepper-expression/src/test/java/org/opensearch/dataprepper/expression/GenericExpressionEvaluator_ConditionalIT.java

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -192,8 +192,8 @@ private static Stream<Arguments> validExpressionArguments() {
192192
arguments("/should_drop", event("{\"should_drop\": true}"), true),
193193
arguments("/should_drop", event("{\"should_drop\": false}"), false),
194194
arguments("/logs/2/should_drop", event("{\"logs\": [{}, {}, {\"should_drop\": true}]}"), true),
195-
arguments("/path == " + rawString("/path/to/route"), event("{\"path\": \"/path/to/route\"}"), true),
196-
arguments("/path == " + rawString("/path/to/route"), event("{\"path\": \"/incorrect/path\"}"), false),
195+
arguments("/path == \"\"\"/path/to/route\"\"\"", event("{\"path\": \"/path/to/route\"}"), true),
196+
arguments("/path == \"\"\"/path/to/route\"\"\"", event("{\"path\": \"/incorrect/path\"}"), false),
197197
arguments(
198198
escapedJsonPointer(ALL_JACKSON_EVENT_GET_SUPPORTED_CHARACTERS) + " == true",
199199
complexEvent(ALL_JACKSON_EVENT_GET_SUPPORTED_CHARACTERS, true),
@@ -354,10 +354,6 @@ private static String escapedJsonPointer(final String pointer) {
354354
return "\"/" + pointer + "\"";
355355
}
356356

357-
private static String rawString(final String original) {
358-
return "r\"" + original + "\"";
359-
}
360-
361357
private static Event event(final String data) {
362358
return JacksonEvent.builder().withEventType("event").withData(data).build();
363359
}

data-prepper-expression/src/test/java/org/opensearch/dataprepper/expression/ParseTreeCoercionServiceTest.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -228,12 +228,12 @@ void testCoerceTerminalNodeEscapeJsonPointerTypeUnSupportedValues() {
228228

229229
@ParameterizedTest
230230
@MethodSource("provideSupportedJsonPointerValues")
231-
void testCoerceTerminalNodeRawStringTypeSupportedValues(final Object testValue) {
231+
void testCoerceTerminalNodeTripleQuoteStringTypeSupportedValues(final Object testValue) {
232232
final String testKey = "/testKey";
233-
final String testRawStringKey = "r\"/testKey\"";
234-
when(token.getType()).thenReturn(DataPrepperExpressionParser.RawString);
233+
final String testTruipleQuoteStringKey = "\"\"\"/testKey\"\"\"";
234+
when(token.getType()).thenReturn(DataPrepperExpressionParser.String);
235235
when(terminalNode.getSymbol()).thenReturn(token);
236-
when(terminalNode.getText()).thenReturn(testRawStringKey);
236+
when(terminalNode.getText()).thenReturn(testTruipleQuoteStringKey);
237237
final Object result = objectUnderTest.coercePrimaryTerminalNode(terminalNode, null);
238238
assertThat(result, equalTo(testKey));
239239
}

0 commit comments

Comments
 (0)