diff options
author | Arne H Juul <arnej27959@users.noreply.github.com> | 2023-02-09 18:14:42 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-02-09 18:14:42 +0100 |
commit | a9bb6c6d2bf1de7a3b6fc821240a8b18fad0ca6d (patch) | |
tree | fad25177b61a3e91de34b3128c0458e60edbc0ab /config-model/src/test/java/com/yahoo | |
parent | 2fc12f5d9b7b6e890e0bcbe4fc53d2a0f6817561 (diff) | |
parent | 5bd8b14640a35e37aad01b40f3da1e2f867d5ec9 (diff) |
Merge pull request #25914 from vespa-engine/bratseth/no-content
Handle schema files with no content
Diffstat (limited to 'config-model/src/test/java/com/yahoo')
3 files changed, 27 insertions, 31 deletions
diff --git a/config-model/src/test/java/com/yahoo/schema/IndexingParsingTestCase.java b/config-model/src/test/java/com/yahoo/schema/IndexingParsingTestCase.java index fcbea179810..f06b1a73e8e 100644 --- a/config-model/src/test/java/com/yahoo/schema/IndexingParsingTestCase.java +++ b/config-model/src/test/java/com/yahoo/schema/IndexingParsingTestCase.java @@ -2,9 +2,13 @@ package com.yahoo.schema; import com.yahoo.schema.parser.ParseException; +import com.yahoo.yolean.Exceptions; import org.junit.jupiter.api.Test; +import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assertions.fail; /** * Tests that indexing statements are parsed correctly. @@ -22,10 +26,9 @@ public class IndexingParsingTestCase extends AbstractSchemaTestCase { void requireThatParseExceptionPositionIsCorrect() throws Exception { try { ApplicationBuilder.buildFromFile("src/test/examples/indexing_invalid_expression.sd"); - } catch (ParseException e) { - if (!e.getMessage().contains("at line 5, column 57.")) { - throw e; - } + fail(); + } catch (IllegalArgumentException e) { + assertTrue(Exceptions.toMessageString(e).contains("at line 5, column 57.")); } } diff --git a/config-model/src/test/java/com/yahoo/schema/SchemaParsingTestCase.java b/config-model/src/test/java/com/yahoo/schema/SchemaParsingTestCase.java index c8657df23ce..04c78773831 100644 --- a/config-model/src/test/java/com/yahoo/schema/SchemaParsingTestCase.java +++ b/config-model/src/test/java/com/yahoo/schema/SchemaParsingTestCase.java @@ -5,9 +5,11 @@ import java.io.IOException; import com.yahoo.schema.parser.ParseException; +import com.yahoo.yolean.Exceptions; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.fail; /** @@ -27,10 +29,8 @@ public class SchemaParsingTestCase extends AbstractSchemaTestCase { void requireThatParseExceptionPositionIsCorrect() throws Exception { try { ApplicationBuilder.buildFromFile("src/test/examples/invalid_sd_construct.sd"); - } catch (ParseException e) { - if (!e.getMessage().contains("at line 5, column 36.")) { - throw e; - } + } catch (IllegalArgumentException e) { + assertTrue(Exceptions.toMessageString(e).contains("at line 5, column 36.")); } } @@ -38,10 +38,8 @@ public class SchemaParsingTestCase extends AbstractSchemaTestCase { void requireThatParserHandlesLexicalError() throws Exception { try { ApplicationBuilder.buildFromFile("src/test/examples/invalid_sd_lexical_error.sd"); - } catch (ParseException e) { - if (!e.getMessage().contains("at line 7, column 27.")) { - throw e; - } + } catch (IllegalArgumentException e) { + assertTrue(Exceptions.toMessageString(e).contains("at line 7, column 27.")); } } @@ -50,10 +48,8 @@ public class SchemaParsingTestCase extends AbstractSchemaTestCase { try { ApplicationBuilder.buildFromFile("src/test/examples/invalid_sd_junk_at_end.sd"); fail("Illegal junk at end of SD passed"); - } catch (ParseException e) { - if (!e.getMessage().contains("at line 10, column 1")) { - throw e; - } + } catch (IllegalArgumentException e) { + assertTrue(Exceptions.toMessageString(e).contains("at line 10, column 1")); } } @@ -62,10 +58,8 @@ public class SchemaParsingTestCase extends AbstractSchemaTestCase { try { ApplicationBuilder.buildFromFile("src/test/examples/invalid_sd_no_closing_bracket.sd"); fail("SD without closing bracket passed"); - } catch (ParseException e) { - if (!e.getMessage().contains("Encountered \"<EOF>\" at line 8, column 1")) { - throw e; - } + } catch (IllegalArgumentException e) { + assertTrue(Exceptions.toMessageString(e).contains("Encountered \"<EOF>\" at line 8, column 1")); } } @@ -74,10 +68,8 @@ public class SchemaParsingTestCase extends AbstractSchemaTestCase { try { ApplicationBuilder.buildFromFile("src/test/examples/invalid-name.sd"); fail("Name with dash passed"); - } catch (ParseException e) { - if (!e.getMessage().contains("invalid-name")) { - throw e; - } + } catch (IllegalArgumentException e) { + assertTrue(Exceptions.toMessageString(e).contains("invalid-name")); } } diff --git a/config-model/src/test/java/com/yahoo/schema/parser/IntermediateCollectionTestCase.java b/config-model/src/test/java/com/yahoo/schema/parser/IntermediateCollectionTestCase.java index 6ebfea41d84..72af294d384 100644 --- a/config-model/src/test/java/com/yahoo/schema/parser/IntermediateCollectionTestCase.java +++ b/config-model/src/test/java/com/yahoo/schema/parser/IntermediateCollectionTestCase.java @@ -10,6 +10,7 @@ import java.io.File; import java.io.FileReader; import java.util.List; +import com.yahoo.yolean.Exceptions; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.*; @@ -131,24 +132,24 @@ public class IntermediateCollectionTestCase { var collection = new IntermediateCollection(); var ex = assertThrows(IllegalArgumentException.class, () -> collection.addSchemaFromReader(readerOf("src/test/cfg/application/sdfilenametest/schemas/notmusic.sd"))); - assertEquals("The file containing schema 'music' must be named 'music.sd', was 'notmusic.sd'", + assertEquals("The file containing schema 'music' must be named 'music.sd', but is 'notmusic.sd'", ex.getMessage()); } @Test void bad_parse_throws() throws Exception { var collection = new IntermediateCollection(); - var ex = assertThrows(ParseException.class, () -> + var ex1 = assertThrows(IllegalArgumentException.class, () -> collection.addSchemaFromFile("src/test/examples/badparse.sd")); - assertTrue(ex.getMessage().startsWith("Failed parsing schema from src/test/examples/badparse.sd: Encountered")); - ex = assertThrows(ParseException.class, () -> + assertTrue(Exceptions.toMessageString(ex1).startsWith("Failed parsing schema from 'src/test/examples/badparse.sd': Encountered"), ex1.getMessage()); + var ex2 = assertThrows(IllegalArgumentException.class, () -> collection.addSchemaFromReader(readerOf("src/test/examples/badparse.sd"))); - assertTrue(ex.getMessage().startsWith("Failed parsing schema from src/test/examples/badparse.sd: Encountered")); + assertTrue(Exceptions.toMessageString(ex2).startsWith("Failed parsing schema from 'src/test/examples/badparse.sd': Encountered"), ex2.getMessage()); collection.addSchemaFromFile("src/test/derived/rankprofilemodularity/test.sd"); collection.addRankProfileFile("test", "src/test/derived/rankprofilemodularity/test/outside_schema1.profile"); - ex = assertThrows(ParseException.class, () -> + var ex3 = assertThrows(ParseException.class, () -> collection.addRankProfileFile("test", "src/test/examples/badparse.sd")); - assertTrue(ex.getMessage().startsWith("Failed parsing rank-profile from src/test/examples/badparse.sd: Encountered")); + assertTrue(Exceptions.toMessageString(ex3).startsWith("Failed parsing rank-profile from 'src/test/examples/badparse.sd': Encountered"), ex3.getMessage()); } @Test |