package com.alibaba.json.bvt.parser.stream;
import java.io.StringReader;
import java.lang.reflect.Field;
import org.junit.Assert;
import junit.framework.TestCase;
import com.alibaba.fastjson.JSONReader;
import com.alibaba.fastjson.parser.Feature;
public class JSONReaderTest_error extends TestCase {
public void test_read() throws Exception {
Field field = JSONReader.class.getDeclaredField("context");
field.setAccessible(true);
;
JSONReader reader = new JSONReader(new StringReader("[{}]"));
reader.config(Feature.AllowArbitraryCommas, true);
reader.startArray();
Object context = field.get(reader);
Field stateField = context.getClass().getDeclaredField("state");
stateField.setAccessible(true);
stateField.set(context, -1);
{
Exception error = null;
try {
reader.startObject();
} catch (Exception ex) {
error = ex;
}
Assert.assertNotNull(error);
}
{
Exception error = null;
try {
reader.readInteger();
} catch (Exception ex) {
error = ex;
}
Assert.assertNotNull(error);
}
reader.close();
}
}