### Question:
BatchInsertExecutor { public static BatchInsertExecutor newInstance(Config config) { if (config == null) { throw new DomaNullPointerException("config"); } return new BatchInsertExecutor(config); } private  BatchInsertExecutor(Config config); static BatchInsertExecutor newInstance(Config config); void queryTimeout(int queryTimeout); void sqlLogType(SqlLogType sqlLogType); void batchSize(int batchSize); void callerClassName(String className); void callerMethodName(String methodName); int[] execute(Iterable<P> params, BiConsumer<P, BatchBuilder> buildConsumer); List<? extends Sql<?>> getSqls();  }### Answer:
@Test public void testChangeType() { SqlBatchInsertQuery query = mockQuery(); BatchBuilder builder = BatchBuilder.newInstance(query); builder.sql("insert into Emp"); builder.sql("(name, salary)"); builder.sql("values ("); builder.param(String.class, "SMITH").sql(", "); builder.param(int.class, 100).sql(")"); builder = builder.fixSql(); builder.sql("insert into Emp"); builder.sql("(name, salary)"); builder.sql("values ("); try { builder.param(int.class, 10).sql(", "); } catch (JdbcException e) { assertEquals(Message.DOMA2229, e.getMessageResource()); return; } fail(); }
@Test public void testParamToLiteral() { SqlBatchInsertQuery query = mockQuery(); BatchBuilder builder = BatchBuilder.newInstance(query); builder.sql("insert into Emp"); builder.sql("(name, salary)"); builder.sql("values ("); builder.param(String.class, "SMITH").sql(", "); builder.param(int.class, 100).sql(")"); builder = builder.fixSql(); builder.sql("insert into Emp"); builder.sql("(name, salary)"); builder.sql("values ("); try { builder.literal(String.class, "ALLEN").sql(", "); } catch (JdbcException e) { assertEquals(Message.DOMA2230, e.getMessageResource()); return; } fail(); }