package com.alibaba.druid.bvt.sql; import junit.framework.TestCase; import org.junit.Assert; import com.alibaba.druid.sql.PagerUtils; import com.alibaba.druid.util.JdbcConstants; public class PagerUtilsTest_Limit_oracle_0 extends TestCase { public void test_oracle_oderby_0() throws Exception { String sql = "select * from t order by id"; String result = PagerUtils.limit(sql, JdbcConstants.ORACLE, 0, 10); Assert.assertEquals("SELECT XX.*, ROWNUM AS RN" + // "\nFROM (SELECT *" + // "\n\tFROM t" + // "\n\tORDER BY id" + // "\n\t) XX" + // "\nWHERE ROWNUM <= 10", result); } public void test_oracle_0() throws Exception { String sql = "select * from t"; String result = PagerUtils.limit(sql, JdbcConstants.ORACLE, 0, 10); Assert.assertEquals("SELECT *" + // "\nFROM t" + // "\nWHERE ROWNUM <= 10", result); } public void test_oracle_1() throws Exception { String sql = "select * from t"; String result = PagerUtils.limit(sql, JdbcConstants.ORACLE, 10, 10); Assert.assertEquals("SELECT *" + // "\nFROM (SELECT XX.*, ROWNUM AS RN" + // "\n\tFROM (SELECT *" + // "\n\t\tFROM t" + // "\n\t\t) XX" + // "\n\tWHERE ROWNUM <= 20" + // "\n\t) XXX" + // "\nWHERE RN > 10", result); } public void test_oracle_2() throws Exception { String sql = "select * from t"; String result = PagerUtils.limit(sql, JdbcConstants.ORACLE, 20, 10); Assert.assertEquals("SELECT *" + // "\nFROM (SELECT XX.*, ROWNUM AS RN" + // "\n\tFROM (SELECT *" + // "\n\t\tFROM t" + // "\n\t\t) XX" + // "\n\tWHERE ROWNUM <= 30" + // "\n\t) XXX" + // "\nWHERE RN > 20", result); } public void test_oracle_3() throws Exception { String sql = "select id, name, salary from t order by id, name"; String result = PagerUtils.limit(sql, JdbcConstants.ORACLE, 20, 10); Assert.assertEquals("SELECT *" + // "\nFROM (SELECT XX.*, ROWNUM AS RN" + // "\n\tFROM (SELECT id, name, salary" + // "\n\t\tFROM t" + // "\n\t\tORDER BY id, name" + // "\n\t\t) XX" + // "\n\tWHERE ROWNUM <= 30" + // "\n\t) XXX" + // "\nWHERE RN > 20", result); } }