1package com.parseable.android
3import com.parseable.android.data.model.ApiResult
4import org.junit.Assert.*
10 fun `401 error produces session expired message`() {
11 val error = ApiResult.Error("Unauthorized", code = 401)
12 assertTrue(error.isUnauthorized)
13 assertEquals("Session expired. Please log in again.", error.userMessage)
17 fun `403 error produces permission denied message`() {
18 val error = ApiResult.Error("Forbidden", code = 403)
19 assertEquals("Permission denied.", error.userMessage)
23 fun `404 error produces not found message`() {
24 val error = ApiResult.Error("Not Found", code = 404)
25 assertTrue(error.isNotFound)
26 assertEquals("Resource not found. It may have been deleted.", error.userMessage)
30 fun `429 error produces rate limit message`() {
31 val error = ApiResult.Error("Too Many Requests", code = 429)
32 assertEquals("Too many requests. Please wait and try again.", error.userMessage)
36 fun `500 error produces server error message`() {
37 val error = ApiResult.Error("Internal Server Error", code = 500)
38 assertTrue(error.isServerError)
39 assertEquals("Server error (500). Please try again later.", error.userMessage)
43 fun `502 error produces server error message`() {
44 val error = ApiResult.Error("Bad Gateway", code = 502)
45 assertTrue(error.isServerError)
46 assertEquals("Server error (502). Please try again later.", error.userMessage)
50 fun `network timeout produces timeout message`() {
51 val error = ApiResult.Error("connect timeout", code = 0)
52 assertTrue(error.isNetworkError)
53 assertEquals("Connection timed out. Check your network.", error.userMessage)
57 fun `DNS resolution failure produces no internet message`() {
58 val error = ApiResult.Error("Unable to resolve host \"example.com\"", code = 0)
59 assertTrue(error.isNetworkError)
60 assertEquals("No internet connection.", error.userMessage)
64 fun `connection refused produces unreachable message`() {
65 val error = ApiResult.Error("Connection refused", code = 0)
66 assertTrue(error.isNetworkError)
67 assertEquals("Server is unreachable.", error.userMessage)
71 fun `generic network error includes original message`() {
72 val error = ApiResult.Error("SSL handshake failed", code = 0)
73 assertTrue(error.isNetworkError)
74 assertEquals("Network error: SSL handshake failed", error.userMessage)
78 fun `non-standard HTTP code returns raw message`() {
79 val error = ApiResult.Error("Custom error from proxy", code = 418)
80 assertEquals("Custom error from proxy", error.userMessage)
84 fun `success result carries data`() {
85 val result: ApiResult<String> = ApiResult.Success("hello")
86 assertTrue(result is ApiResult.Success)
87 assertEquals("hello", (result as ApiResult.Success).data)
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list