use of org.apache.cayenne.testdo.testmap.Artist in project cayenne by apache.
the class SQLTemplateActionIT method selectObjects.
@Test
public void selectObjects() throws Exception {
createFourArtists();
String templateString = "SELECT * FROM ARTIST";
SQLTemplate sqlTemplate = new SQLTemplate(Artist.class, templateString);
if (unitDbAdapter.isLowerCaseNames()) {
sqlTemplate.setColumnNamesCapitalization(CapsStrategy.UPPER);
}
@SuppressWarnings("unchecked") List<Artist> artists = (List<Artist>) objectContext.performQuery(sqlTemplate);
assertEquals(4, artists.size());
for (Artist artist : artists) {
assertTrue(artist.getArtistName().startsWith("artist"));
}
}
use of org.apache.cayenne.testdo.testmap.Artist in project cayenne by apache.
the class DefaultSelectTranslatorIT method testDbEntityQualifier_RelatedMatch.
@Test
public void testDbEntityQualifier_RelatedMatch() throws Exception {
SelectQuery<Artist> q = new SelectQuery(Painting.class, ExpressionFactory.matchExp("toArtist.artistName", "foo"));
final DbEntity entity = context.getEntityResolver().getDbEntity("ARTIST");
final DbEntity middleEntity = context.getEntityResolver().getDbEntity("ARTIST_GROUP");
DefaultSelectTranslator transl = new DefaultSelectTranslator(q, dataNode.getAdapter(), dataNode.getEntityResolver());
entity.setQualifier(ExpressionFactory.exp("ARTIST_NAME = \"123\""));
middleEntity.setQualifier(ExpressionFactory.exp("GROUP_ID = 1987"));
try {
String generatedSql = transl.getSql();
// do some simple assertions to make sure all parts are in
assertNotNull(generatedSql);
assertTrue(generatedSql.startsWith("SELECT "));
assertTrue(generatedSql.indexOf(" FROM ") > 0);
if (generatedSql.contains("RTRIM")) {
assertTrue(generatedSql.indexOf("ARTIST_NAME) = ") > generatedSql.indexOf("RTRIM("));
} else if (generatedSql.contains("TRIM")) {
assertTrue(generatedSql.indexOf("ARTIST_NAME) = ") > generatedSql.indexOf("TRIM("));
} else {
assertTrue(generatedSql.indexOf("ARTIST_NAME = ") > 0);
}
} finally {
entity.setQualifier(null);
middleEntity.setQualifier(null);
}
}
use of org.apache.cayenne.testdo.testmap.Artist in project cayenne by apache.
the class DefaultSelectTranslatorIT method testDbEntityQualifier_FlattenedRel.
@Test
public void testDbEntityQualifier_FlattenedRel() throws Exception {
SelectQuery<Artist> q = new SelectQuery<Artist>(Artist.class, ExpressionFactory.matchExp("groupArray.name", "bar"));
final DbEntity entity = context.getEntityResolver().getDbEntity("ARTIST");
final DbEntity middleEntity = context.getEntityResolver().getDbEntity("ARTIST_GROUP");
DefaultSelectTranslator transl = new DefaultSelectTranslator(q, dataNode.getAdapter(), dataNode.getEntityResolver());
entity.setQualifier(ExpressionFactory.exp("ARTIST_NAME = \"123\""));
middleEntity.setQualifier(ExpressionFactory.exp("GROUP_ID = 1987"));
try {
String generatedSql = transl.getSql();
// do some simple assertions to make sure all parts are in
assertNotNull(generatedSql);
assertTrue(generatedSql.startsWith("SELECT "));
assertTrue(generatedSql.indexOf(" FROM ") > 0);
if (generatedSql.contains("RTRIM")) {
assertTrue(generatedSql.indexOf("ARTIST_NAME) = ") > generatedSql.indexOf("RTRIM("));
} else if (generatedSql.contains("TRIM")) {
assertTrue(generatedSql.indexOf("ARTIST_NAME) = ") > generatedSql.indexOf("TRIM("));
} else {
assertTrue(generatedSql.indexOf("ARTIST_NAME = ") > 0);
}
} finally {
entity.setQualifier(null);
middleEntity.setQualifier(null);
}
}
use of org.apache.cayenne.testdo.testmap.Artist in project cayenne by apache.
the class DeleteObjectIT method testDeleteHollow.
@Test
public void testDeleteHollow() throws Exception {
createHollowDataSet();
List<Painting> paintings = context.performQuery(new SelectQuery(Painting.class));
Painting p = paintings.get(0);
Artist a = p.getToArtist();
assertEquals(PersistenceState.HOLLOW, a.getPersistenceState());
context.deleteObjects(a);
assertEquals(PersistenceState.DELETED, a.getPersistenceState());
}
use of org.apache.cayenne.testdo.testmap.Artist in project cayenne by apache.
the class DeleteObjectIT method testDeleteNew.
@Test
public void testDeleteNew() throws Exception {
Artist artist = context.newObject(Artist.class);
artist.setArtistName("a");
assertEquals(PersistenceState.NEW, artist.getPersistenceState());
context.deleteObjects(artist);
assertEquals(PersistenceState.TRANSIENT, artist.getPersistenceState());
context.rollbackChanges();
assertEquals(PersistenceState.TRANSIENT, artist.getPersistenceState());
}
Aggregations