1 package eu
.etaxonomy
.taxeditor
.session
;
6 import org
.apache
.log4j
.Logger
;
7 import org
.junit
.Assert
;
8 import org
.junit
.BeforeClass
;
9 import org
.junit
.Ignore
;
10 import org
.junit
.Test
;
11 import org
.unitils
.dbunit
.annotation
.DataSet
;
13 import eu
.etaxonomy
.cdm
.api
.service
.IPolytomousKeyService
;
14 import eu
.etaxonomy
.cdm
.model
.common
.CdmBase
;
15 import eu
.etaxonomy
.cdm
.model
.common
.Language
;
16 import eu
.etaxonomy
.cdm
.model
.description
.PolytomousKey
;
17 import eu
.etaxonomy
.taxeditor
.httpinvoker
.BaseRemotingTest
;
19 //FIXME:Remoting fix data issue : User#30
22 public class CdmEntitySessionManagerTest
extends BaseRemotingTest
{
24 private static final Logger logger
= Logger
.getLogger(CdmEntitySessionManagerTest
.class);
27 IPolytomousKeyService polytomousKeyService
= getRemoteApplicationController().getPolytomousKeyService();
29 private final UUID polytomousKeyUuid
= UUID
.fromString("0d53ba20-7de4-4baa-bd8a-401048447d66");
30 private final Language english
= Language
.getLanguageFromUuid(Language
.uuidEnglish
);
34 public static void initializeCdmEntitySessionManagerTest() {
39 public void manageNullSessionTest() {
41 PolytomousKey pKey
= CdmBase
.deproxy(polytomousKeyService
.find(polytomousKeyUuid
),PolytomousKey
.class);
42 cdmEntitySessionManager
.bind(null);
43 Assert
.assertSame(pKey
, pKey
);
44 Assert
.assertNull(getActiveSession());
48 public void manageSessionWithObjectTest() {
49 PolytomousKey pKey
= CdmBase
.deproxy(polytomousKeyService
.find(polytomousKeyUuid
),PolytomousKey
.class);
51 Assert
.assertNotNull(getActiveSession());
52 List
<CdmBase
> rootEntities
= getActiveSession().getRootEntities();
54 // FIXME:Remoting fix test of setting root entities
55 //Assert.assertEquals(rootEntities.size(),1);
56 //Assert.assertSame(rootEntities.get(0), pKey);
58 String upTitleCache
= "Updated Title Cache";
59 String upStatement
= "Updated Statement";
60 pKey
.setTitleCache(upTitleCache
, true);
62 pKey
.getRoot().getChildAt(0).getStatement().getLabel(english
).setText(upStatement
);
63 polytomousKeyService
.merge(pKey
);
65 pKey
= CdmBase
.deproxy(polytomousKeyService
.find(polytomousKeyUuid
),PolytomousKey
.class);
68 Assert
.assertEquals(pKey
.getTitleCache(), upTitleCache
);
69 Assert
.assertEquals(pKey
.getRoot().getChildAt(0).getStatement().getLabel(english
).getText(), upStatement
);
73 public void manageSessionWithListTest() {
74 List
<PolytomousKey
> pKeys
= polytomousKeyService
.list(PolytomousKey
.class, null, null, null, null);
75 Assert
.assertNotNull(getActiveSession());
76 List
<CdmBase
> rootEntities
= getActiveSession().getRootEntities();
78 // FIXME:Remoting fix test of setting root entities
79 //Assert.assertEquals(rootEntities.size(),2);
80 //Assert.assertSame(rootEntities.get(0),pKeys.get(0));
81 //Assert.assertEquals(rootEntities.get(0).getUuid(),UUID.fromString("9d8bf4f6-a70a-4b80-8556-2ccfb436ff01"));
83 Assert
.assertSame(rootEntities
.get(1),pKeys
.get(1));
84 Assert
.assertEquals(rootEntities
.get(1).getUuid(),UUID
.fromString("0d53ba20-7de4-4baa-bd8a-401048447d66"));
86 String upTitleCache
= "Updated Title Cache";
87 String upStatement
= "Updated Statement";
88 pKeys
.get(0).setTitleCache(upTitleCache
, true);
89 polytomousKeyService
.merge(pKeys
.get(0));
90 pKeys
.get(1).getRoot().getChildAt(0).getStatement().getLabel(english
).setText(upStatement
);
91 polytomousKeyService
.merge(pKeys
.get(1));
94 pKeys
= polytomousKeyService
.list(PolytomousKey
.class, null, null, null, null);
96 Assert
.assertEquals(pKeys
.get(0).getTitleCache(), upTitleCache
);
97 Assert
.assertEquals(pKeys
.get(1).getRoot().getChildAt(0).getStatement().getLabel(english
).getText(), upStatement
);