Search in sources :

Example 1 with Profile

use of com.orientechnologies.orient.test.domain.whiz.Profile in project orientdb by orientechnologies.

the class CRUDObjectPhysicalTest method queryCross3Levels.

@Test(dependsOnMethods = "queryPerFloat")
public void queryCross3Levels() {
    database.getMetadata().getSchema().reload();
    final List<Profile> result = database.query(new OSQLSynchQuery<Profile>("select from Profile where location.city.country.name = 'Spain'"));
    Assert.assertTrue(result.size() > 0);
    Profile profile;
    for (int i = 0; i < result.size(); ++i) {
        profile = result.get(i);
        Assert.assertEquals(profile.getLocation().getCity().getCountry().getName(), "Spain");
    }
}
Also used : Profile(com.orientechnologies.orient.test.domain.whiz.Profile) Test(org.testng.annotations.Test)

Example 2 with Profile

use of com.orientechnologies.orient.test.domain.whiz.Profile in project orientdb by orientechnologies.

the class CRUDObjectPhysicalTest method queryWithRidAsParameters.

@Test
public void queryWithRidAsParameters() {
    database.getMetadata().getSchema().reload();
    Profile profile = (Profile) database.browseClass("Profile").next();
    final OSQLSynchQuery<Profile> query = new OSQLSynchQuery<Profile>("select from Profile where @rid = ?");
    List<Profile> result = database.query(query, new ORecordId(profile.getId()));
    Assert.assertEquals(result.size(), 1);
}
Also used : OSQLSynchQuery(com.orientechnologies.orient.core.sql.query.OSQLSynchQuery) Profile(com.orientechnologies.orient.test.domain.whiz.Profile) ORecordId(com.orientechnologies.orient.core.id.ORecordId) Test(org.testng.annotations.Test)

Example 3 with Profile

use of com.orientechnologies.orient.test.domain.whiz.Profile in project orientdb by orientechnologies.

the class CRUDObjectPhysicalTest method checkLazyLoadingOff.

@Test(dependsOnMethods = "createLinked")
public void checkLazyLoadingOff() {
    database.setLazyLoading(false);
    for (Profile obj : database.browseClass(Profile.class).setFetchPlan("*:1")) {
        Assert.assertTrue(!(obj.getFollowings() instanceof OLazyObjectSetInterface) || ((OLazyObjectSetInterface<Profile>) obj.getFollowings()).isConverted());
        Assert.assertTrue(!(obj.getFollowers() instanceof OLazyObjectSetInterface) || ((OLazyObjectSetInterface<Profile>) obj.getFollowers()).isConverted());
        if (obj.getNick().equals("Neo")) {
            Assert.assertEquals(obj.getFollowers().size(), 0);
            Assert.assertEquals(obj.getFollowings().size(), 2);
        } else if (obj.getNick().equals("Morpheus") || obj.getNick().equals("Trinity")) {
            Assert.assertEquals(obj.getFollowings().size(), 0);
            Assert.assertEquals(obj.getFollowers().size(), 1);
            Assert.assertTrue(obj.getFollowers().iterator().next() instanceof Profile);
        }
    }
}
Also used : Profile(com.orientechnologies.orient.test.domain.whiz.Profile) OLazyObjectSetInterface(com.orientechnologies.orient.core.db.object.OLazyObjectSetInterface) Test(org.testng.annotations.Test)

Example 4 with Profile

use of com.orientechnologies.orient.test.domain.whiz.Profile in project orientdb by orientechnologies.

the class CRUDObjectPhysicalTestSchemaFull method queryWithObjectAsParameter.

@Test(dependsOnMethods = "createLinked")
public void queryWithObjectAsParameter() {
    database.getMetadata().getSchema().reload();
    final OSQLSynchQuery<Profile> query = new OSQLSynchQuery<Profile>("select from Profile where name = :name and surname = :surname");
    HashMap<String, String> params = new HashMap<String, String>();
    params.put("name", "Barack");
    params.put("surname", "Obama");
    List<Profile> result = database.query(query, params);
    Assert.assertTrue(result.size() != 0);
    Profile obama = result.get(0);
    result = database.query(new OSQLSynchQuery<Profile>("select from Profile where followings contains ( @Rid = :who )"), obama);
    Assert.assertTrue(result.size() != 0);
}
Also used : OSQLSynchQuery(com.orientechnologies.orient.core.sql.query.OSQLSynchQuery) Profile(com.orientechnologies.orient.test.domain.whiz.Profile) Test(org.testng.annotations.Test)

Example 5 with Profile

use of com.orientechnologies.orient.test.domain.whiz.Profile in project orientdb by orientechnologies.

the class CRUDObjectPhysicalTestSchemaFull method testSaveMultiCircular.

@Test(dependsOnMethods = "testUpdate")
public void testSaveMultiCircular() {
    database = OObjectDatabasePool.global().acquire(url, "admin", "admin");
    try {
        startRecordNumber = database.countClusterElements("Profile");
        Profile bObama = database.newInstance(Profile.class, "ThePresident", "Barack", "Obama", null);
        bObama.setLocation(database.newInstance(Address.class, "Residence", database.newInstance(City.class, database.newInstance(Country.class, "Hawaii"), "Honolulu"), "unknown"));
        bObama.addFollower(database.newInstance(Profile.class, "PresidentSon1", "Malia Ann", "Obama", bObama));
        bObama.addFollower(database.newInstance(Profile.class, "PresidentSon2", "Natasha", "Obama", bObama));
        database.save(bObama);
    } finally {
        database.close();
    }
}
Also used : Address(com.orientechnologies.orient.test.domain.business.Address) Country(com.orientechnologies.orient.test.domain.business.Country) Profile(com.orientechnologies.orient.test.domain.whiz.Profile) Test(org.testng.annotations.Test)

Aggregations

Profile (com.orientechnologies.orient.test.domain.whiz.Profile)50 Test (org.testng.annotations.Test)46 OSQLSynchQuery (com.orientechnologies.orient.core.sql.query.OSQLSynchQuery)19 DatabaseAbstractTest (com.orientechnologies.DatabaseAbstractTest)14 OrientTest (com.orientechnologies.orient.test.database.base.OrientTest)14 Address (com.orientechnologies.orient.test.domain.business.Address)10 Country (com.orientechnologies.orient.test.domain.business.Country)10 OStorageProxy (com.orientechnologies.orient.core.storage.OStorageProxy)9 City (com.orientechnologies.orient.test.domain.business.City)6 ORecordId (com.orientechnologies.orient.core.id.ORecordId)4 ODocument (com.orientechnologies.orient.core.record.impl.ODocument)4 EnumTest (com.orientechnologies.orient.test.domain.base.EnumTest)4 OLazyObjectSetInterface (com.orientechnologies.orient.core.db.object.OLazyObjectSetInterface)2 OProperty (com.orientechnologies.orient.core.metadata.schema.OProperty)2 OCommandSQL (com.orientechnologies.orient.core.sql.OCommandSQL)2 OObjectDatabaseTx (com.orientechnologies.orient.object.db.OObjectDatabaseTx)2 Account (com.orientechnologies.orient.test.domain.business.Account)2 Proxy (javassist.util.proxy.Proxy)2 ORecordDuplicatedException (com.orientechnologies.orient.core.storage.ORecordDuplicatedException)1 OSchemaProxyObject (com.orientechnologies.orient.object.metadata.schema.OSchemaProxyObject)1