-
Notifications
You must be signed in to change notification settings - Fork 0
/
errors_test.go
146 lines (125 loc) · 4.89 KB
/
errors_test.go
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
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
package libwekan
import (
"errors"
"fmt"
"testing"
"github.com/stretchr/testify/assert"
"go.mongodb.org/mongo-driver/mongo"
)
func TestErrors_UserAlreadyExistsError(t *testing.T) {
e := UserAlreadyExistsError{User{ID: "testID", Username: "testID"}}
expected := fmt.Sprintf("l'utilisateur existe déjà (UserID: %s, Username: %s)", e.user.ID, e.user.Username)
assert.EqualError(t, e, expected)
}
func TestErrors_UserNotFoundError(t *testing.T) {
e := UserNotFoundError{key: "test"}
expected := fmt.Sprintf("l'utilisateur n'est pas connu (%s)", e.key)
assert.EqualError(t, e, expected)
}
func TestErrors_BoardNotFoundError(t *testing.T) {
e := boardNotFoundWithSlug("test")
expected := "aucun tableau n'a été trouvé avec le slug : 'test'"
assert.EqualError(t, e, expected)
e = boardNotFoundWithId("test")
expected = "aucun tableau n'a été trouvé avec le boardID : 'test'"
assert.EqualError(t, e, expected)
e = boardNotFoundWithTitle("test")
expected = "aucun tableau n'a été trouvé avec le titre : 'test'"
assert.EqualError(t, e, expected)
}
func TestErrors_NotPrivilegedError(t *testing.T) {
e := NotPrivilegedError{"test", errors.New("")}
expected := fmt.Sprintf("l'utilisateur n'est pas admin: id = %s", e.id)
assert.EqualError(t, e, expected)
}
func TestErrors_ProtectedUserError(t *testing.T) {
e := ProtectedUserError{"test"}
expected := fmt.Sprintf("cet action est interdite sur cet utilisateur (%s)", e.id)
assert.EqualError(t, e, expected)
}
func TestErrors_InsertEmptyRuleError(t *testing.T) {
e := InsertEmptyRuleError{}
expected := "l'insertion d'un objet Rule vide est impossible"
assert.EqualError(t, e, expected)
assert.Error(t, e)
}
func TestErrors_BoardLabelAlreadyExistsError(t *testing.T) {
e := BoardLabelAlreadyExistsError{BoardLabel{}, Board{}}
expected := fmt.Sprintf("un objet BoardLabel existe déjà dans la board (%s) avec le même nom (%s)", e.board.ID, e.boardLabel.Name)
assert.EqualError(t, e, expected)
}
func TestErrors_UnexpectedMongoError(t *testing.T) {
e := UnexpectedMongoError{err: mongo.ErrNoDocuments}
expected := "erreur survenue lors de l'exécution de la requête"
assert.ErrorContains(t, e, expected)
assert.ErrorIs(t, e, mongo.ErrNoDocuments)
}
func TestErrors_UnexpectedMongoDecodeError(t *testing.T) {
e := UnexpectedMongoDecodeError{err: mongo.ErrNoDocuments}
expected := "erreur survenue lors du décodage du résultat de la requête"
assert.ErrorContains(t, e, expected)
assert.ErrorIs(t, e, mongo.ErrNoDocuments)
}
func TestErrors_AlreadySetActityError(t *testing.T) {
e := AlreadySetActivityError{"test"}
expected := fmt.Sprintf("l'activité est déjà définie: activityType = %s", e.activityType)
assert.EqualError(t, e, expected)
}
func TestErrors_UnreachableMongoError(t *testing.T) {
e := UnreachableMongoError{mongo.ErrNilValue}
expected := "la connexion a échoué"
assert.ErrorContains(t, e, expected)
assert.ErrorIs(t, e, mongo.ErrNilValue)
}
func TestErrors_InvalidMongoConfigurationError(t *testing.T) {
e := InvalidMongoConfigurationError{mongo.ErrNilValue}
expected := "les paramètres de connexion sont invalides"
assert.ErrorContains(t, e, expected)
assert.ErrorIs(t, e, mongo.ErrNilValue)
}
func TestErrors_ForbiddenOperationError(t *testing.T) {
e := ForbiddenOperationError{UserIsNotMemberError{"test"}}
expected := "operation interdite"
assert.ErrorContains(t, e, expected)
assert.ErrorIs(t, e, UserIsNotMemberError{"test"})
}
func TestErrors_NotImplemented(t *testing.T) {
e := NotImplemented{"test"}
expected := fmt.Sprintf("not implemented : " + e.method)
assert.EqualError(t, e, expected)
}
func TestErrors_CardNotFoundError(t *testing.T) {
e := CardNotFoundError{"test"}
expected := fmt.Sprintf("la carte n'existe pas (ID: %s)", e.cardID)
assert.EqualError(t, e, expected)
}
func TestErrors_RuleNotFoundError(t *testing.T) {
e := RuleNotFoundError{"test"}
expected := fmt.Sprintf("la règle n'existe pas (ID: %s)", e.ruleID)
assert.EqualError(t, e, expected)
}
func TestErrors_ActionNotFoundError(t *testing.T) {
e := ActionNotFoundError{"test"}
expected := fmt.Sprintf("l'action n'existe pas (ID: %s)", e.actionId)
assert.EqualError(t, e, expected)
}
func TestErrors_TriggerNotFoundError(t *testing.T) {
e := TriggerNotFoundError{"test"}
expected := fmt.Sprintf("le trigger n'existe pas (ID: %s)", e.triggerId)
assert.EqualError(t, e, expected)
}
func TestErrors_NothingDoneError(t *testing.T) {
e := NothingDoneError{}
expected := "le traitement n'a eu aucun effet"
assert.EqualError(t, e, expected)
}
func TestErrors_UnknownActivityError(t *testing.T) {
e := ActivityNotFoundError{"test"}
expected := fmt.Sprintf("l'activité n'existe pas (ID: %s)", e.key)
assert.EqualError(t, e, expected)
}
func TestErrors_UserIsNotMemberError(t *testing.T) {
e := UserIsNotMemberError{"test"}
expected := fmt.Sprintf("cette action nécessite que l'utilisateur soit membre (id=%s)", e.userID)
assert.EqualError(t, e, expected)
}