aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrey Somov <public.somov@gmail.com>2022-09-09 09:38:25 +0300
committerAndrey Somov <public.somov@gmail.com>2022-09-09 09:38:25 +0300
commit5e56066540d72a4e2aae7d918f92406686076ceb (patch)
treedfaa8be2ce13438975b43cadb297c3eb3bb1781e
parent72dfa9f1074abe2b8a6c8776bee4476b0aed02e3 (diff)
downloadsnakeyaml-5e56066540d72a4e2aae7d918f92406686076ceb.tar.gz
Improve error message for too big document
-rw-r--r--src/main/java/org/yaml/snakeyaml/scanner/ScannerImpl.java3
-rw-r--r--src/test/java/org/yaml/snakeyaml/issues/issue102/BigDataLoadTest.java3
-rw-r--r--src/test/java/org/yaml/snakeyaml/issues/issue547/ByteLimitTest.java2
3 files changed, 5 insertions, 3 deletions
diff --git a/src/main/java/org/yaml/snakeyaml/scanner/ScannerImpl.java b/src/main/java/org/yaml/snakeyaml/scanner/ScannerImpl.java
index 1bd73569..86059f73 100644
--- a/src/main/java/org/yaml/snakeyaml/scanner/ScannerImpl.java
+++ b/src/main/java/org/yaml/snakeyaml/scanner/ScannerImpl.java
@@ -327,7 +327,8 @@ public final class ScannerImpl implements Scanner {
*/
private void fetchMoreTokens() {
if (reader.getIndex() > loaderOptions.getCodePointLimit()) {
- throw new YAMLException("The incoming YAML document exceeds the limit: " + loaderOptions.getCodePointLimit());
+ throw new YAMLException("The incoming YAML document exceeds the limit: " +
+ loaderOptions.getCodePointLimit() + " code points.");
}
// Eat whitespaces and process comments until we reach the next token.
scanToNextToken();
diff --git a/src/test/java/org/yaml/snakeyaml/issues/issue102/BigDataLoadTest.java b/src/test/java/org/yaml/snakeyaml/issues/issue102/BigDataLoadTest.java
index 65826234..63f8956c 100644
--- a/src/test/java/org/yaml/snakeyaml/issues/issue102/BigDataLoadTest.java
+++ b/src/test/java/org/yaml/snakeyaml/issues/issue102/BigDataLoadTest.java
@@ -37,7 +37,8 @@ public class BigDataLoadTest extends TestCase {
public void testBigStreamData() {
LoaderOptions options = new LoaderOptions();
options.setCodePointLimit(10000000);
- Yaml yaml = new Yaml(options); StringReader buffer = new StringReader(getLongYamlDocument(SIZE));
+ Yaml yaml = new Yaml(options);
+ StringReader buffer = new StringReader(getLongYamlDocument(SIZE));
List<?> loaded = yaml.load(buffer);
assertEquals(SIZE, loaded.size());
}
diff --git a/src/test/java/org/yaml/snakeyaml/issues/issue547/ByteLimitTest.java b/src/test/java/org/yaml/snakeyaml/issues/issue547/ByteLimitTest.java
index 69b3dce2..e6eae1e5 100644
--- a/src/test/java/org/yaml/snakeyaml/issues/issue547/ByteLimitTest.java
+++ b/src/test/java/org/yaml/snakeyaml/issues/issue547/ByteLimitTest.java
@@ -31,7 +31,7 @@ public class ByteLimitTest {
yaml.load("12345678901234567890");
fail("Long input should not be accepted");
} catch (Exception e) {
- assertEquals("The incoming YAML document exceeds the limit: 15", e.getMessage());
+ assertEquals("The incoming YAML document exceeds the limit: 15 code points.", e.getMessage());
}
}
}