use of org.seasar.doma.internal.apt.AptException in project doma by domaframework.
the class ExpressionValidatorTest method testStaticMethod_classNotFound.
@Test
void testStaticMethod_classNotFound() throws Exception {
Class<?> target = ExpressionValidationDao.class;
addCompilationUnit(target);
addProcessor(new TestProcessor() {
@Override
protected void run() {
ExecutableElement methodElement = createMethodElement(target, "testEmp", Emp.class);
Map<String, TypeMirror> parameterTypeMap = createParameterTypeMap(methodElement);
ExpressionValidator validator = new ExpressionValidator(ctx, methodElement, parameterTypeMap);
ExpressionNode node = new ExpressionParser("@Xxx@staticMethod(\"aaa\")").parse();
try {
validator.validate(node);
fail();
} catch (AptException expected) {
System.out.println(expected);
assertEquals(Message.DOMA4145, expected.getMessageResource());
}
}
});
compile();
assertTrue(getCompiledResult());
}
use of org.seasar.doma.internal.apt.AptException in project doma by domaframework.
the class SqlValidatorTest method testFor_identifier.
@Test
void testFor_identifier() throws Exception {
Class<?> target = SqlValidationDao.class;
addCompilationUnit(target);
addProcessor(new TestProcessor() {
@Override
protected void run() {
ExecutableElement methodElement = createMethodElement(target, "testFor", List.class);
LinkedHashMap<String, TypeMirror> parameterTypeMap = createParameterTypeMap(methodElement);
SqlValidator validator = new SqlValidator(ctx, methodElement, parameterTypeMap, "aaa/bbbDao/ccc.sql", false, false);
SqlParser parser = new SqlParser("select * from emp where name = /*%for e : names*/ /*x*/'aaa' /*%if e_has_next*/or/*%end*//*%end*/");
SqlNode sqlNode = parser.parse();
try {
sqlNode.accept(validator, null);
fail();
} catch (AptException expected) {
System.out.println(expected.getMessage());
assertEquals(Message.DOMA4092, expected.getMessageResource());
}
}
});
compile();
assertTrue(getCompiledResult());
}
use of org.seasar.doma.internal.apt.AptException in project doma by domaframework.
the class SqlValidatorTest method testFor_noTypeArgument.
@Test
void testFor_noTypeArgument() throws Exception {
Class<?> target = SqlValidationDao.class;
addCompilationUnit(target);
addProcessor(new TestProcessor() {
@Override
protected void run() {
ExecutableElement methodElement = createMethodElement(target, "testFor_noTypeArgument", List.class);
LinkedHashMap<String, TypeMirror> parameterTypeMap = createParameterTypeMap(methodElement);
SqlValidator validator = new SqlValidator(ctx, methodElement, parameterTypeMap, "aaa/bbbDao/ccc.sql", false, false);
SqlParser parser = new SqlParser("select * from emp where name = /*%for e : names*/ /*e*/'aaa' /*%if e_has_next*/or/*%end*//*%end*/");
SqlNode sqlNode = parser.parse();
try {
sqlNode.accept(validator, null);
fail();
} catch (AptException expected) {
System.out.println(expected.getMessage());
assertEquals(Message.DOMA4150, expected.getMessageResource());
}
}
});
compile();
assertTrue(getCompiledResult());
}
use of org.seasar.doma.internal.apt.AptException in project doma by domaframework.
the class SqlValidatorTest method testPopulate_notPopulatable.
@Test
void testPopulate_notPopulatable() throws Exception {
Class<?> target = SqlValidationDao.class;
addCompilationUnit(target);
addProcessor(new TestProcessor() {
@Override
protected void run() {
ExecutableElement methodElement = createMethodElement(target, "testPopulate", String.class);
LinkedHashMap<String, TypeMirror> parameterTypeMap = createParameterTypeMap(methodElement);
SqlValidator validator = new SqlValidator(ctx, methodElement, parameterTypeMap, "aaa/bbbDao/ccc.sql", false, false);
SqlParser parser = new SqlParser("update emp set /*%populate*/ id = id");
SqlNode sqlNode = parser.parse();
try {
sqlNode.accept(validator, null);
fail();
} catch (AptException expected) {
System.out.println(expected.getMessage());
assertEquals(Message.DOMA4270, expected.getMessageResource());
}
}
});
compile();
assertTrue(getCompiledResult());
}
use of org.seasar.doma.internal.apt.AptException in project doma by domaframework.
the class ExpressionValidatorTest method testStaticField_classNotFound.
@Test
void testStaticField_classNotFound() throws Exception {
Class<?> target = ExpressionValidationDao.class;
addCompilationUnit(target);
addProcessor(new TestProcessor() {
@Override
protected void run() {
ExecutableElement methodElement = createMethodElement(target, "testEmp", Emp.class);
Map<String, TypeMirror> parameterTypeMap = createParameterTypeMap(methodElement);
ExpressionValidator validator = new ExpressionValidator(ctx, methodElement, parameterTypeMap);
ExpressionNode node = new ExpressionParser("@Xxx@staticField").parse();
try {
validator.validate(node);
fail();
} catch (AptException expected) {
System.out.println(expected);
assertEquals(Message.DOMA4145, expected.getMessageResource());
}
}
});
compile();
assertTrue(getCompiledResult());
}
Aggregations