forked from microsoftgraph/msgraph-sdk-java
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathGraphServiceExceptionTests.java
More file actions
128 lines (110 loc) · 4.33 KB
/
Copy pathGraphServiceExceptionTests.java
File metadata and controls
128 lines (110 loc) · 4.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
package com.microsoft.graph.http;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import org.junit.Test;
import com.microsoft.graph.core.GraphErrorCodes;
import com.microsoft.graph.logger.DefaultLogger;
public class GraphServiceExceptionTests {
@Test
public void testError() {
GraphErrorResponse errorResponse = new GraphErrorResponse();
GraphError error = new GraphError();
error.code = GraphErrorCodes.UNAUTHENTICATED.toString();
errorResponse.error = error;
GraphServiceException exception = new GraphServiceException(null,null,new ArrayList<String>(),null,401,"Unauthorized",new ArrayList<String>(),errorResponse, false);
String message = exception.getMessage();
assertTrue(message.indexOf("Error code: UNAUTHENTICATED") == 0);
assertTrue(message.indexOf("401 : Unauthorized") > 0);
assertTrue(message.indexOf("truncated") > 0);
assertEquals(error,exception.getServiceError());
}
@Test
public void testVerboseError() {
GraphErrorResponse errorResponse = new GraphErrorResponse();
GraphError error = new GraphError();
error.code = GraphErrorCodes.UNAUTHENTICATED.toString();
errorResponse.error = error;
GraphServiceException exception = new GraphServiceException(null,null,new ArrayList<String>(),null,401,"Unauthorized",new ArrayList<String>(),errorResponse, true);
String message = exception.getMessage();
assertTrue(message.indexOf("Error code: UNAUTHENTICATED") == 0);
assertTrue(message.indexOf("401 : Unauthorized") > 0);
assertFalse(message.indexOf("truncated") > 0);
assertEquals(error,exception.getServiceError());
}
@Test
public void testCreateFromConnection() {
DefaultLogger logger = new DefaultLogger();
GraphServiceException exception = null;
Boolean success = false;
Boolean failure = false;
final ITestConnectionData data = new ITestConnectionData() {
@Override
public int getRequestCode() {
return 401;
}
@Override
public String getJsonResponse() {
return "{}";
}
@Override
public Map<String, String> getHeaders() {
return new HashMap<>();
}
};
try{
exception = GraphServiceException.createFromConnection(new MockHttpRequest(),null,null,new MockConnection(data){},logger);
success = true;
}catch (IOException ex){
failure = true;
}
assertTrue(success);
assertFalse(failure);
String message = exception.getMessage();
assertTrue(message.indexOf("Error code: Unable to parse error response message") == 0);
assertTrue(message.indexOf("http://localhost") > 0);
}
@Test
public void testNullConnection() {
DefaultLogger logger = new DefaultLogger();
GraphServiceException exception = null;
Boolean success = false;
Boolean failure = false;
final ITestConnectionData data = new ITestConnectionData() {
@Override
public int getRequestCode() {
return 401;
}
@Override
public String getJsonResponse() {
return "{}";
}
@Override
public Map<String, String> getHeaders() {
return new HashMap<>();
}
};
try{
exception = GraphServiceException.createFromConnection(new MockHttpRequest(),null,null,new MockConnection(data) {
@Override
public InputStream getInputStream() throws IOException {
return null;
}
},logger);
success = true;
}catch (IOException ex){
failure = true;
}
assertTrue(success);
assertFalse(failure);
String message = exception.getMessage();
assertTrue(message.indexOf("Error code: Unable to parse error response message") == 0);
assertTrue(message.indexOf("http://localhost") > 0);
}
}