Skip to content

Commit cd929cb

Browse files
Add test ban
1 parent 9cf73f2 commit cd929cb

File tree

3 files changed

+36
-26
lines changed

3 files changed

+36
-26
lines changed

internal/test/appeal_test.go

Lines changed: 6 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package test_test
22

33
import (
4-
"context"
54
"fmt"
65
"net/http"
76
"testing"
@@ -13,38 +12,21 @@ import (
1312

1413
func TestAppeal(t *testing.T) {
1514
router := testRouter()
16-
target := getUser()
17-
targetAuth := loginUser(target)
15+
16+
targetAuth := loginUser(testTarget)
1817

1918
mod := getModerator()
2019
modAuth := loginUser(mod)
2120

22-
// Create a valid ban_id
23-
bannedPerson, errBan := banSteamUC.Ban(context.Background(), mod, domain.System, domain.RequestBanSteamCreate{
24-
SourceIDField: domain.SourceIDField{SourceID: mod.SteamID.String()},
25-
TargetIDField: domain.TargetIDField{TargetID: target.SteamID.String()},
26-
Duration: "1d",
27-
BanType: domain.Banned,
28-
Reason: domain.Cheating,
29-
ReasonText: "",
30-
Note: "notes",
31-
ReportID: 0,
32-
DemoName: "demo-test.dem",
33-
DemoTick: 100,
34-
IncludeFriends: true,
35-
EvadeOk: true,
36-
})
37-
require.NoError(t, errBan)
38-
3921
// Check for no messages
4022
var banMessages []domain.BanAppealMessage
41-
testEndpointWithReceiver(t, router, http.MethodGet, fmt.Sprintf("/api/bans/%d/messages", bannedPerson.BanID), nil, http.StatusOK, targetAuth, &banMessages)
23+
testEndpointWithReceiver(t, router, http.MethodGet, fmt.Sprintf("/api/bans/%d/messages", testBan.BanID), nil, http.StatusOK, targetAuth, &banMessages)
4224
require.Empty(t, banMessages)
4325

4426
// Create a message
4527
newMessage := domain.RequestMessageBodyMD{BodyMD: stringutil.SecureRandomString(100)}
4628
var createdMessage domain.BanAppealMessage
47-
testEndpointWithReceiver(t, router, http.MethodPost, fmt.Sprintf("/api/bans/%d/messages", bannedPerson.BanID), newMessage, http.StatusCreated, targetAuth, &createdMessage)
29+
testEndpointWithReceiver(t, router, http.MethodPost, fmt.Sprintf("/api/bans/%d/messages", testBan.BanID), newMessage, http.StatusCreated, targetAuth, &createdMessage)
4830
require.Equal(t, newMessage.BodyMD, createdMessage.MessageMD)
4931

5032
// Try and create a message as non target user or mod
@@ -57,7 +39,7 @@ func TestAppeal(t *testing.T) {
5739
require.NotEmpty(t, appeals)
5840

5941
// Get messages
60-
testEndpointWithReceiver(t, router, http.MethodGet, fmt.Sprintf("/api/bans/%d/messages", bannedPerson.BanID), nil, http.StatusOK, modAuth, &banMessages)
42+
testEndpointWithReceiver(t, router, http.MethodGet, fmt.Sprintf("/api/bans/%d/messages", testBan.BanID), nil, http.StatusOK, modAuth, &banMessages)
6143
require.NotEmpty(t, banMessages)
6244

6345
// Edit the message
@@ -70,7 +52,7 @@ func TestAppeal(t *testing.T) {
7052
testEndpoint(t, router, http.MethodDelete, fmt.Sprintf("/api/bans/message/%d", createdMessage.BanMessageID), nil, http.StatusOK, modAuth)
7153

7254
// Confirm delete
73-
testEndpointWithReceiver(t, router, http.MethodGet, fmt.Sprintf("/api/bans/%d/messages", bannedPerson.BanID), nil, http.StatusOK, modAuth, &banMessages)
55+
testEndpointWithReceiver(t, router, http.MethodGet, fmt.Sprintf("/api/bans/%d/messages", testBan.BanID), nil, http.StatusOK, modAuth, &banMessages)
7456
require.Empty(t, banMessages)
7557
}
7658

internal/test/bans_steam_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ func TestBansSteam(t *testing.T) {
2020
// Ensure no bans exist
2121
var bansEmpty []domain.BanSteam
2222
testEndpointWithReceiver(t, router, http.MethodGet, "/api/bans/steam", nil, http.StatusOK, modCreds, &bansEmpty)
23-
require.Empty(t, bansEmpty)
23+
require.Len(t, bansEmpty, 1)
2424

2525
// Create a ban
2626
banReq := domain.RequestBanSteamCreate{
@@ -55,7 +55,7 @@ func TestBansSteam(t *testing.T) {
5555
// Ensure it's in the ban collection
5656
var bans []domain.BanSteam
5757
testEndpointWithReceiver(t, router, http.MethodGet, "/api/bans/steam", nil, http.StatusOK, modCreds, &bans)
58-
require.NotEmpty(t, bans)
58+
require.Len(t, bans, 2)
5959

6060
updateReq := ban.RequestBanSteamUpdate{
6161
TargetID: fetchedBan.TargetID,

internal/test/main_test.go

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,8 @@ import (
5454
var (
5555
dbContainer *postgresContainer
5656
testServer domain.Server
57+
testBan domain.BannedSteamPerson
58+
testTarget domain.Person
5759
configUC domain.ConfigUsecase
5860
wikiUC domain.WikiUsecase
5961
personUC domain.PersonUsecase
@@ -176,6 +178,32 @@ func TestMain(m *testing.M) {
176178

177179
testServer = server
178180

181+
mod := getModerator()
182+
target := getUser()
183+
184+
// Create a valid ban_id
185+
bannedPerson, errBan := banSteamUC.Ban(context.Background(), mod, domain.System, domain.RequestBanSteamCreate{
186+
SourceIDField: domain.SourceIDField{SourceID: mod.SteamID.String()},
187+
TargetIDField: domain.TargetIDField{TargetID: target.SteamID.String()},
188+
Duration: "1d",
189+
BanType: domain.Banned,
190+
Reason: domain.Cheating,
191+
ReasonText: "",
192+
Note: "notes",
193+
ReportID: 0,
194+
DemoName: "demo-test.dem",
195+
DemoTick: 100,
196+
IncludeFriends: true,
197+
EvadeOk: true,
198+
})
199+
200+
if errBan != nil {
201+
panic(errBan)
202+
}
203+
204+
testBan = bannedPerson
205+
testTarget = target
206+
179207
m.Run()
180208
}
181209

0 commit comments

Comments
 (0)