@@ -21,6 +21,8 @@ namespace FirebaseAdmin.Tests
21
21
{
22
22
public class PlatformErrorHandlerTest
23
23
{
24
+ private static readonly TestPlatformErrorHandler ErrorHandler = new TestPlatformErrorHandler ( ) ;
25
+
24
26
[ Fact ]
25
27
public void PlatformError ( )
26
28
{
@@ -36,8 +38,7 @@ public void PlatformError()
36
38
Content = new StringContent ( json , Encoding . UTF8 , "application/json" ) ,
37
39
} ;
38
40
39
- var handler = new PlatformErrorHandler ( ) ;
40
- var error = Assert . Throws < FirebaseException > ( ( ) => handler . ThrowIfError ( resp , json ) ) ;
41
+ var error = ErrorHandler . HandleHttpErrorResponse ( resp , json ) ;
41
42
42
43
Assert . Equal ( ErrorCode . Unavailable , error . ErrorCode ) ;
43
44
Assert . Equal ( "Test error message" , error . Message ) ;
@@ -55,8 +56,7 @@ public void NonJsonResponse()
55
56
Content = new StringContent ( text , Encoding . UTF8 , "text/plain" ) ,
56
57
} ;
57
58
58
- var handler = new PlatformErrorHandler ( ) ;
59
- var error = Assert . Throws < FirebaseException > ( ( ) => handler . ThrowIfError ( resp , text ) ) ;
59
+ var error = ErrorHandler . HandleHttpErrorResponse ( resp , text ) ;
60
60
61
61
Assert . Equal ( ErrorCode . Unavailable , error . ErrorCode ) ;
62
62
Assert . Equal (
@@ -80,8 +80,7 @@ public void PlatformErrorWithoutCode()
80
80
Content = new StringContent ( json , Encoding . UTF8 , "application/json" ) ,
81
81
} ;
82
82
83
- var handler = new PlatformErrorHandler ( ) ;
84
- var error = Assert . Throws < FirebaseException > ( ( ) => handler . ThrowIfError ( resp , json ) ) ;
83
+ var error = ErrorHandler . HandleHttpErrorResponse ( resp , json ) ;
85
84
86
85
Assert . Equal ( ErrorCode . Unavailable , error . ErrorCode ) ;
87
86
Assert . Equal ( "Test error message" , error . Message ) ;
@@ -103,8 +102,7 @@ public void PlatformErrorWithoutMessage()
103
102
Content = new StringContent ( json , Encoding . UTF8 , "application/json" ) ,
104
103
} ;
105
104
106
- var handler = new PlatformErrorHandler ( ) ;
107
- var error = Assert . Throws < FirebaseException > ( ( ) => handler . ThrowIfError ( resp , json ) ) ;
105
+ var error = ErrorHandler . HandleHttpErrorResponse ( resp , json ) ;
108
106
109
107
Assert . Equal ( ErrorCode . InvalidArgument , error . ErrorCode ) ;
110
108
Assert . Equal (
@@ -124,8 +122,7 @@ public void PlatformErrorWithoutCodeOrMessage()
124
122
Content = new StringContent ( json , Encoding . UTF8 , "application/json" ) ,
125
123
} ;
126
124
127
- var handler = new PlatformErrorHandler ( ) ;
128
- var error = Assert . Throws < FirebaseException > ( ( ) => handler . ThrowIfError ( resp , json ) ) ;
125
+ var error = ErrorHandler . HandleHttpErrorResponse ( resp , json ) ;
129
126
130
127
Assert . Equal ( ErrorCode . Unavailable , error . ErrorCode ) ;
131
128
Assert . Equal (
@@ -134,5 +131,13 @@ public void PlatformErrorWithoutCodeOrMessage()
134
131
Assert . Same ( resp , error . HttpResponse ) ;
135
132
Assert . Null ( error . InnerException ) ;
136
133
}
134
+
135
+ private class TestPlatformErrorHandler : PlatformErrorHandler < FirebaseException >
136
+ {
137
+ protected override FirebaseException CreateException ( FirebaseExceptionArgs args )
138
+ {
139
+ return new FirebaseException ( args . Code , args . Message , response : args . HttpResponse ) ;
140
+ }
141
+ }
137
142
}
138
143
}
0 commit comments