Package com.googlecode.objectify.persister.impl

Source Code of com.googlecode.objectify.persister.impl.TestObjectifyPersisterImpl

package com.googlecode.objectify.persister.impl;

import static com.googlecode.objectify.persister.util.TestUtils.*;
import static org.junit.Assert.*;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import org.junit.Before;
import org.junit.Test;

import com.google.appengine.api.datastore.DatastoreService;
import com.google.appengine.api.datastore.Transaction;
import com.googlecode.objectify.AsyncObjectify;
import com.googlecode.objectify.Key;
import com.googlecode.objectify.Objectify;
import com.googlecode.objectify.ObjectifyFactory;
import com.googlecode.objectify.Query;
import com.googlecode.objectify.persister.AsyncObjectifyPersister;
import com.googlecode.objectify.persister.BasePersisterTest;
import com.googlecode.objectify.persister.test.Product;
import com.googlecode.objectify.persister.test.User;

public class TestObjectifyPersisterImpl extends BasePersisterTest {

  @Before
  public void setUp() throws Exception {

    objectifyFactory.register(User.class);
    objectifyFactory.register(Product.class);

  }

  @Test
  public void testAsync() {

    AsyncObjectify async = persiter.async();

    assertNotNull(async);
    assertTrue(async instanceof AsyncObjectifyPersister);

  }

  @Test
  public void testGetcObjectify() {

    Objectify objectify = persiter.getObjectify();

    assertNotNull(objectify);

  }

  @Test
  public void testDeleteClassOfTLong() {

    User user1 = create("aaa");
    User user2 = create("bbb");

    persiter.put(user1, user2);

    persiter.delete(User.class, user1.getId());
    persiter.delete(User.class, user2.getId());

  }

  @Test
  public void testDeleteClassOfTString() {

    Product prod1 = create("code1", "aaa");
    Product prod2 = create("code2", "bbb");

    persiter.put(prod1, prod2);

    persiter.delete(Product.class, prod1.getCode());
    persiter.delete(Product.class, prod2.getCode());

  }

  @Test
  public void testDeleteIterableOfQ() {

    List<User> users = new ArrayList<User>();
    users.add(create("aaa"));
    users.add(create("bbb"));

    persiter.put(users);

    persiter.delete(users);

  }

  @Test
  public void testDeleteObjectArray() {

    User user1 = create("aaa");
    User user2 = create("bbb");

    persiter.put(user1, user2);

    persiter.delete(user1, user2);

  }

  @Test
  public void testFindClassOfQextendsTLong() {

    User user1 = create("aaa");

    persiter.put(user1);

    User result = persiter.find(User.class, user1.getId());

    assertEqualsUser(user1, result);

  }

  @Test
  public void testFindClassOfQextendsTString() {

    Product prod = create("code1", "aaa");

    persiter.put(prod);

    Product result = persiter.find(Product.class, prod.getCode());

    assertEqualsProduct(prod, result);

  }

  @Test
  public void testFindKeyOfQextendsT() {

    User user = create("aaa");

    persiter.put(user);

    Key<User> key = new Key<User>(User.class, user.getId());

    User result = persiter.find(key);

    assertEqualsUser(user, result);

  }

  @Test
  public void testGetClassOfQextendsTIterableOfS() {

    User user1 = create("aaa");
    User user2 = create("bbb");

    persiter.put(user1, user2);

    List<Long> ids = new ArrayList<Long>();
    ids.add(user1.getId());
    ids.add(user2.getId());

    Map<Long, User> results = persiter.get(User.class, ids);

    List<User> users = new ArrayList<User>();
    users.add(user1);
    users.add(user2);

    assertEqualsUsers(users, results.values());

  }

  @Test
  public void testGetClassOfQextendsTLong() {

    User user = create("aaa");

    persiter.put(user);

    User result = persiter.get(User.class, user.getId());

    assertEqualsUser(user, result);

  }

