Package er.plugintest.tests

Source Code of er.plugintest.tests.ReadTest

package er.plugintest.tests;

import org.apache.log4j.Logger;

import com.webobjects.eocontrol.EOFetchSpecification;
import com.webobjects.foundation.NSArray;

import er.extensions.eof.ERXBatchFetchUtilities;
import er.extensions.eof.ERXEC;
import er.extensions.eof.ERXEOControlUtilities;
import er.plugintest.model.City;
import er.plugintest.model.Country;
import er.plugintest.model.CountryLanguage;

public class ReadTest extends PluginTest {

  public static final Logger log = Logger.getLogger(ReadTest.class);
  public ReadTest(String name) {
    super(name);
  }

  @Override
  protected void setUp() throws Exception {
    super.setUp();
    resetData();
  }

  public void testFetchAll() {
    ERXEC ec = (ERXEC) ERXEC.newEditingContext();
    ec.lock();
    try {
     
      NSArray<City> cities = City.fetchAllCities(ec);
     
      assertNotNull(cities);
      assertEquals(28, cities.count());
    } finally {
      ec.unlock();
    }
  }
 
  public void testSimpleQual() {
    ERXEC ec = (ERXEC) ERXEC.newEditingContext();
    ec.lock();
    try {
     
      NSArray<City> cities = City.fetchCities(ec, City.NAME.like("Rotter*"), null);
     
      assertNotNull(cities);
      assertEquals(1, cities.count());
    } finally {
      ec.unlock();
    }
  }

  public void testCaseInsensativeQual() {
    ERXEC ec = (ERXEC) ERXEC.newEditingContext();
    ec.lock();
    try {
     
      NSArray<City> cities = City.fetchCities(ec, City.NAME.likeInsensitive("roTTer*"), null);
     
      assertNotNull(cities);
      assertEquals(1, cities.count());
    } finally {
      ec.unlock();
    }
  }
 
  public void testJoin() {
    ERXEC ec = (ERXEC) ERXEC.newEditingContext();
    ec.lock();
    try {
     
      NSArray<City> cities = City.fetchCities(ec, City.COUNTRY.dot(Country.CODE).eq("NLD"), null);
     
      assertNotNull(cities);
      assertEquals(28, cities.count());
    } finally {
      ec.unlock();
    }
  }
 
  public void testLeftJoin() {
    ERXEC ec = (ERXEC) ERXEC.newEditingContext();
    ec.lock();
    try {
     
      NSArray<Country> countries = Country.fetchCountries(ec,
          Country.COUNTRY_LANGUAGES.dot(CountryLanguage.LANGUAGE).eq("Dutch").or// this is left join
              Country.NAME.like("Nor*"))
          , Country.NAME.ascs());
     
      assertNotNull(countries);
      assertEquals(2, countries.count());
    } finally {
      ec.unlock();
    }
   
  }

  public void testSortOrder() {
    ERXEC ec = (ERXEC) ERXEC.newEditingContext();
    ec.lock();
    try {
     
      NSArray<City> cities = City.fetchCities(ec, City.NAME.like("A*"),  City.NAME.ascInsensitives());
     
      assertNotNull(cities);
      City city = cities.objectAtIndex(0);
      assertNotNull(city);
      log.debug(city.name());
      assertEquals("Alkmaar", city.name());
    } finally {
      ec.unlock();
    }
  }

  public void testBatchFetch() {
    ERXEC ec = (ERXEC) ERXEC.newEditingContext();
    ec.lock();
    try {
     
      NSArray<Country> countries = Country.fetchAllCountries(ec);
     
      assertNotNull(countries);
      assertEquals(2, countries.count());
      ERXBatchFetchUtilities.batchFetch(countries, Country.CITIES_KEY);
    } finally {
      ec.unlock();
    }
  }
 
  public void testLimitedFetch() {
    ERXEC ec = (ERXEC) ERXEC.newEditingContext();
    ec.lock();
    try {
     
      EOFetchSpecification fs = new EOFetchSpecification(City.ENTITY_NAME, null, City.NAME.ascs());
      NSArray<City> cities = ERXEOControlUtilities.objectsInRange(ec, fs, 1, 5);
     
      assertNotNull(cities);
      assertEquals(4, cities.count());
    } finally {
      ec.unlock();
    }
  }

 
  public void testMoreComplexLimitedFetch() {
    ERXEC ec = (ERXEC) ERXEC.newEditingContext();
    ec.lock();
    try {
     
      EOFetchSpecification fs = new EOFetchSpecification(City.ENTITY_NAME, City.COUNTRY.dot(Country.CODE).eq("NLD"), City.NAME.ascs());
      NSArray<City> cities = ERXEOControlUtilities.objectsInRange(ec, fs, 1, 5);
     
      assertNotNull(cities);
      assertEquals(4, cities.count());
    } finally {
      ec.unlock();
    }
  }
 
 
//
//  public void testFetchAll() {
//    ERXEC ec = (ERXEC) ERXEC.newEditingContext();
//    ec.lock();
//    try {
//     
//      NSArray<City> cities = City.fetchAllCities(ec);
//     
//      assertNotNull(cities);
//      assertEquals(29, cities.count());
//    } finally {
//      ec.unlock();
//    }
//  }
//
//  public void testFetchAll() {
//    ERXEC ec = (ERXEC) ERXEC.newEditingContext();
//    ec.lock();
//    try {
//     
//      NSArray<City> cities = City.fetchAllCities(ec);
//     
//      assertNotNull(cities);
//      assertEquals(29, cities.count());
//    } finally {
//      ec.unlock();
//    }
//  }
//
//  public void testFetchAll() {
//    ERXEC ec = (ERXEC) ERXEC.newEditingContext();
//    ec.lock();
//    try {
//     
//      NSArray<City> cities = City.fetchAllCities(ec);
//     
//      assertNotNull(cities);
//      assertEquals(29, cities.count());
//    } finally {
//      ec.unlock();
//    }
//  }


}
TOP

Related Classes of er.plugintest.tests.ReadTest

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.