From 3175214a8f12fe9a945b3020dabb5b19dee5edd3 Mon Sep 17 00:00:00 2001 From: gg-shq Date: Wed, 7 Feb 2018 19:00:12 +0300 Subject: [PATCH 1/3] IGNITE-7606: Added BATCH_SIZE tests --- .../sql/SqlParserBulkLoadSelfTest.java | 29 +++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/modules/core/src/test/java/org/apache/ignite/internal/sql/SqlParserBulkLoadSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/sql/SqlParserBulkLoadSelfTest.java index b5cd55be2169f..d55e69e34eb20 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/sql/SqlParserBulkLoadSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/sql/SqlParserBulkLoadSelfTest.java @@ -23,8 +23,6 @@ public class SqlParserBulkLoadSelfTest extends SqlParserAbstractSelfTest { /** * Tests for COPY command. - * - * @throws Exception If any of sub-tests was failed. */ public void testCopy() { assertParseError(null, @@ -66,5 +64,32 @@ public void testCopy() { assertParseError(null, "copy from \"any.file\" into Person (_key, age, firstName, lastName) format lsd", "Unknown format name: LSD"); + + // BATCH_SIZE + + assertParseError(null, + "copy from \"any.file\" into Person (_key, age, firstName, lastName) format csv" + + " batch_size " + Integer.MIN_VALUE, + "Batch size should be within [1.."); + + assertParseError(null, + "copy from \"any.file\" into Person (_key, age, firstName, lastName) format csv" + + " batch_size 0", + "Batch size should be within [1.."); + + assertParseError(null, + "copy from \"any.file\" into Person (_key, age, firstName, lastName) format csv" + + " batch_size " + Integer.MAX_VALUE, + "Batch size should be within [1..2147483135]"); + + assertParseError(null, + "copy from \"any.file\" into Person (_key, age, firstName, lastName) format csv" + + " batch_size", + "Unexpected end of command (expected: \"[integer]\")"); + + assertParseError(null, + "copy from \"any.file\" into Person (_key, age, firstName, lastName) format csv" + + " batch_size postmark", + "Unexpected token: \"POSTMARK\" (expected: \"[integer]\")"); } } From 6e54a8262a6b1358cdc2fdd1de9728fce09f068f Mon Sep 17 00:00:00 2001 From: shq Date: Fri, 9 Feb 2018 01:33:00 +0300 Subject: [PATCH 2/3] IGNITE-7535: Added test for COPY...FORMAT without parameter --- .../ignite/internal/sql/SqlParserBulkLoadSelfTest.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/modules/core/src/test/java/org/apache/ignite/internal/sql/SqlParserBulkLoadSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/sql/SqlParserBulkLoadSelfTest.java index d55e69e34eb20..61e7e072e1abe 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/sql/SqlParserBulkLoadSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/sql/SqlParserBulkLoadSelfTest.java @@ -58,9 +58,13 @@ public void testCopy() { // FORMAT assertParseError(null, - "copy from \"any.file\" into Person (_key, age, firstName, lastName)", + "copy from \"any.file\" into Person (_key, age, firstName, lastName) ", "Unexpected end of command (expected: \"FORMAT\")"); + assertParseError(null, + "copy from \"any.file\" into Person (_key, age, firstName, lastName) format ", + "Unexpected end of command (expected: \"[identifier]\")"); + assertParseError(null, "copy from \"any.file\" into Person (_key, age, firstName, lastName) format lsd", "Unknown format name: LSD"); From b5fff83948c13e1c0e3622a64da3f3d7d9a431ef Mon Sep 17 00:00:00 2001 From: shq Date: Fri, 9 Feb 2018 03:01:38 +0300 Subject: [PATCH 3/3] IGNITE-7605: Added assertParseSuccess() to SqlParserBulkLoadSelfTest --- .../ignite/internal/sql/SqlParserBulkLoadSelfTest.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/modules/core/src/test/java/org/apache/ignite/internal/sql/SqlParserBulkLoadSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/sql/SqlParserBulkLoadSelfTest.java index 61e7e072e1abe..df5f87afd1643 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/sql/SqlParserBulkLoadSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/sql/SqlParserBulkLoadSelfTest.java @@ -17,6 +17,8 @@ package org.apache.ignite.internal.sql; +import org.apache.ignite.internal.util.typedef.X; + /** * Tests for SQL parser: COPY command. */ @@ -96,4 +98,10 @@ public void testCopy() { " batch_size postmark", "Unexpected token: \"POSTMARK\" (expected: \"[integer]\")"); } + + public static void assertParseSuccess(String schemaName, String sql) { + new SqlParser(schemaName, sql).nextCommand(); + + X.println("Successfully parsed SQL statement: " + sql); + } }