@Test
public void testGetLimitStringWithCTE() {
final String query = "with T1 as (select * from A) select * from T1";
assertEquals(
"with T1 as (select * from A), query AS (select inner_query.*, ROW_NUMBER() OVER (ORDER BY CURRENT_TIMESTAMP) as __hibernate_row_nr__ FROM ( " +
"select TOP(?) * from T1) inner_query ) " +
"SELECT * FROM query WHERE __hibernate_row_nr__ >= ? AND __hibernate_row_nr__ < ?",
dialect.buildLimitHandler( query, toRowSelection( 1, 3 ) ).getProcessedSql()
);
}