1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.exoplatform.wiki.jpa.dao;
21
22
23 import org.exoplatform.wiki.jpa.BaseWikiJPAIntegrationTest;
24 import org.exoplatform.wiki.jpa.entity.PageEntity;
25 import org.exoplatform.wiki.jpa.entity.PermissionEntity;
26 import org.exoplatform.wiki.jpa.entity.WikiEntity;
27 import org.exoplatform.wiki.mow.api.PermissionType;
28 import org.junit.Test;
29
30 import java.util.ArrayList;
31 import java.util.Date;
32 import java.util.List;
33
34
35
36
37
38 public class PageDAOTest extends BaseWikiJPAIntegrationTest {
39
40 @Test
41 public void testPageOfWikiByName() {
42 WikiEntity wiki = new WikiEntity();
43 wiki.setType("portal");
44 wiki.setOwner("wiki1");
45 wiki = wikiDAO.create(wiki);
46 PageEntity parentPage = new PageEntity();
47 parentPage.setWiki(wiki);
48 parentPage.setName("parentPage1");
49 parentPage.setCreatedDate(new Date());
50 parentPage.setUpdatedDate(new Date());
51 PageEntity page = new PageEntity();
52 page.setWiki(wiki);
53 page.setParentPage(parentPage);
54 page.setCreatedDate(new Date());
55 page.setUpdatedDate(new Date());
56 page.setName("page1");
57 page.setTitle("Page 1");
58
59 pageDAO.create(parentPage);
60 pageDAO.create(page);
61
62 assertEquals(2, pageDAO.findAll().size());
63
64 PageEntity pageOfWikiByName = pageDAO.getPageOfWikiByName("portal", "wiki1", "page1");
65 assertNotNull(pageOfWikiByName);
66 assertEquals("portal", pageOfWikiByName.getWiki().getType());
67 assertEquals("wiki1", pageOfWikiByName.getWiki().getOwner());
68 assertEquals("page1", pageOfWikiByName.getName());
69 assertEquals("Page 1", pageOfWikiByName.getTitle());
70 }
71
72 @Test
73 public void testInsert(){
74
75 WikiEntity wiki = new WikiEntity();
76 wiki.setType("portal");
77 wiki.setOwner("wiki1");
78 wiki = wikiDAO.create(wiki);
79
80 PageEntity page = new PageEntity();
81 page.setWiki(wiki);
82
83 PermissionEntity per = new PermissionEntity();
84 per.setIdentity("user");
85 per.setIdentityType("User");
86 per.setPermissionType(PermissionType.EDITPAGE);
87 List<PermissionEntity> permissions = new ArrayList<PermissionEntity>();
88 permissions.add(per);
89 page.setPermissions(permissions);
90
91 page.setAuthor("author");
92 page.setContent("content");
93 page.setComment("comment");
94 page.setCreatedDate(new Date());
95 page.setUpdatedDate(new Date());
96 page.setName("name");
97 page.setMinorEdit(true);
98 page.setOwner("owner");
99 page.setSyntax("syntax");
100 page.setTitle("title");
101 page.setUrl("url");
102
103
104 pageDAO.create(page);
105 PageEntity got = pageDAO.find(page.getId());
106
107
108 assertNotNull(got);
109 assertEquals("name", got.getName());
110 }
111
112 @Test
113 public void testDuplicatedWikiOwnerTypeInsert() {
114
115 WikiEntity wiki = new WikiEntity();
116 wiki.setType("portal");
117 wiki.setOwner("wiki1");
118 wiki = wikiDAO.create(wiki);
119
120
121 try {
122 WikiEntity wiki1 = new WikiEntity();
123 wiki1.setType("portal");
124 wiki1.setOwner("wiki1");
125 wiki1 = wikiDAO.create(wiki1);
126
127
128 fail();
129 } catch (Exception e) {
130 }
131 }
132
133 }