1313import cn .jpush .api .push .model .audience .AudienceType ;
1414import cn .jpush .api .push .model .notification .Notification ;
1515
16+ /**
17+ * Device1: 0900e8d85ef
18+ * Device2:
19+ *
20+ * tag1: Device1
21+ * tag2: Device2
22+ * tag_all: Device1, Device2
23+ * tag_no: no Device
24+ *
25+ * alias1: Device1
26+ * alias2: Device2
27+ * alias_no: no Device
28+ *
29+ */
1630public class AudienceTests {
1731 private static final String appKey ="dd1066407b044738b6479275" ;
1832 private static final String masterSecret = "2b38ce69b1de2a7fa95706ea" ;
19-
20- private static final int SUCCEED_RESULT_CODE = 0 ;
21- private static final String TAG = "tag1" ;
33+
34+ private static final String TAG1 = "tag1" ;
2235 private static final String TAG2 = "tag2" ;
23- private static final String TAG3 = "tag3" ;
24- private static final String ALIAS = "alias1" ;
36+ private static final String TAG_ALL = "tag_all" ;
37+ private static final String TAG_NO = "tag_no" ;
38+ private static final String ALIAS1 = "alias1" ;
2539 private static final String ALIAS2 = "alias2" ;
26- private static final String ALIAS3 = "alias3" ;
27- private static final String REGISTRATION = "0900e8d85ef" ;
28- private static final String REGISTRATION2 = "0900e8d85ef" ;
40+ private static final String ALIAS_NO = "alias_no" ;
41+ private static final String REGISTRATION_ID1 = "0900e8d85ef" ;
42+ private static final String REGISTRATION_ID2 = "0a04ad7d8b4" ;
43+
44+ private static final int SUCCEED_RESULT_CODE = 0 ;
45+ private static final int NO_TARGET = 1011 ;
2946 private static final String ALERT = "JPush Test - alert" ;
3047 private static final String MSG_CONTENT = "JPush Test - msgContent" ;
3148
@@ -42,7 +59,7 @@ public void before() {
4259 public void sendByTag () {
4360 PushPayload payload = PushPayload .newBuilder ()
4461 .setPlatform (Platform .all ())
45- .setAudience (Audience .tag (TAG ))
62+ .setAudience (Audience .tag (TAG1 ))
4663 .setNotification (Notification .alert (ALERT ))
4764 .build ();
4865 PushResult result = _client .sendPush (payload );
@@ -53,7 +70,7 @@ public void sendByTag() {
5370 public void sendByTagAnd () {
5471 PushPayload payload = PushPayload .newBuilder ()
5572 .setPlatform (Platform .all ())
56- .setAudience (Audience .tag_and (TAG ))
73+ .setAudience (Audience .tag_and (TAG1 ))
5774 .setNotification (Notification .alert (ALERT ))
5875 .build ();
5976 PushResult result = _client .sendPush (payload );
@@ -64,7 +81,7 @@ public void sendByTagAnd() {
6481 public void sendByAlias () {
6582 PushPayload payload = PushPayload .newBuilder ()
6683 .setPlatform (Platform .all ())
67- .setAudience (Audience .alias (ALIAS ))
84+ .setAudience (Audience .alias (ALIAS1 ))
6885 .setNotification (Notification .alert (ALERT ))
6986 .build ();
7087 PushResult result = _client .sendPush (payload );
@@ -75,7 +92,7 @@ public void sendByAlias() {
7592 public void sendByRegistrationID () {
7693 PushPayload payload = PushPayload .newBuilder ()
7794 .setPlatform (Platform .all ())
78- .setAudience (Audience .registrationId (REGISTRATION ))
95+ .setAudience (Audience .registrationId (REGISTRATION_ID1 ))
7996 .setNotification (Notification .alert (ALERT ))
8097 .build ();
8198 PushResult result = _client .sendPush (payload );
@@ -88,7 +105,7 @@ public void sendByRegistrationID() {
88105 public void sendByTagMore () {
89106 PushPayload payload = PushPayload .newBuilder ()
90107 .setPlatform (Platform .all ())
91- .setAudience (Audience .tag (TAG , TAG2 ))
108+ .setAudience (Audience .tag (TAG1 , TAG2 ))
92109 .setNotification (Notification .alert (ALERT ))
93110 .build ();
94111 PushResult result = _client .sendPush (payload );
@@ -99,18 +116,29 @@ public void sendByTagMore() {
99116 public void sendByTagAndMore () {
100117 PushPayload payload = PushPayload .newBuilder ()
101118 .setPlatform (Platform .all ())
102- .setAudience (Audience .tag_and (TAG , TAG3 ))
119+ .setAudience (Audience .tag_and (TAG1 , TAG_ALL ))
103120 .setNotification (Notification .alert (ALERT ))
104121 .build ();
105122 PushResult result = _client .sendPush (payload );
106123 assertEquals (SUCCEED_RESULT_CODE , result .getErrorCode ());
107124 }
108-
125+
126+ @ Test
127+ public void sendByTagAndMore_fail () {
128+ PushPayload payload = PushPayload .newBuilder ()
129+ .setPlatform (Platform .all ())
130+ .setAudience (Audience .tag_and (TAG1 , TAG2 ))
131+ .setNotification (Notification .alert (ALERT ))
132+ .build ();
133+ PushResult result = _client .sendPush (payload );
134+ assertEquals (NO_TARGET , result .getErrorCode ());
135+ }
136+
109137 @ Test
110138 public void sendByAliasMore () {
111139 PushPayload payload = PushPayload .newBuilder ()
112140 .setPlatform (Platform .all ())
113- .setAudience (Audience .alias (ALIAS , ALIAS2 ))
141+ .setAudience (Audience .alias (ALIAS1 , ALIAS2 ))
114142 .setNotification (Notification .alert (ALERT ))
115143 .build ();
116144 PushResult result = _client .sendPush (payload );
@@ -122,7 +150,7 @@ public void sendByAliasMore() {
122150 public void sendByRegistrationIDMore () {
123151 PushPayload payload = PushPayload .newBuilder ()
124152 .setPlatform (Platform .all ())
125- .setAudience (Audience .registrationId (REGISTRATION , REGISTRATION2 ))
153+ .setAudience (Audience .registrationId (REGISTRATION_ID1 , REGISTRATION_ID2 ))
126154 .setNotification (Notification .alert (ALERT ))
127155 .build ();
128156 PushResult result = _client .sendPush (payload );
@@ -131,7 +159,7 @@ public void sendByRegistrationIDMore() {
131159
132160
133161
134- // composite -------------------------
162+ // composite ok -------------------------
135163
136164 @ Test
137165 public void sendByTagAlias () {
@@ -140,17 +168,91 @@ public void sendByTagAlias() {
140168 .setAudience (Audience .newBuilder ()
141169 .addAudienceTarget (AudienceTarget .newBuilder ()
142170 .setAudienceType (AudienceType .ALIAS )
143- .addAudienceTargetValue (ALIAS ).build ())
171+ .addAudienceTargetValue (ALIAS1 ).build ())
172+ .addAudienceTarget (AudienceTarget .newBuilder ()
173+ .setAudienceType (AudienceType .TAG )
174+ .addAudienceTargetValue (TAG_ALL ).build ())
175+ .build ())
176+ .setNotification (Notification .alert (ALERT ))
177+ .build ();
178+ PushResult result = _client .sendPush (payload );
179+ assertEquals (SUCCEED_RESULT_CODE , result .getErrorCode ());
180+ }
181+
182+ @ Test
183+ public void sendByTagRegistrationID () {
184+ PushPayload payload = PushPayload .newBuilder ()
185+ .setPlatform (Platform .all ())
186+ .setAudience (Audience .newBuilder ()
187+ .addAudienceTarget (AudienceTarget .newBuilder ()
188+ .setAudienceType (AudienceType .REGISTRATION_ID )
189+ .addAudienceTargetValue (REGISTRATION_ID1 ).build ())
144190 .addAudienceTarget (AudienceTarget .newBuilder ()
145191 .setAudienceType (AudienceType .TAG )
146- .addAudienceTargetValue (TAG ).build ())
192+ .addAudienceTargetValue (TAG_ALL ).build ())
147193 .build ())
148194 .setNotification (Notification .alert (ALERT ))
149195 .build ();
150196 PushResult result = _client .sendPush (payload );
151197 assertEquals (SUCCEED_RESULT_CODE , result .getErrorCode ());
152198 }
153199
200+ // composite fail ------------------------
154201
202+ @ Test
203+ public void sendByTagAlias_fail () {
204+ PushPayload payload = PushPayload .newBuilder ()
205+ .setPlatform (Platform .all ())
206+ .setAudience (Audience .newBuilder ()
207+ .addAudienceTarget (AudienceTarget .newBuilder ()
208+ .setAudienceType (AudienceType .ALIAS )
209+ .addAudienceTargetValue (ALIAS1 ).build ())
210+ .addAudienceTarget (AudienceTarget .newBuilder ()
211+ .setAudienceType (AudienceType .TAG )
212+ .addAudienceTargetValue (TAG2 ).build ())
213+ .build ())
214+ .setNotification (Notification .alert (ALERT ))
215+ .build ();
216+ PushResult result = _client .sendPush (payload );
217+ assertEquals (NO_TARGET , result .getErrorCode ());
218+ }
219+
220+ @ Test
221+ public void sendByTagAlias_fail2 () {
222+ PushPayload payload = PushPayload .newBuilder ()
223+ .setPlatform (Platform .all ())
224+ .setAudience (Audience .newBuilder ()
225+ .addAudienceTarget (AudienceTarget .newBuilder ()
226+ .setAudienceType (AudienceType .ALIAS )
227+ .addAudienceTargetValue (ALIAS_NO ).build ())
228+ .addAudienceTarget (AudienceTarget .newBuilder ()
229+ .setAudienceType (AudienceType .TAG )
230+ .addAudienceTargetValue (TAG_ALL ).build ())
231+ .build ())
232+ .setNotification (Notification .alert (ALERT ))
233+ .build ();
234+ PushResult result = _client .sendPush (payload );
235+ assertEquals (NO_TARGET , result .getErrorCode ());
236+ }
237+
238+ @ Test
239+ public void sendByTagRegistrationID_fail () {
240+ PushPayload payload = PushPayload .newBuilder ()
241+ .setPlatform (Platform .all ())
242+ .setAudience (Audience .newBuilder ()
243+ .addAudienceTarget (AudienceTarget .newBuilder ()
244+ .setAudienceType (AudienceType .REGISTRATION_ID )
245+ .addAudienceTargetValue (REGISTRATION_ID1 ).build ())
246+ .addAudienceTarget (AudienceTarget .newBuilder ()
247+ .setAudienceType (AudienceType .TAG )
248+ .addAudienceTargetValue (TAG_NO ).build ())
249+ .build ())
250+ .setNotification (Notification .alert (ALERT ))
251+ .build ();
252+ PushResult result = _client .sendPush (payload );
253+ assertEquals (NO_TARGET , result .getErrorCode ());
254+ }
255+
256+
155257}
156258
0 commit comments