1 | package clarin.cmdi.componentregistry.frontend; |
---|
2 | |
---|
3 | import clarin.cmdi.componentregistry.BaseUnitTest; |
---|
4 | import clarin.cmdi.componentregistry.ComponentStatus; |
---|
5 | import clarin.cmdi.componentregistry.RegistrySpace; |
---|
6 | import static org.junit.Assert.assertFalse; |
---|
7 | import static org.junit.Assert.assertTrue; |
---|
8 | |
---|
9 | import org.junit.Test; |
---|
10 | |
---|
11 | import clarin.cmdi.componentregistry.model.BaseDescription; |
---|
12 | import clarin.cmdi.componentregistry.model.ProfileDescription; |
---|
13 | |
---|
14 | public class CMDItemInfoTest extends BaseUnitTest{ |
---|
15 | |
---|
16 | // this is component status "private/public" from the database v.s. registry space public/private |
---|
17 | @Test |
---|
18 | public void testGetUserDir() throws Exception { |
---|
19 | CMDItemInfo info = new CMDItemInfo(marshaller); |
---|
20 | //info.setDataNode(new FileNode(createFile("users/user1/components/c_123/description.xml"), false)); |
---|
21 | info.setDataNode(new DisplayDataNode("test", false, createDescription(), RegistrySpace.PRIVATE)); |
---|
22 | assertTrue(info.isDeletable()); |
---|
23 | assertFalse(info.isUndeletable()); |
---|
24 | assertTrue(info.isEditable()); |
---|
25 | assertFalse(info.getDataNode().isDeleted()); |
---|
26 | assertEquals(RegistrySpace.PRIVATE, info.getSpace()); |
---|
27 | //info.setDataNode(new FileNode(createFile("users/user1/components/deleted/c_123/description.xml"), true)); |
---|
28 | info.setDataNode(new DisplayDataNode("test", true, createDescription(), RegistrySpace.PRIVATE)); |
---|
29 | assertFalse(info.isDeletable()); |
---|
30 | assertTrue(info.isUndeletable()); |
---|
31 | assertTrue(info.isEditable()); |
---|
32 | assertTrue(info.getDataNode().isDeleted()); |
---|
33 | assertEquals(RegistrySpace.PRIVATE, info.getSpace()); |
---|
34 | //info.setDataNode(new FileNode(createFile("components/c_123/description.xml"), false)); |
---|
35 | info.setDataNode(new DisplayDataNode("test", false, createDescription(), RegistrySpace.PUBLISHED)); |
---|
36 | assertTrue(info.isDeletable()); |
---|
37 | assertFalse(info.isUndeletable()); |
---|
38 | assertTrue(info.isEditable()); |
---|
39 | assertEquals(RegistrySpace.PUBLISHED, info.getSpace()); |
---|
40 | //info.setDataNode(new FileNode(createFile("components/c_123/"), false)); |
---|
41 | info.setDataNode(new DisplayDataNode("test", false)); |
---|
42 | assertFalse(info.isDeletable()); |
---|
43 | assertFalse(info.isUndeletable()); |
---|
44 | assertFalse(info.isEditable()); |
---|
45 | //info.setDataNode(new FileNode(createFile("components/deleted/c_123/description.xml"), true)); |
---|
46 | info.setDataNode(new DisplayDataNode("test", true, createDescription(), RegistrySpace.PUBLISHED)); |
---|
47 | assertFalse(info.isDeletable()); |
---|
48 | assertTrue(info.isUndeletable()); |
---|
49 | assertTrue(info.isEditable()); |
---|
50 | assertEquals(RegistrySpace.PUBLISHED, info.getSpace()); |
---|
51 | assertTrue(info.getDescription().startsWith("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<profileDescription")); |
---|
52 | //info.setDataNode(new FileNode(createFile("components/deleted/c_123/"), true)); |
---|
53 | info.setDataNode(new DisplayDataNode("test", true)); |
---|
54 | assertFalse(info.isDeletable()); |
---|
55 | assertFalse(info.isUndeletable()); |
---|
56 | assertFalse(info.isEditable()); |
---|
57 | assertEquals("", info.getDescription()); |
---|
58 | } |
---|
59 | |
---|
60 | private BaseDescription createDescription() { |
---|
61 | return ProfileDescription.createNewDescription(); |
---|
62 | } |
---|
63 | } |
---|