HHH-11435 - Alias available in WITH clause although not defined yet and generates invalid SQL
- Add unit test
This commit is contained in:
parent
81c25d24f4
commit
00dfc83aeb
|
@ -7,6 +7,8 @@
|
|||
package org.hibernate.test.hql;
|
||||
|
||||
import org.hibernate.jpa.test.BaseEntityManagerFunctionalTestCase;
|
||||
|
||||
import org.hibernate.testing.FailureExpected;
|
||||
import org.hibernate.testing.TestForIssue;
|
||||
import org.junit.Before;
|
||||
import org.junit.Rule;
|
||||
|
@ -68,6 +70,20 @@ public class JoinOnClauseTest extends BaseEntityManagerFunctionalTestCase {
|
|||
} );
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestForIssue(jiraKey = "HHH-11435")
|
||||
@FailureExpected( jiraKey = "HHH-11435" )
|
||||
public void testOnClauseUsesNonDrivingTableAlias() {
|
||||
doInJPA( this::entityManagerFactory, entityManager -> {
|
||||
try {
|
||||
entityManager.createQuery("SELECT b1 FROM Book b1 JOIN Book b2 ON b1.author = author2 LEFT JOIN b2.author author2");
|
||||
fail("Referring to a join alias in the on clause that is joined later should be invalid!");
|
||||
} catch (IllegalArgumentException ex) {
|
||||
// TODO: Assert it fails due to the alias not being defined
|
||||
}
|
||||
} );
|
||||
}
|
||||
|
||||
@Entity(name = "Item")
|
||||
@Inheritance(strategy = InheritanceType.JOINED)
|
||||
public static class Item {
|
||||
|
|
Loading…
Reference in New Issue