11
11
import org .zendesk .client .v2 .model .Identity ;
12
12
import org .zendesk .client .v2 .model .Organization ;
13
13
import org .zendesk .client .v2 .model .Request ;
14
+ import org .zendesk .client .v2 .model .Status ;
14
15
import org .zendesk .client .v2 .model .Ticket ;
15
16
import org .zendesk .client .v2 .model .User ;
16
17
import org .zendesk .client .v2 .model .events .Event ;
17
18
18
19
import java .util .Collections ;
19
20
import java .util .Properties ;
21
+ import java .util .UUID ;
20
22
21
23
import static org .hamcrest .CoreMatchers .is ;
22
24
import static org .hamcrest .CoreMatchers .not ;
@@ -54,7 +56,8 @@ public void assumeHavePassword() {
54
56
55
57
public void assumeHaveTokenOrPassword () {
56
58
assumeThat ("We have a username" , config .getProperty ("username" ), notNullValue ());
57
- assumeThat ("We have a token or password" , config .getProperty ("token" ) != null || config .getProperty ("password" ) != null , is (true ));
59
+ assumeThat ("We have a token or password" , config .getProperty ("token" ) != null || config .getProperty ("password" ) != null , is (
60
+ true ));
58
61
}
59
62
60
63
@ After
@@ -124,12 +127,12 @@ public void getRecentTickets() throws Exception {
124
127
public void getTicketsById () throws Exception {
125
128
createClientWithTokenOrPassword ();
126
129
long count = 1 ;
127
- for (Ticket t : instance .getTickets (1 , 3 , 5 )) {
130
+ for (Ticket t : instance .getTickets (1 , 6 , 11 )) {
128
131
assertThat (t .getSubject (), notNullValue ());
129
132
assertThat (t .getId (), is (count ));
130
- count += 2 ;
133
+ count += 5 ;
131
134
}
132
- assertThat (count , is (7L ));
135
+ assertThat (count , is (16L ));
133
136
}
134
137
135
138
@ Test
@@ -174,7 +177,7 @@ public void createAnonymousClient() {
174
177
}
175
178
176
179
@ Test
177
- @ Ignore ("Don't spam the production zendesk" )
180
+ @ Ignore ("Don't spam zendesk" )
178
181
public void createDeleteTicket () throws Exception {
179
182
createClientWithTokenOrPassword ();
180
183
assumeThat ("Must have a requester email" , config .getProperty ("requester.email" ), notNullValue ());
@@ -198,6 +201,33 @@ public void createDeleteTicket() throws Exception {
198
201
assertThat (instance .getTicket (ticket .getId ()), nullValue ());
199
202
}
200
203
204
+ @ Test
205
+ @ Ignore ("Don't spam zendesk" )
206
+ public void createSolveTickets () throws Exception {
207
+ createClientWithTokenOrPassword ();
208
+ assumeThat ("Must have a requester email" , config .getProperty ("requester.email" ), notNullValue ());
209
+ Ticket ticket ;
210
+ do {
211
+ Ticket t = new Ticket (
212
+ new Ticket .Requester (config .getProperty ("requester.name" ), config .getProperty ("requester.email" )),
213
+ "This is a test " + UUID .randomUUID ().toString (), new Comment ("Please ignore this ticket" ));
214
+ ticket = instance .createTicket (t );
215
+ System .out .println (ticket .getId () + " -> " + ticket .getUrl ());
216
+ assertThat (ticket .getId (), notNullValue ());
217
+ Ticket t2 = instance .getTicket (ticket .getId ());
218
+ assertThat (t2 , notNullValue ());
219
+ assertThat (t2 .getId (), is (ticket .getId ()));
220
+ t2 .setAssigneeId (instance .getCurrentUser ().getId ());
221
+ t2 .setStatus (Status .CLOSED );
222
+ instance .updateTicket (t2 );
223
+ assertThat (ticket .getSubject (), is (t .getSubject ()));
224
+ assertThat (ticket .getRequester (), nullValue ());
225
+ assertThat (ticket .getRequesterId (), notNullValue ());
226
+ assertThat (ticket .getDescription (), is (t .getComment ().getBody ()));
227
+ assertThat (instance .getTicket (ticket .getId ()), notNullValue ());
228
+ } while (ticket .getId () < 200L ); // seed enough data for the paging tests
229
+ }
230
+
201
231
@ Test
202
232
public void lookupUserByEmail () throws Exception {
203
233
createClientWithTokenOrPassword ();
0 commit comments