From 95f79fe8e8ac0f0db306582e859a3e3f8f744b70 Mon Sep 17 00:00:00 2001 From: Christoph Keiner Date: Thu, 21 Feb 2019 15:47:20 +0100 Subject: [PATCH] Checked parser and tests so the correct line number is thrown. --- .../yaml/command/action/ActionParser.java | 17 +-- .../command/action/request/RequestParser.java | 6 +- .../action/response/ResponseParser.java | 5 +- .../action/response/ValidationParser.java | 20 ++- .../action/subrequest/SubrequestsParser.java | 8 +- .../subrequest/XhrSubrequestParser.java | 17 +-- .../storeDefault/StoreDefaultParser.java | 2 +- .../StoreDefaultValuesParser.java | 63 -------- .../parser/yaml/YamlReferencesTest.java | 34 +---- .../yaml/command/action/ActionParserTest.java | 64 ++++++-- .../action/request/RequestParserTest.java | 33 ++++- .../action/response/ResponseParserTest.java | 92 +++++++++--- .../action/response/ValidationParserTest.java | 137 +++++++++++------- .../subrequest/SubrequestsParserTest.java | 94 +++++++++--- .../yaml/command/store/StoreParserTest.java | 17 ++- .../storeDefault/StoreDefaultParserTest.java | 1 + .../test-scripts/{ => action}/SAND.yml | 0 .../{ => action}/actionNameNull.yml | 0 .../{ => action}/complexTestCase.yml | 0 .../test-scripts/{ => action}/emptyAction.yml | 0 .../request/syntaxErrorRequest.yml | 0 .../syntaxErrorRequestArrayNotObject.yml | 0 .../request/urlNull.yml | 0 .../response/syntaxErrorResponse.yml | 0 .../syntaxErrorResponseArrayNotObject.yml | 0 ...axErrorResponseStoreItemArrayNotObject.yml | 0 ...syntaxErrorResponseStoreObjectNotArray.yml | 0 ...orResponseValidationItemArrayNotObject.yml | 0 ...xErrorResponseValidationObjectNotArray.yml | 0 .../subrequests/staticSubrequests.yml | 0 .../subrequests/syntaxErrorStatic.yml | 0 .../subrequests/syntaxErrorSubrequests.yml | 0 .../syntaxErrorSubrequestsObjectNotArray.yml | 0 ...rorSubrequestsStaticItemObjectNotArray.yml | 4 + ...xErrorSubrequestsXhrItemArrayNotObject.yml | 0 .../subrequests/syntaxErrorXhr.yml | 0 .../subrequests/xhrSubrequests.yml | 0 .../{ => action}/syntaxErrorAction.yml | 0 .../syntaxErrorActionArrayNotObject.yml | 0 .../test-scripts/{ => action}/wrongOrder.yml | 0 .../{ => action}/wrongOrderAction.yml | 0 ...rorSubrequestsStaticItemObjectNotArray.yml | 4 - .../test-scripts/{ => store}/store.yml | 0 .../syntaxErrorStoreObjectNotArray.yml | 0 .../{ => storeDefault}/testData.yml | 0 .../test-scripts/{ => storeDefault}/tmp.yml | 0 46 files changed, 369 insertions(+), 249 deletions(-) delete mode 100644 src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/storeDefault/StoreDefaultValuesParser.java rename src/test/resources/test-scripts/{ => action}/SAND.yml (100%) rename src/test/resources/test-scripts/{ => action}/actionNameNull.yml (100%) rename src/test/resources/test-scripts/{ => action}/complexTestCase.yml (100%) rename src/test/resources/test-scripts/{ => action}/emptyAction.yml (100%) rename src/test/resources/test-scripts/{actionItems => action}/request/syntaxErrorRequest.yml (100%) rename src/test/resources/test-scripts/{actionItems => action}/request/syntaxErrorRequestArrayNotObject.yml (100%) rename src/test/resources/test-scripts/{actionItems => action}/request/urlNull.yml (100%) rename src/test/resources/test-scripts/{actionItems => action}/response/syntaxErrorResponse.yml (100%) rename src/test/resources/test-scripts/{actionItems => action}/response/syntaxErrorResponseArrayNotObject.yml (100%) rename src/test/resources/test-scripts/{actionItems => action}/response/syntaxErrorResponseStoreItemArrayNotObject.yml (100%) rename src/test/resources/test-scripts/{actionItems => action}/response/syntaxErrorResponseStoreObjectNotArray.yml (100%) rename src/test/resources/test-scripts/{actionItems => action}/response/syntaxErrorResponseValidationItemArrayNotObject.yml (100%) rename src/test/resources/test-scripts/{actionItems => action}/response/syntaxErrorResponseValidationObjectNotArray.yml (100%) rename src/test/resources/test-scripts/{actionItems => action}/subrequests/staticSubrequests.yml (100%) rename src/test/resources/test-scripts/{actionItems => action}/subrequests/syntaxErrorStatic.yml (100%) rename src/test/resources/test-scripts/{actionItems => action}/subrequests/syntaxErrorSubrequests.yml (100%) rename src/test/resources/test-scripts/{actionItems => action}/subrequests/syntaxErrorSubrequestsObjectNotArray.yml (100%) create mode 100644 src/test/resources/test-scripts/action/subrequests/syntaxErrorSubrequestsStaticItemObjectNotArray.yml rename src/test/resources/test-scripts/{actionItems => action}/subrequests/syntaxErrorSubrequestsXhrItemArrayNotObject.yml (100%) rename src/test/resources/test-scripts/{actionItems => action}/subrequests/syntaxErrorXhr.yml (100%) rename src/test/resources/test-scripts/{actionItems => action}/subrequests/xhrSubrequests.yml (100%) rename src/test/resources/test-scripts/{ => action}/syntaxErrorAction.yml (100%) rename src/test/resources/test-scripts/{ => action}/syntaxErrorActionArrayNotObject.yml (100%) rename src/test/resources/test-scripts/{ => action}/wrongOrder.yml (100%) rename src/test/resources/test-scripts/{ => action}/wrongOrderAction.yml (100%) delete mode 100644 src/test/resources/test-scripts/actionItems/subrequests/syntaxErrorSubrequestsStaticItemObjectNotArray.yml rename src/test/resources/test-scripts/{ => store}/store.yml (100%) rename src/test/resources/test-scripts/{ => store}/syntaxErrorStoreObjectNotArray.yml (100%) rename src/test/resources/test-scripts/{ => storeDefault}/testData.yml (100%) rename src/test/resources/test-scripts/{ => storeDefault}/tmp.yml (100%) diff --git a/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/ActionParser.java b/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/ActionParser.java index 310f8ce1..036909a5 100644 --- a/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/ActionParser.java +++ b/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/ActionParser.java @@ -68,7 +68,7 @@ public static List parse(final Mark context, final Node actionNode) // Check if the name is a permitted action item if (!Constants.isPermittedActionItem(itemName)) { - throw new ParserException("Node", actionNode.getStartMark(), " contains a not permitted action item", + throw new ParserException("Node", context, " contains a not permitted action item", ((ScalarNode) item.getKeyNode()).getStartMark()); } AbstractActionSubItemParser actionItemParser = null; @@ -90,8 +90,8 @@ public static List parse(final Mark context, final Node actionNode) } else { - throw new ParserException("Node", actionNode.getStartMark(), " defines a Name but not as first item.", - ((ScalarNode) item.getKeyNode()).getStartMark()); + throw new ParserException("Node", context, " defines a Name but not as first item.", + item.getKeyNode().getStartMark()); } case Constants.REQUEST: @@ -105,9 +105,9 @@ public static List parse(final Mark context, final Node actionNode) } else { - throw new ParserException("Node", actionNode.getStartMark(), + throw new ParserException("Node", context, " defines a request after another request, a response or a subrequest but must be defined before them.", - ((ScalarNode) item.getKeyNode()).getStartMark()); + item.getKeyNode().getStartMark()); } case Constants.RESPONSE: @@ -121,9 +121,9 @@ public static List parse(final Mark context, final Node actionNode) } else { - throw new ParserException("Node", actionNode.getStartMark(), + throw new ParserException("Node", context, " defines a response after another response or a subrequest but must be defined before it.", - ((ScalarNode) item.getKeyNode()).getStartMark()); + item.getKeyNode().getStartMark()); } @@ -135,8 +135,7 @@ public static List parse(final Mark context, final Node actionNode) default: // We didn't find something fitting, so throw an Exception - throw new ParserException("Node at", actionNode.getStartMark(), " is permitted but unknown", - item.getKeyNode().getStartMark()); + throw new ParserException("Node", context, " contains a permitted but unknown item", item.getKeyNode().getStartMark()); } // If we specified an actionItemParser diff --git a/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/request/RequestParser.java b/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/request/RequestParser.java index 62a39e4b..35fcc7ff 100644 --- a/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/request/RequestParser.java +++ b/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/request/RequestParser.java @@ -10,7 +10,6 @@ import org.yaml.snakeyaml.nodes.MappingNode; import org.yaml.snakeyaml.nodes.Node; import org.yaml.snakeyaml.nodes.NodeTuple; -import org.yaml.snakeyaml.nodes.ScalarNode; import org.yaml.snakeyaml.parser.ParserException; import com.gargoylesoftware.htmlunit.util.NameValuePair; @@ -68,8 +67,7 @@ public List parse(final Mark context, final Node requestN // Check if the name is a permitted action item if (!Constants.isPermittedRequestItem(itemName)) { - throw new ParserException("Node", requestNode.getStartMark(), " contains a not permitted request item", - ((ScalarNode) item.getKeyNode()).getStartMark()); + throw new ParserException("Node", context, " contains a not permitted request item", item.getKeyNode().getStartMark()); } // We generally want to read the value of the fieldName but assign it to different variables @@ -116,7 +114,7 @@ public List parse(final Mark context, final Node requestN default: // We didn't find something fitting, so throw an Exception - throw new ParserException("Node", requestNode.getStartMark(), " containst a permitted but unknown request item", + throw new ParserException("Node", context, " contains a permitted but unknown request item", item.getKeyNode().getStartMark()); } }); diff --git a/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/response/ResponseParser.java b/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/response/ResponseParser.java index db0ea0dd..3aaafe9f 100644 --- a/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/response/ResponseParser.java +++ b/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/response/ResponseParser.java @@ -58,8 +58,7 @@ public List parse(final Mark context, final Node response // Check if the name is a permitted action item if (!Constants.isPermittedResponseItem(itemName)) { - throw new ParserException("Node", responseNode.getStartMark(), " contains a not permitted response item", - item.getKeyNode().getStartMark()); + throw new ParserException("Node", context, " contains a not permitted response item", item.getKeyNode().getStartMark()); } switch (itemName) @@ -86,7 +85,7 @@ public List parse(final Mark context, final Node response default: // We didn't find something fitting, so throw an Exception - throw new ParserException("Node", responseNode.getStartMark(), " contains a permitted but unknown response item", + throw new ParserException("Node", context, " contains a permitted but unknown response item", item.getKeyNode().getStartMark()); } }); diff --git a/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/response/ValidationParser.java b/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/response/ValidationParser.java index 21c32d39..80a38b48 100644 --- a/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/response/ValidationParser.java +++ b/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/response/ValidationParser.java @@ -65,7 +65,8 @@ protected Validator parseSingleValidator(final Mark context, final Node validati // Verify that an object was used if (!(validationNodeWrapper instanceof MappingNode)) { - throw new ParserException("Node at", context, " is " + validationNodeWrapper.getNodeId() + " but needs to be an object", + throw new ParserException("Node", context, + " contains a " + validationNodeWrapper.getNodeId() + " but it must contain an object", validationNodeWrapper.getStartMark()); } String validationName = ""; @@ -81,8 +82,7 @@ protected Validator parseSingleValidator(final Mark context, final Node validati // Verify the validation is an object if (!(validationContent instanceof MappingNode)) { - throw new ParserException("Node", validation.getKeyNode().getStartMark(), - " contains a " + validationContent.getNodeId() + " but needs to be an object", + throw new ParserException("Node", context, " contains a " + validationContent.getNodeId() + " but needs to be an object", validationContent.getStartMark()); } final List singleValidationContentItems = ((MappingNode) validationContent).getValue(); @@ -96,11 +96,10 @@ protected Validator parseSingleValidator(final Mark context, final Node validati // Verify, that no extractor was parsed already if (extractor != null) { - throw new ParserException("Node", validationContent.getStartMark(), - " contains two definitions of an extractor but only one is allowed.", + throw new ParserException("Node", context, " contains two definitions of an extractor but only one is allowed.", contentItem.getKeyNode().getStartMark()); } - extractor = new ExtractorParser(contentKey).parse(validationContent.getStartMark(), singleValidationContentItems); + extractor = new ExtractorParser(contentKey).parse(context, singleValidationContentItems); XltLogger.runTimeLogger.debug("Extraction Mode is " + extractor); } @@ -110,26 +109,25 @@ else if (Constants.isPermittedValidationMethod(contentKey)) // Verify, that an extractor was parsed already if (extractor == null) { - throw new ParserException("Node", validationContent.getStartMark(), + throw new ParserException("Node", context, " contains a definition of a validation method but this cannot be parsed before an extractor was defined.", contentItem.getKeyNode().getStartMark()); } // Verify, that no validation was parsed already if (validationMethod != null) { - throw new ParserException("Node", validationContent.getStartMark(), + throw new ParserException("Node", context, " contains two definitions of validation methods but only one is allowed.", contentItem.getKeyNode().getStartMark()); } // Parse the validation method - validationMethod = new ValidatorParser(contentKey).parse(validationContent.getStartMark(), contentItem.getValueNode()); + validationMethod = new ValidatorParser(contentKey).parse(context, contentItem.getValueNode()); XltLogger.runTimeLogger.debug("Validation Method is " + validationMethod); } // If it is not Group OR Group and extractor is null, throw an error else if (!Constants.GROUP.equals(contentKey) || extractor == null) { - throw new ParserException("Node", validationContent.getStartMark(), " contains an unknown item.", - contentItem.getKeyNode().getStartMark()); + throw new ParserException("Node", context, " contains an unknown item.", contentItem.getKeyNode().getStartMark()); } } } diff --git a/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/subrequest/SubrequestsParser.java b/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/subrequest/SubrequestsParser.java index 884a38e4..bc0d3fa2 100644 --- a/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/subrequest/SubrequestsParser.java +++ b/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/subrequest/SubrequestsParser.java @@ -40,7 +40,7 @@ public List parse(final Mark context, final Node subreque // Verify that we have an array if (!(subrequestNode instanceof SequenceNode)) { - throw new ParserException("Node at", context, " is " + subrequestNode.getNodeId().toString() + " but needs to be an array", + throw new ParserException("Node", context, " contains a " + subrequestNode.getNodeId() + " but it must contain an array", subrequestNode.getStartMark()); } // Initialize Variables @@ -51,8 +51,7 @@ public List parse(final Mark context, final Node subreque // Verify that an array was used and not an object if (!(subrequestWrapper instanceof MappingNode)) { - throw new ParserException("Node at", subrequestNode.getStartMark(), - " is " + subrequestWrapper.getNodeId().toString() + " but needs to be a mapping", + throw new ParserException("Node", context, " contains " + subrequestWrapper.getNodeId() + " but it must contain a mapping", subrequestWrapper.getStartMark()); } final List subrequestList = ((MappingNode) subrequestWrapper).getValue(); @@ -73,8 +72,7 @@ public List parse(final Mark context, final Node subreque break; default: - throw new ParserException("Node", subrequestWrapper.getStartMark(), " contains an unknown item.", - subrequest.getKeyNode().getStartMark()); + throw new ParserException("Node", context, " contains an unknown item.", subrequest.getKeyNode().getStartMark()); } }); }); diff --git a/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/subrequest/XhrSubrequestParser.java b/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/subrequest/XhrSubrequestParser.java index d8119dbc..8321063d 100644 --- a/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/subrequest/XhrSubrequestParser.java +++ b/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/subrequest/XhrSubrequestParser.java @@ -41,7 +41,7 @@ public XhrSubrequest parse(final Mark context, final Node xhrNode) // Verify the node is an ObjectNode or a NullNode if (!(xhrNode instanceof MappingNode)) { - throw new ParserException("Node", context, " contains a " + xhrNode.getNodeId().toString() + " but it must contain a mapping", + throw new ParserException("Node", context, " contains a " + xhrNode.getNodeId() + " but it must contain a mapping", xhrNode.getStartMark()); } // Initialize variables @@ -55,8 +55,7 @@ public XhrSubrequest parse(final Mark context, final Node xhrNode) // Check if the name is a permitted action item if (!Constants.isPermittedActionItem(itemName)) { - throw new ParserException("Node", xhrNode.getStartMark(), " contans a not permitted Xhr Action item", - item.getKeyNode().getStartMark()); + throw new ParserException("Node", context, " contans a not permitted Xhr Action item", item.getKeyNode().getStartMark()); } AbstractActionSubItem actionItem = null; @@ -78,7 +77,7 @@ public XhrSubrequest parse(final Mark context, final Node xhrNode) } else { - throw new ParserException("Node", xhrNode.getStartMark(), " defines a Name but not as first item.", + throw new ParserException("Node", context, " defines a Name but not as first item.", item.getKeyNode().getStartMark()); } @@ -95,15 +94,14 @@ public XhrSubrequest parse(final Mark context, final Node xhrNode) } else { - throw new ParserException("Node", xhrNode.getStartMark(), - "contains an item, that could not be converted to a request object.", + throw new ParserException("Node", context, "contains an item, that could not be converted to a request object.", item.getValueNode().getStartMark()); } break; } else { - throw new ParserException("Node", xhrNode.getStartMark(), + throw new ParserException("Node", context, " defines a request after another request, a response or a subrequest, which isn't allowed.", item.getKeyNode().getStartMark()); } @@ -119,7 +117,7 @@ public XhrSubrequest parse(final Mark context, final Node xhrNode) } else { - throw new ParserException("Node", xhrNode.getStartMark(), + throw new ParserException("Node", context, " defines a response after another response or a subrequest, which isn't allowed.", item.getKeyNode().getStartMark()); } @@ -132,8 +130,7 @@ public XhrSubrequest parse(final Mark context, final Node xhrNode) default: // We didn't find something fitting, so throw an Exception - throw new ParserException("Node", xhrNode.getStartMark(), " contains a permitted but unknown item", - item.getKeyNode().getStartMark()); + throw new ParserException("Node", context, " contains a permitted but unknown item", item.getKeyNode().getStartMark()); } if (actionItem != null) { diff --git a/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/storeDefault/StoreDefaultParser.java b/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/storeDefault/StoreDefaultParser.java index 5fd57174..41637a41 100644 --- a/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/storeDefault/StoreDefaultParser.java +++ b/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/storeDefault/StoreDefaultParser.java @@ -101,7 +101,7 @@ public static List parse(final Mark context, final NodeTuple node) default: // We didn't find something fitting, so throw an Exception - throw new ParserException("Node at", node.getKeyNode().getStartMark(), " is permitted but unknown", null); + throw new ParserException("Node", context, " contains a permitted but unknown list item", node.getKeyNode().getStartMark()); } return scriptItems; diff --git a/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/storeDefault/StoreDefaultValuesParser.java b/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/storeDefault/StoreDefaultValuesParser.java deleted file mode 100644 index 0dc54048..00000000 --- a/src/main/java/com/xceptance/xlt/nocoding/parser/yaml/command/storeDefault/StoreDefaultValuesParser.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.xceptance.xlt.nocoding.parser.yaml.command.storeDefault; - -import java.util.ArrayList; -import java.util.List; - -import org.yaml.snakeyaml.error.Mark; -import org.yaml.snakeyaml.nodes.MappingNode; -import org.yaml.snakeyaml.nodes.Node; -import org.yaml.snakeyaml.nodes.NodeTuple; -import org.yaml.snakeyaml.parser.ParserException; - -import com.xceptance.xlt.nocoding.command.storeDefault.AbstractStoreDefaultItem; -import com.xceptance.xlt.nocoding.command.storeDefault.StoreDefaultValue; -import com.xceptance.xlt.nocoding.parser.yaml.YamlParserUtils; -import com.xceptance.xlt.nocoding.util.Constants; - -/** - * The class for parsing single, default key-value items.
- * Therefore, it does not parse {@link Constants#HEADERS}, nor {@link Constants#PARAMETERS}, nor - * {@link Constants#STATIC}, etc. - * - * @author ckeiner - */ -public class StoreDefaultValuesParser extends AbstractStoreDefaultSubItemsParser -{ - - /** - * Parses the default item to a list of {@link AbstractStoreDefaultItem}s which consists of a single - * {@link StoreDefaultValue}. - * - * @param context - * The {@link Mark} of the surrounding {@link Node}/context. - * @param defaultItemNode - * The {@link Node} the default key-value item start at - * @return A list of StoreDefaults with the parsed default key-value item. - */ - @Override - public List parse(final Mark context, final Node defaultItemNode) - { - if (!(defaultItemNode instanceof MappingNode)) - { - throw new ParserException("Node", context, " contains a " + defaultItemNode.getNodeId() + " but it must contain a mapping", - defaultItemNode.getStartMark()); - } - - // Create new default items list - final List defaultItems = new ArrayList<>(); - - final List defaultItemWrapper = ((MappingNode) defaultItemNode).getValue(); - defaultItemWrapper.forEach(defaultItem -> { - // Get the name of the default item - final String variableName = YamlParserUtils.transformScalarNodeToString(defaultItemNode.getStartMark(), - defaultItem.getKeyNode()); - // Get the value of the default item - final String value = YamlParserUtils.transformScalarNodeToString(defaultItemNode.getStartMark(), defaultItem.getKeyNode()); - // Create the new StoreDefaultItem and add it to the default items list - defaultItems.add(new StoreDefaultValue(variableName, value)); - }); - - return defaultItems; - } - -} diff --git a/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/YamlReferencesTest.java b/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/YamlReferencesTest.java index 53ffe67d..5dfab49c 100644 --- a/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/YamlReferencesTest.java +++ b/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/YamlReferencesTest.java @@ -42,46 +42,28 @@ public void testReferenceFileParsing() throws Exception } /** - * Verifies a misplaced anchor throws an error. + * Verifies a misplaced anchor throws an error.
+ * It is not checked for line numbers. See issue #5 for more information. * * @throws IOException */ - @Test + @Test(expected = ParserException.class) public void complexReferenceParsing() throws IOException { final Parser parser = new YamlParser(); - try - { - parser.parse(fileReferenceParsingComplexError); - Assert.assertFalse(true); - } - catch (final ParserException parserException) - { - // The line in a mark start at 0 - Assert.assertEquals(20, parserException.getContextMark().getLine()); - Assert.assertEquals(13, parserException.getProblemMark().getLine()); - } + parser.parse(fileReferenceParsingComplexError); } /** - * Verifies a more complex play of anchors throws an error. + * Verifies a more complex play of anchors throws an error.
+ * It is not checked for line numbers. See issue #5 for more information. * * @throws IOException */ - @Test + @Test(expected = ParserException.class) public void mappingReferenceParsing() throws IOException { final Parser parser = new YamlParser(); - try - { - parser.parse(fileReferenceParsingMappingError); - Assert.assertFalse(true); - } - catch (final ParserException parserException) - { - // The line in a mark start at 0 - Assert.assertEquals(23, parserException.getContextMark().getLine()); - Assert.assertEquals(9, parserException.getProblemMark().getLine()); - } + parser.parse(fileReferenceParsingMappingError); } } diff --git a/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/ActionParserTest.java b/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/ActionParserTest.java index 772845b5..d738222a 100644 --- a/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/ActionParserTest.java +++ b/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/ActionParserTest.java @@ -1,5 +1,6 @@ package com.xceptance.xlt.nocoding.parser.yaml.command.action; +import java.io.IOException; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -36,6 +37,8 @@ public class ActionParserTest extends AbstractParserTest * Function test */ + protected String path = super.path + "action/"; + protected final String fileSingleActionNoDefaultsData = path + "SAND.yml"; protected final String fileComplexTestCase = path + "complexTestCase.yml"; @@ -188,16 +191,41 @@ public void testSyntaxErrorActionParsing() throws Exception parser.parse(fileSyntaxErrorAction); } + @Test + public void testSyntaxErrorActionParsingLineNumber() throws IOException + { + try + { + final Parser parser = new YamlParser(); + parser.parse(fileSyntaxErrorAction); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(0, parserException.getContextMark().getLine()); + Assert.assertEquals(2, parserException.getProblemMark().getLine()); + } + } + /** * Verifies an error happens when "Action" has an array beneath it and not objects * * @throws Exception */ - @Test(expected = ParserException.class) + @Test public void testSyntaxErrorActionArrayNotObjectParsing() throws Exception { - final Parser parser = new YamlParser(); - parser.parse(fileSyntaxErrorActionArrayNotObject); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileSyntaxErrorActionArrayNotObject); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(0, parserException.getContextMark().getLine()); + Assert.assertEquals(1, parserException.getProblemMark().getLine()); + } } /** @@ -205,11 +233,20 @@ public void testSyntaxErrorActionArrayNotObjectParsing() throws Exception * * @throws Exception */ - @Test(expected = ParserException.class) + @Test public void testWrongOrderActionParsing() throws Exception { - final Parser parser = new YamlParser(); - parser.parse(fileWrongOrderAction); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileWrongOrderAction); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(0, parserException.getContextMark().getLine()); + Assert.assertEquals(15, parserException.getProblemMark().getLine()); + } } /** @@ -217,11 +254,20 @@ public void testWrongOrderActionParsing() throws Exception * * @throws Throwable */ - @Test(expected = ParserException.class) + @Test public void testWrongOrderParsing() throws Throwable { - final Parser parser = new YamlParser(); - parser.parse(fileWrongOrder); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileWrongOrder); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(0, parserException.getContextMark().getLine()); + Assert.assertEquals(28, parserException.getProblemMark().getLine()); + } } } diff --git a/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/request/RequestParserTest.java b/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/request/RequestParserTest.java index 815a8757..011990f2 100644 --- a/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/request/RequestParserTest.java +++ b/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/request/RequestParserTest.java @@ -2,6 +2,7 @@ import java.io.IOException; +import org.junit.Assert; import org.junit.Test; import org.yaml.snakeyaml.parser.ParserException; @@ -17,7 +18,7 @@ public class RequestParserTest extends AbstractParserTest { - protected final String path = super.path + "actionItems/request/"; + protected final String path = super.path + "action/request/"; protected final String fileSyntaxErrorRequest = path + "syntaxErrorRequest.yml"; @@ -30,11 +31,20 @@ public class RequestParserTest extends AbstractParserTest * * @throws IOException */ - @Test(expected = ParserException.class) + @Test public void testSyntaxErrorRequestParsing() throws IOException { - final Parser parser = new YamlParser(); - parser.parse(fileSyntaxErrorRequest); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileSyntaxErrorRequest); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(2, parserException.getContextMark().getLine()); + Assert.assertEquals(3, parserException.getProblemMark().getLine()); + } } /** @@ -42,11 +52,20 @@ public void testSyntaxErrorRequestParsing() throws IOException * * @throws IOException */ - @Test(expected = ParserException.class) + @Test public void testSyntaxErrorRequestArrayNotObjectParsing() throws IOException { - final Parser parser = new YamlParser(); - parser.parse(fileSyntaxErrorRequestArrayNotObject); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileSyntaxErrorRequestArrayNotObject); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(1, parserException.getContextMark().getLine()); + Assert.assertEquals(2, parserException.getProblemMark().getLine()); + } } /** diff --git a/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/response/ResponseParserTest.java b/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/response/ResponseParserTest.java index 77183ee1..3ff6bb5c 100644 --- a/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/response/ResponseParserTest.java +++ b/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/response/ResponseParserTest.java @@ -27,7 +27,7 @@ */ public class ResponseParserTest extends AbstractParserTest { - protected final String path = super.path + "actionItems/response/"; + protected final String path = super.path + "action/response/"; protected final String fileSyntaxErrorResponse = path + "syntaxErrorResponse.yml"; @@ -47,11 +47,20 @@ public class ResponseParserTest extends AbstractParserTest * * @throws Exception */ - @Test(expected = ParserException.class) + @Test public void testSyntaxErrorResponseParsing() throws Exception { - final Parser parser = new YamlParser(); - parser.parse(fileSyntaxErrorResponse); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileSyntaxErrorResponse); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(4, parserException.getContextMark().getLine()); + Assert.assertEquals(5, parserException.getProblemMark().getLine()); + } } /** @@ -59,11 +68,20 @@ public void testSyntaxErrorResponseParsing() throws Exception * * @throws Exception */ - @Test(expected = ParserException.class) + @Test public void testSyntaxErrorResponseArrayNotObjectParsing() throws Exception { - final Parser parser = new YamlParser(); - parser.parse(fileSyntaxErrorResponseArrayNotObject); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileSyntaxErrorResponseArrayNotObject); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(1, parserException.getContextMark().getLine()); + Assert.assertEquals(2, parserException.getProblemMark().getLine()); + } } /** @@ -72,11 +90,20 @@ public void testSyntaxErrorResponseArrayNotObjectParsing() throws Exception * * @throws Exception */ - @Test(expected = ParserException.class) + @Test public void testSyntaxErrorResponseStoreItemArrayNotObjectParsing() throws Exception { - final Parser parser = new YamlParser(); - parser.parse(fileSyntaxErrorResponseStoreItemArrayNotObject); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileSyntaxErrorResponseStoreItemArrayNotObject); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(3, parserException.getContextMark().getLine()); + Assert.assertEquals(4, parserException.getProblemMark().getLine()); + } } /** @@ -84,11 +111,20 @@ public void testSyntaxErrorResponseStoreItemArrayNotObjectParsing() throws Excep * * @throws Exception */ - @Test(expected = ParserException.class) + @Test public void testSyntaxErrorResponseStoreObjectNotArrayParsing() throws Exception { - final Parser parser = new YamlParser(); - parser.parse(fileSyntaxErrorResponseStoreObjectNotArray); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileSyntaxErrorResponseStoreObjectNotArray); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(2, parserException.getContextMark().getLine()); + Assert.assertEquals(3, parserException.getProblemMark().getLine()); + } } /** @@ -97,11 +133,20 @@ public void testSyntaxErrorResponseStoreObjectNotArrayParsing() throws Exception * * @throws Exception */ - @Test(expected = ParserException.class) + @Test public void testSyntaxErrorResponseValidationItemArrayNotObjectParsing() throws Exception { - final Parser parser = new YamlParser(); - parser.parse(fileSyntaxErrorResponseValidationItemArrayNotObject); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileSyntaxErrorResponseValidationItemArrayNotObject); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(3, parserException.getContextMark().getLine()); + Assert.assertEquals(4, parserException.getProblemMark().getLine()); + } } /** @@ -109,11 +154,20 @@ public void testSyntaxErrorResponseValidationItemArrayNotObjectParsing() throws * * @throws Exception */ - @Test(expected = ParserException.class) + @Test public void testSyntaxErrorResponseValidationObjectNotArrayParsing() throws Exception { - final Parser parser = new YamlParser(); - parser.parse(fileSyntaxErrorResponseValidationObjectNotArray); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileSyntaxErrorResponseValidationObjectNotArray); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(2, parserException.getContextMark().getLine()); + Assert.assertEquals(3, parserException.getProblemMark().getLine()); + } } /** diff --git a/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/response/ValidationParserTest.java b/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/response/ValidationParserTest.java index 52395b91..5ffee8f4 100644 --- a/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/response/ValidationParserTest.java +++ b/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/response/ValidationParserTest.java @@ -23,61 +23,6 @@ */ public class ValidationParserTest { - - /** - * Verifies an error is thrown if two validation modes are found - * - * @throws Exception - */ - @Test(expected = ParserException.class) - public void testSyntaxErrorResponseValidationTwoValidationModes() throws Exception - { - final String yamlSpec = "- val_Name_1 : \n" // - + " " + Constants.REGEXP + " : pattern\n" // - + " " + Constants.TEXT + " : pattern\n" // - + " " + Constants.MATCHES + " : pattern\n"; - - final Node validationContent = YamlParserTestHelper.parseToNode(yamlSpec); - - new ValidationParser().parse(validationContent.getStartMark(), validationContent); - } - - /** - * Verifies an error is thrown if two extractors are found - * - * @throws Exception - */ - @Test(expected = ParserException.class) - public void testSyntaxErrorResponseValidationTwoExtractors() throws Exception - { - final String yamlSpec = "- val_Name_1 : \n" // - + " " + Constants.REGEXP + " : pattern\n" // - + " " + Constants.TEXT + " : pattern\n" // - + " " + Constants.XPATH + " : pattern\n"; - - final Node validationContent = YamlParserTestHelper.parseToNode(yamlSpec); - - new ValidationParser().parse(validationContent.getStartMark(), validationContent); - } - - /** - * Verifies an error is thrown if a group is parsed but the extractor is not a {@link RegexpExtractor} - * - * @throws Exception - */ - @Test(expected = ParserException.class) - public void testInvalidGroupValidation() throws Exception - { - final String yamlSpec = "- val_Name_1 : \n" // - + " " + Constants.COOKIE + " : cookieName\n" // - + " " + Constants.TEXT + " : cookieValue\n" // - + " " + Constants.GROUP + " : 2\n"; - - final Node validationContent = YamlParserTestHelper.parseToNode(yamlSpec); - - new ValidationParser().parse(validationContent.getStartMark(), validationContent); - } - /** * Verifies {@link RegexpExtractor} and {@link MatchesValidator} can be parsed * @@ -172,7 +117,89 @@ public void testHeaderCountValidation() throws Exception Assert.assertEquals(extractionExpression, validator.getExtractor().getExtractionExpression()); Assert.assertTrue(validator.getMethod() instanceof CountValidator); + } + + /* + * Errors + */ + + /** + * Verifies an error is thrown if two validation modes are found + * + * @throws Exception + */ + @Test + public void testSyntaxErrorResponseValidationTwoValidationModes() throws Exception + { + final String yamlSpec = "- val_Name_1 : \n" // + + " " + Constants.REGEXP + " : pattern\n" // + + " " + Constants.TEXT + " : pattern\n" // + + " " + Constants.MATCHES + " : pattern\n"; + + final Node validationContent = YamlParserTestHelper.parseToNode(yamlSpec); + + try + { + new ValidationParser().parse(validationContent.getStartMark(), validationContent); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(0, parserException.getContextMark().getLine()); + Assert.assertEquals(3, parserException.getProblemMark().getLine()); + } + } + + /** + * Verifies an error is thrown if two extractors are found + * + * @throws Exception + */ + @Test + public void testSyntaxErrorResponseValidationTwoExtractors() throws Exception + { + final String yamlSpec = "- val_Name_1 : \n" // + + " " + Constants.REGEXP + " : pattern\n" // + + " " + Constants.XPATH + " : pattern\n"// + + " " + Constants.TEXT + " : pattern\n"; + + final Node validationContent = YamlParserTestHelper.parseToNode(yamlSpec); + try + { + new ValidationParser().parse(validationContent.getStartMark(), validationContent); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(0, parserException.getContextMark().getLine()); + Assert.assertEquals(2, parserException.getProblemMark().getLine()); + } + } + + /** + * Verifies an error is thrown if a group is parsed but the extractor is not a {@link RegexpExtractor} + * + * @throws Exception + */ + @Test + public void testInvalidGroupValidation() throws Exception + { + final String yamlSpec = "- val_Name_1 : \n" // + + " " + Constants.COOKIE + " : cookieName\n" // + + " " + Constants.TEXT + " : cookieValue\n" // + + " " + Constants.GROUP + " : 2\n"; + final Node validationContent = YamlParserTestHelper.parseToNode(yamlSpec); + try + { + new ValidationParser().parse(validationContent.getStartMark(), validationContent); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(0, parserException.getContextMark().getLine()); + Assert.assertEquals(3, parserException.getProblemMark().getLine()); + } } } diff --git a/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/subrequest/SubrequestsParserTest.java b/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/subrequest/SubrequestsParserTest.java index ea3055c4..c987c052 100644 --- a/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/subrequest/SubrequestsParserTest.java +++ b/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/action/subrequest/SubrequestsParserTest.java @@ -2,9 +2,9 @@ import java.io.IOException; +import org.junit.Assert; import org.junit.Test; import org.yaml.snakeyaml.parser.ParserException; -import org.yaml.snakeyaml.scanner.ScannerException; import com.xceptance.xlt.nocoding.parser.AbstractParserTest; import com.xceptance.xlt.nocoding.parser.Parser; @@ -17,7 +17,7 @@ */ public class SubrequestsParserTest extends AbstractParserTest { - protected final String path = super.path + "actionItems/subrequests/"; + protected final String path = super.path + "action/subrequests/"; protected final String fileXhrSubrequests = path + "xhrSubrequests.yml"; @@ -64,11 +64,20 @@ public void testStaticSubrequestsParsing() throws IOException * * @throws IOException */ - @Test(expected = ParserException.class) + @Test public void testSyntaxErrorSubrequestsParsing() throws IOException { - final Parser parser = new YamlParser(); - parser.parse(fileSyntaxErrorSubrequests); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileSyntaxErrorSubrequests); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(4, parserException.getContextMark().getLine()); + Assert.assertEquals(5, parserException.getProblemMark().getLine()); + } } /** @@ -76,11 +85,20 @@ public void testSyntaxErrorSubrequestsParsing() throws IOException * * @throws IOException */ - @Test(expected = ParserException.class) + @Test public void testSyntaxErrorSubrequestsObjectNotArrayParsing() throws IOException { - final Parser parser = new YamlParser(); - parser.parse(fileSyntaxErrorSubrequestsObjectNotArray); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileSyntaxErrorSubrequestsObjectNotArray); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(1, parserException.getContextMark().getLine()); + Assert.assertEquals(2, parserException.getProblemMark().getLine()); + } } /** @@ -89,11 +107,20 @@ public void testSyntaxErrorSubrequestsObjectNotArrayParsing() throws IOException * * @throws IOException */ - @Test(expected = ScannerException.class) + @Test public void testSyntaxErrorSubrequestsStaticItemObjectNotArrayParsing() throws IOException { - final Parser parser = new YamlParser(); - parser.parse(fileSyntaxErrorSubrequestsStaticItemObjectNotArray); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileSyntaxErrorSubrequestsStaticItemObjectNotArray); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(2, parserException.getContextMark().getLine()); + Assert.assertEquals(3, parserException.getProblemMark().getLine()); + } } /** @@ -101,11 +128,20 @@ public void testSyntaxErrorSubrequestsStaticItemObjectNotArrayParsing() throws I * * @throws IOException */ - @Test(expected = ParserException.class) + @Test public void testSyntaxErrorSubrequestsXhrItemArrayNotObjectParsing() throws IOException { - final Parser parser = new YamlParser(); - parser.parse(fileSyntaxErrorSubrequestsXhrItemArrayNotObject); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileSyntaxErrorSubrequestsXhrItemArrayNotObject); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(2, parserException.getContextMark().getLine()); + Assert.assertEquals(3, parserException.getProblemMark().getLine()); + } } /** @@ -113,11 +149,20 @@ public void testSyntaxErrorSubrequestsXhrItemArrayNotObjectParsing() throws IOEx * * @throws IOException */ - @Test(expected = ParserException.class) + @Test public void testSyntaxErrorXhrParsing() throws IOException { - final Parser parser = new YamlParser(); - parser.parse(fileSyntaxErrorXhr); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileSyntaxErrorXhr); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(5, parserException.getContextMark().getLine()); + Assert.assertEquals(7, parserException.getProblemMark().getLine()); + } } /** @@ -125,11 +170,20 @@ public void testSyntaxErrorXhrParsing() throws IOException * * @throws IOException */ - @Test(expected = ParserException.class) + @Test public void testSyntaxErrorStaticParsing() throws IOException { - final Parser parser = new YamlParser(); - parser.parse(fileSyntaxErrorStatic); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileSyntaxErrorStatic); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(5, parserException.getContextMark().getLine()); + Assert.assertEquals(6, parserException.getProblemMark().getLine()); + } } } diff --git a/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/store/StoreParserTest.java b/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/store/StoreParserTest.java index 386d2fe1..a50addda 100644 --- a/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/store/StoreParserTest.java +++ b/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/store/StoreParserTest.java @@ -19,6 +19,8 @@ */ public class StoreParserTest extends AbstractParserTest { + protected String path = super.path + "store/"; + protected final String fileStore = path + "store.yml"; protected final String fileStoreObjectNotArray = path + "syntaxErrorStoreObjectNotArray.yml"; @@ -79,10 +81,19 @@ public void testStoreParsing() throws Exception * * @throws Exception */ - @Test(expected = ParserException.class) + @Test public void testStoreObjectParse() throws Exception { - final Parser parser = new YamlParser(); - parser.parse(fileStoreObjectNotArray); + try + { + final Parser parser = new YamlParser(); + parser.parse(fileStoreObjectNotArray); + Assert.assertFalse(true); + } + catch (final ParserException parserException) + { + Assert.assertEquals(0, parserException.getContextMark().getLine()); + Assert.assertEquals(1, parserException.getProblemMark().getLine()); + } } } diff --git a/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/storeDefault/StoreDefaultParserTest.java b/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/storeDefault/StoreDefaultParserTest.java index 0525a97a..9278fb4d 100644 --- a/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/storeDefault/StoreDefaultParserTest.java +++ b/src/test/java/com/xceptance/xlt/nocoding/parser/yaml/command/storeDefault/StoreDefaultParserTest.java @@ -33,6 +33,7 @@ */ public class StoreDefaultParserTest extends AbstractParserTest { + protected String path = super.path + "storeDefault/"; protected final String fileTestData = path + "testData.yml"; diff --git a/src/test/resources/test-scripts/SAND.yml b/src/test/resources/test-scripts/action/SAND.yml similarity index 100% rename from src/test/resources/test-scripts/SAND.yml rename to src/test/resources/test-scripts/action/SAND.yml diff --git a/src/test/resources/test-scripts/actionNameNull.yml b/src/test/resources/test-scripts/action/actionNameNull.yml similarity index 100% rename from src/test/resources/test-scripts/actionNameNull.yml rename to src/test/resources/test-scripts/action/actionNameNull.yml diff --git a/src/test/resources/test-scripts/complexTestCase.yml b/src/test/resources/test-scripts/action/complexTestCase.yml similarity index 100% rename from src/test/resources/test-scripts/complexTestCase.yml rename to src/test/resources/test-scripts/action/complexTestCase.yml diff --git a/src/test/resources/test-scripts/emptyAction.yml b/src/test/resources/test-scripts/action/emptyAction.yml similarity index 100% rename from src/test/resources/test-scripts/emptyAction.yml rename to src/test/resources/test-scripts/action/emptyAction.yml diff --git a/src/test/resources/test-scripts/actionItems/request/syntaxErrorRequest.yml b/src/test/resources/test-scripts/action/request/syntaxErrorRequest.yml similarity index 100% rename from src/test/resources/test-scripts/actionItems/request/syntaxErrorRequest.yml rename to src/test/resources/test-scripts/action/request/syntaxErrorRequest.yml diff --git a/src/test/resources/test-scripts/actionItems/request/syntaxErrorRequestArrayNotObject.yml b/src/test/resources/test-scripts/action/request/syntaxErrorRequestArrayNotObject.yml similarity index 100% rename from src/test/resources/test-scripts/actionItems/request/syntaxErrorRequestArrayNotObject.yml rename to src/test/resources/test-scripts/action/request/syntaxErrorRequestArrayNotObject.yml diff --git a/src/test/resources/test-scripts/actionItems/request/urlNull.yml b/src/test/resources/test-scripts/action/request/urlNull.yml similarity index 100% rename from src/test/resources/test-scripts/actionItems/request/urlNull.yml rename to src/test/resources/test-scripts/action/request/urlNull.yml diff --git a/src/test/resources/test-scripts/actionItems/response/syntaxErrorResponse.yml b/src/test/resources/test-scripts/action/response/syntaxErrorResponse.yml similarity index 100% rename from src/test/resources/test-scripts/actionItems/response/syntaxErrorResponse.yml rename to src/test/resources/test-scripts/action/response/syntaxErrorResponse.yml diff --git a/src/test/resources/test-scripts/actionItems/response/syntaxErrorResponseArrayNotObject.yml b/src/test/resources/test-scripts/action/response/syntaxErrorResponseArrayNotObject.yml similarity index 100% rename from src/test/resources/test-scripts/actionItems/response/syntaxErrorResponseArrayNotObject.yml rename to src/test/resources/test-scripts/action/response/syntaxErrorResponseArrayNotObject.yml diff --git a/src/test/resources/test-scripts/actionItems/response/syntaxErrorResponseStoreItemArrayNotObject.yml b/src/test/resources/test-scripts/action/response/syntaxErrorResponseStoreItemArrayNotObject.yml similarity index 100% rename from src/test/resources/test-scripts/actionItems/response/syntaxErrorResponseStoreItemArrayNotObject.yml rename to src/test/resources/test-scripts/action/response/syntaxErrorResponseStoreItemArrayNotObject.yml diff --git a/src/test/resources/test-scripts/actionItems/response/syntaxErrorResponseStoreObjectNotArray.yml b/src/test/resources/test-scripts/action/response/syntaxErrorResponseStoreObjectNotArray.yml similarity index 100% rename from src/test/resources/test-scripts/actionItems/response/syntaxErrorResponseStoreObjectNotArray.yml rename to src/test/resources/test-scripts/action/response/syntaxErrorResponseStoreObjectNotArray.yml diff --git a/src/test/resources/test-scripts/actionItems/response/syntaxErrorResponseValidationItemArrayNotObject.yml b/src/test/resources/test-scripts/action/response/syntaxErrorResponseValidationItemArrayNotObject.yml similarity index 100% rename from src/test/resources/test-scripts/actionItems/response/syntaxErrorResponseValidationItemArrayNotObject.yml rename to src/test/resources/test-scripts/action/response/syntaxErrorResponseValidationItemArrayNotObject.yml diff --git a/src/test/resources/test-scripts/actionItems/response/syntaxErrorResponseValidationObjectNotArray.yml b/src/test/resources/test-scripts/action/response/syntaxErrorResponseValidationObjectNotArray.yml similarity index 100% rename from src/test/resources/test-scripts/actionItems/response/syntaxErrorResponseValidationObjectNotArray.yml rename to src/test/resources/test-scripts/action/response/syntaxErrorResponseValidationObjectNotArray.yml diff --git a/src/test/resources/test-scripts/actionItems/subrequests/staticSubrequests.yml b/src/test/resources/test-scripts/action/subrequests/staticSubrequests.yml similarity index 100% rename from src/test/resources/test-scripts/actionItems/subrequests/staticSubrequests.yml rename to src/test/resources/test-scripts/action/subrequests/staticSubrequests.yml diff --git a/src/test/resources/test-scripts/actionItems/subrequests/syntaxErrorStatic.yml b/src/test/resources/test-scripts/action/subrequests/syntaxErrorStatic.yml similarity index 100% rename from src/test/resources/test-scripts/actionItems/subrequests/syntaxErrorStatic.yml rename to src/test/resources/test-scripts/action/subrequests/syntaxErrorStatic.yml diff --git a/src/test/resources/test-scripts/actionItems/subrequests/syntaxErrorSubrequests.yml b/src/test/resources/test-scripts/action/subrequests/syntaxErrorSubrequests.yml similarity index 100% rename from src/test/resources/test-scripts/actionItems/subrequests/syntaxErrorSubrequests.yml rename to src/test/resources/test-scripts/action/subrequests/syntaxErrorSubrequests.yml diff --git a/src/test/resources/test-scripts/actionItems/subrequests/syntaxErrorSubrequestsObjectNotArray.yml b/src/test/resources/test-scripts/action/subrequests/syntaxErrorSubrequestsObjectNotArray.yml similarity index 100% rename from src/test/resources/test-scripts/actionItems/subrequests/syntaxErrorSubrequestsObjectNotArray.yml rename to src/test/resources/test-scripts/action/subrequests/syntaxErrorSubrequestsObjectNotArray.yml diff --git a/src/test/resources/test-scripts/action/subrequests/syntaxErrorSubrequestsStaticItemObjectNotArray.yml b/src/test/resources/test-scripts/action/subrequests/syntaxErrorSubrequestsStaticItemObjectNotArray.yml new file mode 100644 index 00000000..19cddee0 --- /dev/null +++ b/src/test/resources/test-scripts/action/subrequests/syntaxErrorSubrequestsStaticItemObjectNotArray.yml @@ -0,0 +1,4 @@ +- Action : + Subrequests : + - Static : + url \ No newline at end of file diff --git a/src/test/resources/test-scripts/actionItems/subrequests/syntaxErrorSubrequestsXhrItemArrayNotObject.yml b/src/test/resources/test-scripts/action/subrequests/syntaxErrorSubrequestsXhrItemArrayNotObject.yml similarity index 100% rename from src/test/resources/test-scripts/actionItems/subrequests/syntaxErrorSubrequestsXhrItemArrayNotObject.yml rename to src/test/resources/test-scripts/action/subrequests/syntaxErrorSubrequestsXhrItemArrayNotObject.yml diff --git a/src/test/resources/test-scripts/actionItems/subrequests/syntaxErrorXhr.yml b/src/test/resources/test-scripts/action/subrequests/syntaxErrorXhr.yml similarity index 100% rename from src/test/resources/test-scripts/actionItems/subrequests/syntaxErrorXhr.yml rename to src/test/resources/test-scripts/action/subrequests/syntaxErrorXhr.yml diff --git a/src/test/resources/test-scripts/actionItems/subrequests/xhrSubrequests.yml b/src/test/resources/test-scripts/action/subrequests/xhrSubrequests.yml similarity index 100% rename from src/test/resources/test-scripts/actionItems/subrequests/xhrSubrequests.yml rename to src/test/resources/test-scripts/action/subrequests/xhrSubrequests.yml diff --git a/src/test/resources/test-scripts/syntaxErrorAction.yml b/src/test/resources/test-scripts/action/syntaxErrorAction.yml similarity index 100% rename from src/test/resources/test-scripts/syntaxErrorAction.yml rename to src/test/resources/test-scripts/action/syntaxErrorAction.yml diff --git a/src/test/resources/test-scripts/syntaxErrorActionArrayNotObject.yml b/src/test/resources/test-scripts/action/syntaxErrorActionArrayNotObject.yml similarity index 100% rename from src/test/resources/test-scripts/syntaxErrorActionArrayNotObject.yml rename to src/test/resources/test-scripts/action/syntaxErrorActionArrayNotObject.yml diff --git a/src/test/resources/test-scripts/wrongOrder.yml b/src/test/resources/test-scripts/action/wrongOrder.yml similarity index 100% rename from src/test/resources/test-scripts/wrongOrder.yml rename to src/test/resources/test-scripts/action/wrongOrder.yml diff --git a/src/test/resources/test-scripts/wrongOrderAction.yml b/src/test/resources/test-scripts/action/wrongOrderAction.yml similarity index 100% rename from src/test/resources/test-scripts/wrongOrderAction.yml rename to src/test/resources/test-scripts/action/wrongOrderAction.yml diff --git a/src/test/resources/test-scripts/actionItems/subrequests/syntaxErrorSubrequestsStaticItemObjectNotArray.yml b/src/test/resources/test-scripts/actionItems/subrequests/syntaxErrorSubrequestsStaticItemObjectNotArray.yml deleted file mode 100644 index 47dc1568..00000000 --- a/src/test/resources/test-scripts/actionItems/subrequests/syntaxErrorSubrequestsStaticItemObjectNotArray.yml +++ /dev/null @@ -1,4 +0,0 @@ -- Action : - Subrequests : - - Static : - url \ No newline at end of file diff --git a/src/test/resources/test-scripts/store.yml b/src/test/resources/test-scripts/store/store.yml similarity index 100% rename from src/test/resources/test-scripts/store.yml rename to src/test/resources/test-scripts/store/store.yml diff --git a/src/test/resources/test-scripts/syntaxErrorStoreObjectNotArray.yml b/src/test/resources/test-scripts/store/syntaxErrorStoreObjectNotArray.yml similarity index 100% rename from src/test/resources/test-scripts/syntaxErrorStoreObjectNotArray.yml rename to src/test/resources/test-scripts/store/syntaxErrorStoreObjectNotArray.yml diff --git a/src/test/resources/test-scripts/testData.yml b/src/test/resources/test-scripts/storeDefault/testData.yml similarity index 100% rename from src/test/resources/test-scripts/testData.yml rename to src/test/resources/test-scripts/storeDefault/testData.yml diff --git a/src/test/resources/test-scripts/tmp.yml b/src/test/resources/test-scripts/storeDefault/tmp.yml similarity index 100% rename from src/test/resources/test-scripts/tmp.yml rename to src/test/resources/test-scripts/storeDefault/tmp.yml