  @Test
  public void testGetClassOfQextendsTSArray() {

    User user1 = create("aaa");
    User user2 = create("bbb");

    persiter.put(user1, user2);

    Map<Long, User> results = persiter.get(User.class, user1.getId(), user2.getId());

    List<User> users = new ArrayList<User>();
    users.add(user1);
    users.add(user2);

    assertEqualsUsers(users, results.values());

  }

  @Test
  public void testGetClassOfQextendsTString() {

    Product prod = create("code1", "aaa");

    persiter.put(prod);

    Product result = persiter.get(Product.class, prod.getCode());

    assertEqualsProduct(prod, result);

  }

  @Test
  public void testGetDatastore() {

    DatastoreService datastore = persiter.getDatastore();
    assertNotNull(datastore);

  }

  @Test
  public void testGetFactory() {

    ObjectifyFactory factory = persiter.getFactory();

    assertNotNull(factory);
    assertEquals(objectifyFactory, factory);

  }

  @Test
  public void testGetIterableOfQextendsKeyOfQextendsT() {

    User user1 = create("aaa");
    User user2 = create("bbb");

    persiter.put(user1, user2);

    List<Key<User>> keys = new ArrayList<Key<User>>();
    keys.add(new Key<User>(User.class, user1.getId()));
    keys.add(new Key<User>(User.class, user2.getId()));

    Map<Key<User>, User> results = persiter.get(keys);

    List<User> users = new ArrayList<User>();
    users.add(user1);
    users.add(user2);

    assertEqualsUsers(users, results.values());

  }

  @Test
  public void testGetKeyOfQextendsT() {

    User user = create("aaa");

    persiter.put(user);

    Key<User> key = new Key<User>(User.class, user.getId());

    User result = persiter.get(key);

    assertEqualsUser(user, result);

  }

  @Test
  public void testGetTxn() {

    persiter = objectifyFactory.beginTransaction();

    Transaction txn = persiter.getTxn();

    assertNotNull(txn);

  }

  @Test
  public void testPutIterableOfQextendsT() {

    User user1 = create("aaa");
    User user2 = create("bbb");

    List<User> users = new ArrayList<User>();
    users.add(user1);
    users.add(user2);

    persiter.put(users);

  }

  @Test
  public void testPutT() {

    User user1 = create("aaa");

    persiter.put(user1);

  }

  @Test
  public void testPutTArray() {

    User user1 = create("aaa");
    User user2 = create("bbb");

    persiter.put(user1, user2);

  }

  @Test
  public void testQuery() {

    Query<Object> query = persiter.query();

    assertNotNull(query);
    assertTrue(query instanceof QueryPersisterImpl);

  }

  @Test
  public void testQueryClassOfT() {

    Query<User> query = persiter.query(User.class);

    assertNotNull(query);
    assertTrue(query instanceof QueryPersisterImpl);

  }

  @Test
  public void testRefreshCollectionOfT() {

    List<User> users = new ArrayList<User>();
    users.add(create("aaa"));
    users.add(create("bbb"));
    users.add(create("ccc"));

    persiter.put(users);

    List<User> tests = new ArrayList<User>();
    tests.add(cloneOf(users.get(0)));
    tests.add(cloneOf(users.get(1)));
    tests.add(cloneOf(users.get(2)));

    persiter.refresh(tests);

    assertEqualsUsers(users, tests);

  }

  @Test
  public void testRefreshT() {

    User user1 = create("aaa");

    persiter.put(user1);

    User user2 = cloneOf(user1);

    persiter.refresh(user2);

    assertEqualsUser(user1, user2);

  }

  @Test
  public void testRefreshTArray() {

    User user1 = create("aaa");
    User user2 = create("bbb");
    User user3 = create("ccc");

    persiter.put(user1, user2, user3);

    User test1 = cloneOf(user1);
    User test2 = cloneOf(user2);
    User test3 = cloneOf(user3);

    persiter.refresh(test1, test2, test3);

    assertEqualsUser(user1, test1);
    assertEqualsUser(user2, test2);
    assertEqualsUser(user3, test3);

  }

}
TOP

Related Classes of com.googlecode.objectify.persister.impl.TestObjectifyPersisterImpl

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.