From a9afeb567b9d246d160ce5ddef9fbda76a3c3363 Mon Sep 17 00:00:00 2001 From: Cherian Mathew Date: Thu, 3 Sep 2015 12:09:39 +0200 Subject: [PATCH] #5138 Add test for normal Person load case --- .../session/CdmEntitySessionAwareTest.java | 32 ++++++++++++------- .../session/CdmEntitySessionAwareTest.xml | 6 ++-- 2 files changed, 23 insertions(+), 15 deletions(-) diff --git a/eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/session/CdmEntitySessionAwareTest.java b/eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/session/CdmEntitySessionAwareTest.java index 4da3ed026..65445fc57 100644 --- a/eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/session/CdmEntitySessionAwareTest.java +++ b/eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/session/CdmEntitySessionAwareTest.java @@ -34,7 +34,6 @@ import eu.etaxonomy.cdm.api.service.IUserService; import eu.etaxonomy.cdm.api.service.IVocabularyService; import eu.etaxonomy.cdm.model.agent.AgentBase; import eu.etaxonomy.cdm.model.agent.Person; -import eu.etaxonomy.cdm.model.agent.TeamOrPersonBase; import eu.etaxonomy.cdm.model.common.CdmBase; import eu.etaxonomy.cdm.model.common.Credit; import eu.etaxonomy.cdm.model.common.DefinedTermBase; @@ -65,6 +64,8 @@ public class CdmEntitySessionAwareTest extends RemotingSessionAwareTest { UUID subKeyUuid = UUID.fromString("9d8bf4f6-a70a-4b80-8556-2ccfb436ff01"); //UUID polytomousKeyUuid = UUID.fromString("bab66772-2c83-428a-bb6d-655d12ac6097"); UUID taxon1Uuid = UUID.fromString("2b336df7-29e8-4f79-985f-66502739d22f"); + UUID personUuid = UUID.fromString("945d08f2-eb92-45b6-9252-6275ea6d338b"); + IPolytomousKeyService polytomousKeyService = getRemoteApplicationController().getPolytomousKeyService(); @@ -474,18 +475,27 @@ public class CdmEntitySessionAwareTest extends RemotingSessionAwareTest { @Ignore // activate after fixing #5138 @Test - public void savePerson() { - TeamOrPersonBase teamOrPerson = Person.NewInstance(); - teamOrPerson.setTitleCache("New Person", true); - teamOrPerson = (TeamOrPersonBase)CdmApplicationState.getCurrentAppConfig().getAgentService().merge(teamOrPerson); - //CdmApplicationState.getCurrentAppConfig().getAgentService().saveOrUpdate(teamOrPerson); + public void updatePerson() { + Person person = (Person) CdmApplicationState.getCurrentAppConfig().getAgentService().load(personUuid); + // Note : at this point the contact field in Person (AgentBase) is initialized even though no + // data related to the Contact class exists in the database. + person.setFirstname("Me"); + CdmApplicationState.getCurrentAppConfig().getAgentService().merge(person); - Person person = (Person)teamOrPerson; -// person.setFirstname("Some"); -// CdmApplicationState.getCurrentAppConfig().getAgentService().merge(teamOrPerson); + } - person = (Person) CdmApplicationState.getCurrentAppConfig().getAgentService().find(person.getUuid()); + @Ignore // activate after fixing #5138 + @Test + public void createPerson() { + + Person person = Person.NewInstance(); + //person.setTitleCache("New Person", true); + person = (Person) CdmApplicationState.getCurrentAppConfig().getAgentService().merge(person); + //Note : at this point the contact field in Person (AgentBase) is set to null which is + // different behaviour as compared to a load call on an existing Person entity. + // The fact that the contact is null will lead to the all-delete-orphan error. + person = (Person) CdmApplicationState.getCurrentAppConfig().getAgentService().load(person.getUuid()); person.setFirstname("Some"); - CdmApplicationState.getCurrentAppConfig().getAgentService().merge(teamOrPerson); + CdmApplicationState.getCurrentAppConfig().getAgentService().merge(person); } } diff --git a/eu.etaxonomy.taxeditor.test/src/test/resources/eu/etaxonomy/taxeditor/session/CdmEntitySessionAwareTest.xml b/eu.etaxonomy.taxeditor.test/src/test/resources/eu/etaxonomy/taxeditor/session/CdmEntitySessionAwareTest.xml index 1859e3713..4448325b1 100644 --- a/eu.etaxonomy.taxeditor.test/src/test/resources/eu/etaxonomy/taxeditor/session/CdmEntitySessionAwareTest.xml +++ b/eu.etaxonomy.taxeditor.test/src/test/resources/eu/etaxonomy/taxeditor/session/CdmEntitySessionAwareTest.xml @@ -95,7 +95,7 @@ - + @@ -119,8 +119,6 @@ - - - + -- 2.34.1