Skip to content

Commit 4fa9c6d

Browse files
committed
Test errors are the correct one
1 parent ed15ae3 commit 4fa9c6d

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed

client_test.go

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,26 @@ func TestTriggerMultiSuccessCase(t *testing.T) {
5555
assert.NoError(t, err)
5656
}
5757

58+
func TestTriggerMultiEncryptedRejected(t *testing.T) {
59+
server := httptest.NewServer(http.HandlerFunc(func(res http.ResponseWriter, req *http.Request) {
60+
t.Fatal("No request should reach the API")
61+
}))
62+
defer server.Close()
63+
64+
u, _ := url.Parse(server.URL)
65+
client := Client{
66+
AppID: "id",
67+
Key: "key",
68+
Secret: "secret",
69+
Host: u.Host,
70+
EncryptionMasterKeyBase64: "ZUhQVldIZzduRkdZVkJzS2pPRkRYV1JyaWJJUjJiMGI=",
71+
}
72+
err := client.TriggerMulti([]string{"test_channel", "private-encrypted-other_channel"}, "test", "yolo")
73+
assert.Error(t, err)
74+
assert.Contains(t, err.Error(), "multiple channels")
75+
assert.Contains(t, err.Error(), "encrypted channels")
76+
}
77+
5878
func TestGetChannelsSuccessCase(t *testing.T) {
5979
server := httptest.NewServer(http.HandlerFunc(func(res http.ResponseWriter, req *http.Request) {
6080
res.WriteHeader(200)
@@ -210,6 +230,7 @@ func TestTriggerBatchNoEncryptionMasterKeyWithEncryptedChanFailure(t *testing.T)
210230
})
211231

212232
assert.Error(t, err)
233+
assert.Contains(t, err.Error(), "master encryption key")
213234
}
214235

215236
func TestTriggerWithEncryptedChanSuccess(t *testing.T) {
@@ -272,6 +293,7 @@ func TestTriggerInvalidMasterKey(t *testing.T) {
272293
}
273294
err := client.Trigger("private-encrypted-test_channel", "test", "yolo1")
274295
assert.Error(t, err)
296+
assert.Contains(t, err.Error(), "32 bytes")
275297

276298
// too long (deprecated)
277299
client = Client{
@@ -283,6 +305,7 @@ func TestTriggerInvalidMasterKey(t *testing.T) {
283305
}
284306
err = client.Trigger("private-encrypted-test_channel", "test", "yolo1")
285307
assert.Error(t, err)
308+
assert.Contains(t, err.Error(), "32 bytes")
286309

287310
// both provided
288311
client = Client{
@@ -295,6 +318,7 @@ func TestTriggerInvalidMasterKey(t *testing.T) {
295318
}
296319
err = client.Trigger("private-encrypted-test_channel", "test", "yolo1")
297320
assert.Error(t, err)
321+
assert.Contains(t, err.Error(), "both")
298322

299323
// too short
300324
client = Client{
@@ -306,6 +330,7 @@ func TestTriggerInvalidMasterKey(t *testing.T) {
306330
}
307331
err = client.Trigger("private-encrypted-test_channel", "test", "yolo1")
308332
assert.Error(t, err)
333+
assert.Contains(t, err.Error(), "32 bytes")
309334

310335
// too long
311336
client = Client{
@@ -317,6 +342,7 @@ func TestTriggerInvalidMasterKey(t *testing.T) {
317342
}
318343
err = client.Trigger("private-encrypted-test_channel", "test", "yolo1")
319344
assert.Error(t, err)
345+
assert.Contains(t, err.Error(), "32 bytes")
320346

321347
// invalid base64
322348
client = Client{
@@ -328,6 +354,7 @@ func TestTriggerInvalidMasterKey(t *testing.T) {
328354
}
329355
err = client.Trigger("private-encrypted-test_channel", "test", "yolo1")
330356
assert.Error(t, err)
357+
assert.Contains(t, err.Error(), "valid base64")
331358
}
332359

333360
func TestErrorResponseHandler(t *testing.T) {

0 commit comments

Comments
 (0)