Skip to content

Commit a283d35

Browse files
committed
Oracle8iDialect: Test created for Paging bug repro(table starting with keyword)
1 parent a7acbed commit a283d35

File tree

2 files changed

+32
-0
lines changed

2 files changed

+32
-0
lines changed
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
using NHibernate.Dialect;
2+
using NHibernate.SqlCommand;
3+
using NUnit.Framework;
4+
5+
namespace NHibernate.Test.DialectTest
6+
{
7+
[TestFixture]
8+
public class Oracle8iDialectFixture
9+
{
10+
[Test]
11+
public void GetLimitStringWithTableStartingWithSelectKeyword()
12+
{
13+
var dialect = new Oracle8iDialect();
14+
var sqlString=new SqlString(@"select selectlimi0_.""Id"" as column1_2_,selectlimi0_.""FirstName"" as column2_2_,selectlimi0_.""LastName"" as column3_2_ from ""SelectLimit"" selectlimi0_");
15+
var expected = new SqlString(@"select column1_2_,column2_2_,column3_2_ from ( select selectlimi0_.""Id"" as column1_2_,selectlimi0_.""FirstName"" as column2_2_,selectlimi0_.""LastName"" as column3_2_ from ""SelectLimit"" selectlimi0_ ) where rownum <=1");
16+
var limited=dialect.GetLimitString(sqlString, null, new SqlString("1"));
17+
Assert.AreEqual(limited, expected);
18+
}
19+
20+
[Test]
21+
public void GetLimitStringWithTableNotStartingWithSelectKeyword()
22+
{
23+
var dialect = new Oracle8iDialect();
24+
var sqlString = new SqlString(@"select eselectlimi0.""Id"" as column1_2_,eselectlimi0.""FirstName"" as column2_2_,eselectlimi0.""LastName"" as column3_2_ from ""SelectLimit"" eselectlimi0");
25+
var expected = new SqlString(@"select column1_2_,column2_2_,column3_2_ from ( select eselectlimi0.""Id"" as column1_2_,eselectlimi0.""FirstName"" as column2_2_,eselectlimi0.""LastName"" as column3_2_ from ""SelectLimit"" eselectlimi0 ) where rownum <=1");
26+
27+
var limited = dialect.GetLimitString(sqlString, null, new SqlString("1"));
28+
Assert.AreEqual(limited, expected);
29+
}
30+
}
31+
}

src/NHibernate.Test/NHibernate.Test.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -240,6 +240,7 @@
240240
<Compile Include="DialectTest\MsSql2012DialectFixture.cs" />
241241
<Compile Include="DialectTest\LockHintAppenderFixture.cs" />
242242
<Compile Include="DialectTest\MsSqlCe40DialectFixture.cs" />
243+
<Compile Include="DialectTest\Oracle8iDialectFixture.cs" />
243244
<Compile Include="DialectTest\SchemaTests\ColumnMetaDataFixture.cs" />
244245
<Compile Include="DriverTest\DbProviderFactoryDriveConnectionCommandProviderTest.cs" />
245246
<Compile Include="DriverTest\FirebirdClientDriverFixture.cs" />

0 commit comments

Comments
 (0)