1
+ /**
2
+ * SPDX-FileCopyrightText: (c) 2025 Liferay, Inc. https://liferay.com
3
+ * SPDX-License-Identifier: LGPL-2.1-or-later OR LicenseRef-Liferay-DXP-EULA-2.0.0-2023-06
4
+ */
5
+
6
+ package com .liferay .calendar .internal .upgrade .v4_3_0 .test ;
7
+
8
+ import com .liferay .arquillian .extension .junit .bridge .junit .Arquillian ;
9
+ import com .liferay .calendar .model .CalendarNotificationTemplate ;
10
+ import com .liferay .calendar .model .CalendarResource ;
11
+ import com .liferay .calendar .notification .NotificationTemplateType ;
12
+ import com .liferay .calendar .notification .NotificationType ;
13
+ import com .liferay .calendar .service .CalendarNotificationTemplateLocalService ;
14
+ import com .liferay .calendar .test .util .CalendarResourceTestUtil ;
15
+ import com .liferay .portal .kernel .cache .MultiVMPool ;
16
+ import com .liferay .portal .kernel .exception .PortalException ;
17
+ import com .liferay .portal .kernel .model .ResourceConstants ;
18
+ import com .liferay .portal .kernel .model .User ;
19
+ import com .liferay .portal .kernel .service .GroupLocalService ;
20
+ import com .liferay .portal .kernel .service .ResourceLocalService ;
21
+ import com .liferay .portal .kernel .service .ResourcePermissionLocalService ;
22
+ import com .liferay .portal .kernel .test .util .TestPropsValues ;
23
+ import com .liferay .portal .kernel .upgrade .UpgradeProcess ;
24
+ import com .liferay .portal .test .log .LogCapture ;
25
+ import com .liferay .portal .test .log .LoggerTestUtil ;
26
+ import com .liferay .portal .test .rule .Inject ;
27
+ import com .liferay .portal .test .rule .LiferayIntegrationTestRule ;
28
+ import com .liferay .portal .upgrade .registry .UpgradeStepRegistrator ;
29
+ import com .liferay .portal .upgrade .test .util .UpgradeTestUtil ;
30
+
31
+ import org .junit .Assert ;
32
+ import org .junit .ClassRule ;
33
+ import org .junit .Rule ;
34
+ import org .junit .Test ;
35
+ import org .junit .rules .TestRule ;
36
+ import org .junit .runner .RunWith ;
37
+
38
+ /**
39
+ * @author Feliphe Marinho
40
+ */
41
+ @ RunWith (Arquillian .class )
42
+ public class CalendarNotificationTemplateResourceUpgradeProcessTest {
43
+
44
+ @ ClassRule
45
+ @ Rule
46
+ public static final TestRule testRule = new LiferayIntegrationTestRule ();
47
+
48
+ @ Test
49
+ public void testUpgrade () throws PortalException {
50
+ User user = TestPropsValues .getUser ();
51
+
52
+ CalendarResource calendarResource =
53
+ CalendarResourceTestUtil .addCalendarResource (
54
+ _groupLocalService .getGroup (user .getGroupId ()));
55
+
56
+ CalendarNotificationTemplate calendarNotificationTemplate =
57
+ _calendarNotificationTemplateLocalService .
58
+ fetchCalendarNotificationTemplate (
59
+ calendarResource .getDefaultCalendarId (),
60
+ NotificationType .EMAIL , NotificationTemplateType .INVITE );
61
+
62
+ _resourceLocalService .deleteResource (
63
+ calendarNotificationTemplate , ResourceConstants .SCOPE_INDIVIDUAL );
64
+
65
+ Assert .assertEquals (
66
+ 0 ,
67
+ _resourcePermissionLocalService .getResourcePermissionsCount (
68
+ TestPropsValues .getCompanyId (),
69
+ CalendarNotificationTemplate .class .getName (),
70
+ ResourceConstants .SCOPE_INDIVIDUAL ,
71
+ String .valueOf (
72
+ calendarNotificationTemplate .
73
+ getCalendarNotificationTemplateId ())));
74
+
75
+ try (LogCapture logCapture = LoggerTestUtil .configureLog4JLogger (
76
+ _CLASS_NAME , LoggerTestUtil .OFF )) {
77
+
78
+ UpgradeProcess upgradeProcess = UpgradeTestUtil .getUpgradeStep (
79
+ _upgradeStepRegistrator , _CLASS_NAME );
80
+
81
+ upgradeProcess .upgrade ();
82
+
83
+ _multiVMPool .clear ();
84
+ }
85
+
86
+ Assert .assertEquals (
87
+ 1 ,
88
+ _resourcePermissionLocalService .getResourcePermissionsCount (
89
+ TestPropsValues .getCompanyId (),
90
+ CalendarNotificationTemplate .class .getName (),
91
+ ResourceConstants .SCOPE_INDIVIDUAL ,
92
+ String .valueOf (
93
+ calendarNotificationTemplate .
94
+ getCalendarNotificationTemplateId ())));
95
+ }
96
+
97
+ private static final String _CLASS_NAME =
98
+ "com.liferay.calendar.internal.upgrade.v4_3_0." +
99
+ "CalendarNotificationTemplateResourceUpgradeProcess" ;
100
+
101
+ @ Inject
102
+ private CalendarNotificationTemplateLocalService
103
+ _calendarNotificationTemplateLocalService ;
104
+
105
+ @ Inject
106
+ private GroupLocalService _groupLocalService ;
107
+
108
+ @ Inject
109
+ private MultiVMPool _multiVMPool ;
110
+
111
+ @ Inject
112
+ private ResourceLocalService _resourceLocalService ;
113
+
114
+ @ Inject
115
+ private ResourcePermissionLocalService _resourcePermissionLocalService ;
116
+
117
+ @ Inject (
118
+ filter = "(&(component.name=com.liferay.calendar.internal.upgrade.registry.CalendarServiceUpgradeStepRegistrator))"
119
+ )
120
+ private UpgradeStepRegistrator _upgradeStepRegistrator ;
121
+
122
+ }
0 commit comments