Skip to content

Commit b821a07

Browse files
authored
Merge pull request #883 from support-project/test6
Test6
2 parents cc3ae09 + 17bdbe7 commit b821a07

File tree

13 files changed

+877
-22
lines changed

13 files changed

+877
-22
lines changed

src/main/java/org/support/project/knowledge/control/open/KnowledgeControl.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -691,7 +691,7 @@ public Boundary likecomment() throws InvalidParamException {
691691
* @return
692692
* @throws ParseException
693693
*/
694-
@Post
694+
@Post(subscribeToken = "")
695695
public Boundary escape(KnowledgesEntity entity) throws ParseException {
696696
super.setSendEscapeHtml(false);
697697
entity.setTitle(sanitize(entity.getTitle()));
@@ -706,7 +706,7 @@ public Boundary escape(KnowledgesEntity entity) throws ParseException {
706706
* @return
707707
* @throws ParseException
708708
*/
709-
@Post
709+
@Post(subscribeToken = "")
710710
public Boundary marked(KnowledgesEntity entity) throws ParseException {
711711
super.setSendEscapeHtml(false);
712712
entity.setTitle(sanitize(entity.getTitle()));

src/main/java/org/support/project/knowledge/control/protect/GroupControl.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
import org.support.project.knowledge.logic.GroupLogic;
1717
import org.support.project.knowledge.vo.GroupUser;
1818
import org.support.project.knowledge.vo.StringList;
19-
import org.support.project.web.annotation.Auth;
2019
import org.support.project.web.bean.LabelValue;
2120
import org.support.project.web.bean.LoginedUser;
2221
import org.support.project.web.bean.MessageResult;

src/main/java/org/support/project/knowledge/control/protect/KnowledgeControl.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -487,12 +487,9 @@ public Boundary comment() throws Exception {
487487
}
488488
}
489489
setAttribute("comment_files", files);
490-
491490
return super.devolution(HttpMethod.get, "open.Knowledge/view", String.valueOf(knowledgeId));
492491
}
493-
494-
CommentsEntity commentsEntity = KnowledgeLogic.get().saveComment(knowledgeId, comment, fileNos, getLoginedUser());
495-
492+
KnowledgeLogic.get().saveComment(knowledgeId, comment, fileNos, getLoginedUser());
496493
return super.redirect(getRequest().getContextPath() + "/open.knowledge/view/" + knowledgeId + params);
497494
}
498495

src/main/java/org/support/project/knowledge/control/protect/NotificationControl.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313

1414
public class NotificationControl extends Control {
1515

16-
@Get
16+
@Get(publishToken = "knowledge")
1717
public Boundary list() throws InvalidParamException {
1818
int offset = getPathInteger(0);
1919
boolean all = "true".equals(getAttribute("all", "false"));
@@ -39,6 +39,7 @@ public Boundary view() throws InvalidParamException {
3939
return sendError(HttpStatus.SC_403_FORBIDDEN, "FORBIDDEN");
4040
}
4141
NotificationLogic.get().setStatus(getLoginUserId(), no, NotificationLogic.STATUS_READED);
42+
notification.setStatus(NotificationLogic.STATUS_READED);
4243
setAttributeOnProperty(notification);
4344
setAttribute("no", no);
4445
return forward("view.jsp");
@@ -56,6 +57,7 @@ public Boundary previous() throws InvalidParamException {
5657
}
5758
no = notification.getNo();
5859
NotificationLogic.get().setStatus(getLoginUserId(), no, NotificationLogic.STATUS_READED);
60+
notification.setStatus(NotificationLogic.STATUS_READED);
5961
setAttributeOnProperty(notification);
6062
setAttribute("no", no);
6163
return forward("view.jsp");
@@ -72,12 +74,13 @@ public Boundary next() throws InvalidParamException {
7274
}
7375
no = notification.getNo();
7476
NotificationLogic.get().setStatus(getLoginUserId(), no, NotificationLogic.STATUS_READED);
77+
notification.setStatus(NotificationLogic.STATUS_READED);
7578
setAttributeOnProperty(notification);
7679
setAttribute("no", no);
7780
return forward("view.jsp");
7881
}
7982

80-
@Post
83+
@Post(subscribeToken = "knowledge")
8184
public Boundary markread() {
8285
String no = getAttribute("no", "");
8386
NotificationLogic.get().markAllAsRead(no, getLoginUserId());

src/main/java/org/support/project/knowledge/logic/activity/KnowledgeAnswerActivity.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,8 @@ private int getPoint() {
2828
}
2929
//int[] points = {1,1,2,2,2,2,3,3,3,4};
3030
//this.point = points[RandomUtil.randamNum(0, 10)]; // ランダムで値を増減してみた
31-
//return point;
32-
return 3;
31+
this.point = 3;
32+
return point;
3333
}
3434

3535
@Override

src/main/java/org/support/project/knowledge/logic/activity/KnowledgeStockActivity.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import org.support.project.common.log.Log;
44
import org.support.project.common.log.LogFactory;
5-
import org.support.project.common.util.RandomUtil;
65
import org.support.project.di.Container;
76
import org.support.project.di.DI;
87
import org.support.project.di.Instance;
@@ -28,8 +27,9 @@ private int getPoint() {
2827
if (point != 0) {
2928
return point;
3029
}
31-
int[] points = {1,1,1,1,1,2,2,2,2,3};
32-
this.point = points[RandomUtil.randamNum(0, 10)]; // ランダムで値を増減してみた
30+
// int[] points = {1,1,1,1,1,2,2,2,2,3};
31+
// this.point = points[RandomUtil.randamNum(0, 10)]; // ランダムで値を増減してみた
32+
this.point = 2;
3333
return point;
3434
}
3535

src/test/java/org/support/project/knowledge/integration/IntegrationCommon.java

Lines changed: 87 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,18 +20,23 @@
2020
import org.support.project.knowledge.config.AppConfig;
2121
import org.support.project.knowledge.config.AuthType;
2222
import org.support.project.knowledge.dao.NotifyQueuesDao;
23+
import org.support.project.knowledge.dao.TemplateItemsDao;
2324
import org.support.project.knowledge.entity.CommentsEntity;
2425
import org.support.project.knowledge.entity.NotifyQueuesEntity;
26+
import org.support.project.knowledge.logic.EventsLogic;
27+
import org.support.project.knowledge.logic.KnowledgeLogic;
28+
import org.support.project.knowledge.logic.TemplateLogic;
29+
import org.support.project.knowledge.vo.ActivityHistory;
2530
import org.support.project.knowledge.vo.LikeCount;
2631
import org.support.project.knowledge.vo.api.Knowledge;
2732
import org.support.project.web.bean.LoginedUser;
33+
import org.support.project.web.bean.MessageResult;
2834
import org.support.project.web.bean.Msg;
2935
import org.support.project.web.bean.NameId;
3036
import org.support.project.web.boundary.ForwardBoundary;
3137
import org.support.project.web.boundary.JsonBoundary;
3238
import org.support.project.web.boundary.RedirectBoundary;
3339
import org.support.project.web.boundary.SendMessageBoundary;
34-
import org.support.project.web.common.HttpStatus;
3540
import org.support.project.web.common.InvokeTarget;
3641
import org.support.project.web.dao.MailConfigsDao;
3742
import org.support.project.web.entity.MailConfigsEntity;
@@ -90,6 +95,7 @@ public static void setUpBeforeClass() throws Exception {
9095
* @return
9196
* @throws Exception
9297
*/
98+
@SuppressWarnings("unchecked")
9399
protected <T> T invoke(HttpServletRequest request, HttpServletResponse response, Class<T> clazz) throws Exception {
94100
InvokeTarget invoke = CallControlLogic.get().searchInvokeTarget(request, response);
95101
if (invoke == null) {
@@ -104,6 +110,62 @@ protected <T> T invoke(HttpServletRequest request, HttpServletResponse response,
104110
}
105111
return (T) result;
106112
}
113+
114+
115+
/**
116+
* 投稿
117+
* @return
118+
* @throws Exception
119+
* @throws NoSuchFieldException
120+
* @throws IllegalAccessException
121+
*/
122+
protected MessageResult postKnowledge(String userKey, int publicFlag, int typeId, String viewers) throws Exception, NoSuchFieldException, IllegalAccessException {
123+
// 登録画面へアクセスできること(パスのルーティングのみ確認)
124+
StubHttpServletRequest request = new StubHttpServletRequest();
125+
StubHttpServletResponse response = new StubHttpServletResponse(request);
126+
request.setServletPath("protect.knowledge/view_add");
127+
request.setMethod("get");
128+
DefaultAuthenticationLogicImpl auth = org.support.project.di.Container.getComp(DefaultAuthenticationLogicImpl.class);
129+
auth.setSession(userKey, request, response);
130+
131+
ForwardBoundary boundary = invoke(request, response, ForwardBoundary.class);
132+
Assert.assertEquals("/WEB-INF/views/protect/knowledge/edit.jsp", PropertyUtil.getPrivateFeildOnReflection(String.class, boundary, "path"));
133+
134+
String csrfToken = (String) request.getAttribute(HttpRequestCheckLogic.REQ_ID_KEY);
135+
Assert.assertNotNull(csrfToken);
136+
137+
// 保存
138+
request.setServletPath("protect.knowledge/save");
139+
request.setMethod("post");
140+
request.addParameter(HttpRequestCheckLogic.REQ_ID_KEY, csrfToken);
141+
request.addParameter("title", "タイトル");
142+
request.addParameter("content", "内容");
143+
request.addParameter("publicFlag", String.valueOf(publicFlag));
144+
request.addParameter("typeId", String.valueOf(typeId));
145+
146+
if (typeId == TemplateLogic.TYPE_ID_BOOKMARK) {
147+
request.addParameter("item_" + TemplateItemsDao.ITEM_ID_BOOKMARK_URL, "https://information-supportproject.org/");
148+
} else if (typeId == TemplateLogic.TYPE_ID_EVENT) {
149+
request.addParameter("item_" + EventsLogic.ITEM_NO_DATE, "2017-10-01");
150+
request.addParameter("item_" + EventsLogic.ITEM_NO_START, "10:00");
151+
request.addParameter("item_" + EventsLogic.ITEM_NO_END, "12:00");
152+
request.addParameter("item_" + EventsLogic.ITEM_NO_TIMEZONE, "Asia/Tokyo");
153+
request.addParameter("item_" + EventsLogic.ITEM_NO_THE_NUMBER_TO_BE_ACCEPTED, "10");
154+
}
155+
156+
if (publicFlag == KnowledgeLogic.PUBLIC_FLAG_PROTECT) {
157+
if (StringUtils.isNotEmpty(viewers)) {
158+
request.addParameter("groups", viewers);
159+
}
160+
}
161+
162+
JsonBoundary jsonBoundary = invoke(request, response, JsonBoundary.class);
163+
MessageResult sendObject = (MessageResult) jsonBoundary.getObj();
164+
LOG.info(sendObject);
165+
Assert.assertEquals(200, sendObject.getCode().intValue());
166+
return sendObject;
167+
}
168+
107169
/**
108170
* CP確認
109171
* @param userKey
@@ -171,6 +233,7 @@ protected void assertNotificationCount(String userKey, int add) throws Exception
171233
* @return
172234
* @throws Exception
173235
*/
236+
@SuppressWarnings("unchecked")
174237
protected List<NotificationsEntity> getNotification(String userKey) throws Exception {
175238
StubHttpServletRequest request = new StubHttpServletRequest();
176239
StubHttpServletResponse response = new StubHttpServletResponse(request);
@@ -339,6 +402,7 @@ protected void addLatestLikeComment(String userKey, long knowledgeId) throws Exc
339402
* @param comment
340403
* @throws Exception
341404
*/
405+
@SuppressWarnings("unchecked")
342406
protected void comment(String userKey, long knowledgeId, String comment) throws Exception {
343407
if (userKey == null) {
344408
Assert.fail("post comment must be logined");
@@ -372,6 +436,7 @@ protected void comment(String userKey, long knowledgeId, String comment) throws
372436
* @return
373437
* @throws Exception
374438
*/
439+
@SuppressWarnings("unchecked")
375440
protected CommentsEntity getLatestComment(String userKey, long knowledgeId) throws Exception {
376441
StubHttpServletRequest request = openKnowledge(userKey, knowledgeId);
377442
List<CommentsEntity> comments = (List<CommentsEntity>) request.getAttribute("comments");
@@ -386,7 +451,7 @@ protected CommentsEntity getLatestComment(String userKey, long knowledgeId) thro
386451
*/
387452
protected void execNotificationQueue() throws Exception {
388453
List<NotifyQueuesEntity> list = NotifyQueuesDao.get().selectAll();
389-
Assert.assertEquals(1, list.size());
454+
Assert.assertTrue(0 < list.size());
390455
NotifyMailBat.main(null);
391456
list = NotifyQueuesDao.get().selectAll();
392457
Assert.assertEquals(0, list.size());
@@ -480,6 +545,7 @@ protected void knowledgeDeleteOnAPI(String userKey, long knowledgeId) throws Exc
480545
* @return
481546
* @throws Exception
482547
*/
548+
@SuppressWarnings("unchecked")
483549
protected Knowledge knowledgeGetOnAPI(String userKey, int count) throws Exception {
484550
StubHttpServletRequest request = new StubHttpServletRequest();
485551
StubHttpServletResponse response = new StubHttpServletResponse(request);
@@ -515,6 +581,24 @@ protected Knowledge knowledgeGetOnAPI(String userKey, int count) throws Exceptio
515581
return null;
516582
}
517583

518-
584+
/**
585+
* CPの獲得履歴の件数確認
586+
* @param userKey
587+
* @throws Exception
588+
*/
589+
@SuppressWarnings("unchecked")
590+
protected void assertPointHistoryCount(String userKey, int count) throws Exception {
591+
StubHttpServletRequest request = new StubHttpServletRequest();
592+
StubHttpServletResponse response = new StubHttpServletResponse(request);
593+
DefaultAuthenticationLogicImpl auth = org.support.project.di.Container.getComp(DefaultAuthenticationLogicImpl.class);
594+
auth.setSession(userKey, request, response);
595+
596+
LoginedUser user = getLoginUser(userKey);
597+
request.setServletPath("open.account/activity/" + user.getUserId());
598+
request.setMethod("get");
599+
JsonBoundary jsonBoundary = invoke(request, response, JsonBoundary.class);
600+
List<ActivityHistory> list = (List<ActivityHistory>) jsonBoundary.getObj();
601+
Assert.assertEquals(count, list.size());
602+
}
519603

520604
}

src/test/java/org/support/project/knowledge/integration/IntegrationEventTest.java

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,7 @@ public void testAssertAfterPost() throws Exception {
117117
public void testJoinByJoinUser() throws Exception {
118118
StubHttpServletRequest request = openKnowledges(JOIN_USER);
119119
StubHttpServletResponse response = new StubHttpServletResponse(request);
120+
@SuppressWarnings("unchecked")
120121
List<KnowledgesEntity> knowledges = (List<KnowledgesEntity>) request.getAttribute("knowledges");
121122
long knowledgeId = knowledges.get(0).getKnowledgeId();
122123
request = openKnowledge(JOIN_USER, knowledgeId);
@@ -153,6 +154,7 @@ public void testAssertAfterJoinbyJoinUser() throws Exception {
153154
public void testReaveByJoinUser() throws Exception {
154155
StubHttpServletRequest request = openKnowledges(JOIN_USER);
155156
StubHttpServletResponse response = new StubHttpServletResponse(request);
157+
@SuppressWarnings("unchecked")
156158
List<KnowledgesEntity> knowledges = (List<KnowledgesEntity>) request.getAttribute("knowledges");
157159
long knowledgeId = knowledges.get(0).getKnowledgeId();
158160
request = openKnowledge(JOIN_USER, knowledgeId);
@@ -190,6 +192,7 @@ public void testAssertAfterReavebyJoinUser() throws Exception {
190192
public void testReJoinByJoinUser() throws Exception {
191193
StubHttpServletRequest request = openKnowledges(JOIN_USER);
192194
StubHttpServletResponse response = new StubHttpServletResponse(request);
195+
@SuppressWarnings("unchecked")
193196
List<KnowledgesEntity> knowledges = (List<KnowledgesEntity>) request.getAttribute("knowledges");
194197
long knowledgeId = knowledges.get(0).getKnowledgeId();
195198
request = openKnowledge(JOIN_USER, knowledgeId);
@@ -226,6 +229,7 @@ public void testAssertAfterReJoinbyJoinUser() throws Exception {
226229
public void testJoinByPostUser() throws Exception {
227230
StubHttpServletRequest request = openKnowledges(POST_USER);
228231
StubHttpServletResponse response = new StubHttpServletResponse(request);
232+
@SuppressWarnings("unchecked")
229233
List<KnowledgesEntity> knowledges = (List<KnowledgesEntity>) request.getAttribute("knowledges");
230234
long knowledgeId = knowledges.get(0).getKnowledgeId();
231235
request = openKnowledge(POST_USER, knowledgeId);
@@ -252,5 +256,17 @@ public void testAssertAfterJoinbyPostUser() throws Exception {
252256
assertNotificationCount(POST_USER, 2);
253257
assertNotificationCount(JOIN_USER, 0);
254258
}
255-
259+
260+
261+
262+
/**
263+
* CP獲得履歴
264+
* @throws Exception
265+
*/
266+
@Test
267+
@Order(order = 600)
268+
public void testActivityHistory() throws Exception {
269+
assertPointHistoryCount(POST_USER, 4);
270+
assertPointHistoryCount(JOIN_USER, 2);
271+
}
256272
}

0 commit comments

Comments
 (0)