Skip to content

Commit

Permalink
Add unit test
Browse files Browse the repository at this point in the history
Signed-off-by: Arthur Chan <[email protected]>
  • Loading branch information
arthurscchan committed Dec 15, 2023
1 parent 6b38ebf commit 10fdbde
Showing 1 changed file with 38 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
package com.fasterxml.jackson.dataformat.ion.fuzz;

import static org.hamcrest.MatcherAssert.assertThat;
import static org.junit.Assert.fail;

import org.hamcrest.Matchers;
import org.junit.Test;

import com.fasterxml.jackson.core.exc.StreamReadException;
import com.fasterxml.jackson.dataformat.ion.*;

import java.io.ByteArrayInputStream;
import java.nio.file.Files;
import java.nio.file.Paths;

// [dataformats-binary#417]
public class Fuzz420_65062_65083IOOBETest
{
private void testIOOBE(byte[] array) throws Exception {
IonFactory f = IonFactory
.builderForTextualWriters()
.enable(IonParser.Feature.USE_NATIVE_TYPE_ID)
.build();
IonObjectMapper mapper = IonObjectMapper.builder(f).build();
try {
mapper.readTree(mapper.getFactory().createParser(new ByteArrayInputStream(array)));
fail("Should not pass (invalid content)");
} catch (StreamReadException e) {
assertThat(e.getMessage(), Matchers.containsString("Invalid type ID"));
}
}

@Test
public void testFuzz6506265083IOOBE() throws Exception {
byte[] byteArray = Files.readAllBytes(Paths.get("tc1"));
testIOOBE(byteArray);
}
}

0 comments on commit 10fdbde

Please sign in to comment.