Package er.plugintest.tests

Source Code of er.plugintest.tests.CUDTest

package er.plugintest.tests;

import java.io.IOException;

import com.webobjects.foundation.NSData;

import er.extensions.eof.ERXEC;
import er.extensions.eof.ERXEOControlUtilities;
import er.extensions.eof.ERXModelGroup;
import er.extensions.foundation.ERXFileUtilities;
import er.plugintest.model.City;
import er.plugintest.model.Country;

public class CUDTest extends PluginTest{

  public CUDTest(String name) {
    super(name);
  }

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


  public void testInsert() {
    ERXEC ec = (ERXEC) ERXEC.newEditingContext();
    ec.lock();
    try {
      City city = City.createCity(ec, "Washington");
      city.setDistict("DC");
      city.setPopulation(650000);
      city.setDescription("This is some text to make sure long strings work");


      log.debug(ERXModelGroup.prototypeEntityNameForModel(model));
      //Employee emp = Employee.createEmployee(ec, "Bugs", "Bunny", false, Company.createCompany(ec, "Boston Opera"));

      ec.saveChanges();

      Integer cnt = ERXEOControlUtilities.objectCountWithQualifier(ec, City.ENTITY_NAME, City.DISTICT.eq("DC"));

      assertNotNull(cnt);
      assertEquals(Integer.valueOf(1), cnt);

      Country country = Country.createCountry(ec, "USA", "United States of America");
      country.setCapital(city);
      try {
        // make sure blobs work
        NSData flag = new NSData(ERXFileUtilities.inputStreamForResourceNamed("us.png", null, null), 1024);
        country.setFlag(flag);
      } catch (IOException e) {
        log.error(org.apache.commons.lang.exception.ExceptionUtils.getFullStackTrace(e), e);
        throw new RuntimeException(e.getMessage(), e);
      }
      ec.saveChanges();
      cnt = ERXEOControlUtilities.objectCountWithQualifier(ec, Country.ENTITY_NAME, Country.CODE.eq("USA"));

      assertNotNull(cnt);
      assertEquals(Integer.valueOf(1), cnt);
    } finally {
      ec.unlock();
    }
  }


  public void testUpdate() {
    ERXEC ec = (ERXEC) ERXEC.newEditingContext();
    ec.lock();
    try {
      Country country = Country.fetchCountry(ec, Country.CODE.eq("NLD"));
      final String headOfState = "Queen " + country.headOfState();
      country.setHeadOfState(headOfState);
      ec.saveChanges();

      Integer cnt = ERXEOControlUtilities.objectCountWithQualifier(ec, Country.ENTITY_NAME, Country.HEAD_OF_STATE.eq(headOfState));

      assertNotNull(cnt);
      assertEquals(Integer.valueOf(1), cnt);
    } finally {
      ec.unlock();
    }

  }

  public void testDelete() {
    ERXEC ec = (ERXEC) ERXEC.newEditingContext();
    ec.lock();
    try {
      Country country = Country.fetchCountry(ec, Country.CODE.eq("NOR"));
      country.delete();
      ec.saveChanges();

      Integer cnt = ERXEOControlUtilities.objectCountWithQualifier(ec, Country.ENTITY_NAME, Country.CODE.eq("NOR"));

      assertNotNull(cnt);
      assertEquals(Integer.valueOf(0), cnt);
    } finally {
      ec.unlock();
    }

  }
}
TOP

Related Classes of er.plugintest.tests.CUDTest

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.