feat: setup logs retention by max file size
This commit is contained in:
1 parent
70c8492f4f
commit
f914eae3c5
44 files changed
+2316
-161
No files matched your search
@@ -15,12 +15,12 @@ import (
|
||||
"github.com/go-chi/jwtauth/v5"
|
||||
)
|
||||
|
||||
func newSettingsRouter(userRepo *mockUserRepo, token *jwtauth.JWTAuth, version string) *chi.Mux {
|
||||
func newSettingsRouter(t *testing.T, userRepo *mockUserRepo, token *jwtauth.JWTAuth, version string) *chi.Mux {
|
||||
getUserUseCase := useCases.NewGetUserUseCase(userRepo)
|
||||
settingsHandler := settings.NewHandler(
|
||||
useCases.NewGetSettingsUseCase(version),
|
||||
useCases.NewGetActivityRetentionUseCase(newActivitySettingsFake(), settingsTestClock),
|
||||
useCases.NewUpdateActivityRetentionUseCase(newActivitySettingsFake(), discardRecorder, settingsTestClock),
|
||||
useCases.NewGetActivityRetentionUseCase(newActivitySettingsFake(), newSizeEvents(t), settingsTestClock),
|
||||
useCases.NewUpdateActivityRetentionUseCase(newActivitySettingsFake(), newSizeEvents(t), discardRecorder, settingsTestClock),
|
||||
)
|
||||
|
||||
r := chi.NewRouter()
|
||||
@@ -35,7 +35,7 @@ func newSettingsRouter(userRepo *mockUserRepo, token *jwtauth.JWTAuth, version s
|
||||
}
|
||||
|
||||
func settingsBody(version string) string {
|
||||
return `{"version":"` + version + `","activity_retention_days":90,"activity_last_cleanup_at":null,"activity_last_cleanup_removed":0,"activity_next_cleanup_at":"2026-10-07T03:00:00+02:00"}`
|
||||
return `{"version":"` + version + `","activity_retention_days":90,"activity_retention_max_gb":0,"activity_log_size_bytes":0,"activity_last_cleanup_at":null,"activity_last_cleanup_removed":0,"activity_next_cleanup_at":"2026-10-07T03:00:00+02:00"}`
|
||||
}
|
||||
|
||||
func TestSettingsHttp(t *testing.T) {
|
||||
@@ -46,7 +46,7 @@ func TestSettingsHttp(t *testing.T) {
|
||||
token := jwtauth.New("HS256", []byte("test-secret"), nil)
|
||||
userRepo := newMockUserRepo()
|
||||
userRepo.users[7] = user.User{ID: 7, Username: "alice", IsVerified: true, TokenVersion: 0}
|
||||
router := newSettingsRouter(userRepo, token, version)
|
||||
router := newSettingsRouter(t, userRepo, token, version)
|
||||
cookie := mintGetCurrentUserCookie(t, token, 7, 0)
|
||||
|
||||
rec := sendGetCurrentUserRequest(router, http.MethodGet, "/v1/settings", cookie)
|
||||
@@ -64,7 +64,7 @@ func TestSettingsHttp(t *testing.T) {
|
||||
token := jwtauth.New("HS256", []byte("test-secret"), nil)
|
||||
userRepo := newMockUserRepo()
|
||||
userRepo.users[7] = user.User{ID: 7, Username: "alice", IsVerified: true, TokenVersion: 0}
|
||||
router := newSettingsRouter(userRepo, token, "v2.2.0-beta")
|
||||
router := newSettingsRouter(t, userRepo, token, "v2.2.0-beta")
|
||||
cookie := mintGetCurrentUserCookie(t, token, 7, 0)
|
||||
t.Setenv("ENVIRONMENT", "development")
|
||||
|
||||
@@ -80,7 +80,7 @@ func TestSettingsHttp(t *testing.T) {
|
||||
|
||||
t.Run("A request without a jwt cookie is refused", func(t *testing.T) {
|
||||
token := jwtauth.New("HS256", []byte("test-secret"), nil)
|
||||
router := newSettingsRouter(newMockUserRepo(), token, "v2.2.0-beta")
|
||||
router := newSettingsRouter(t, newMockUserRepo(), token, "v2.2.0-beta")
|
||||
|
||||
rec := sendGetCurrentUserRequest(router, http.MethodGet, "/v1/settings", nil)
|
||||
|
||||
@@ -96,7 +96,7 @@ func TestSettingsHttp(t *testing.T) {
|
||||
token := jwtauth.New("HS256", []byte("test-secret"), nil)
|
||||
userRepo := newMockUserRepo()
|
||||
userRepo.users[7] = user.User{ID: 7, Username: "alice", IsVerified: true, TokenVersion: 1}
|
||||
router := newSettingsRouter(userRepo, token, "v2.2.0-beta")
|
||||
router := newSettingsRouter(t, userRepo, token, "v2.2.0-beta")
|
||||
cookie := mintGetCurrentUserCookie(t, token, 7, 0)
|
||||
|
||||
rec := sendGetCurrentUserRequest(router, http.MethodGet, "/v1/settings", cookie)
|
||||
@@ -113,7 +113,7 @@ func TestSettingsHttp(t *testing.T) {
|
||||
token := jwtauth.New("HS256", []byte("test-secret"), nil)
|
||||
userRepo := newMockUserRepo()
|
||||
userRepo.users[8] = user.User{ID: 8, Username: "bob", IsVerified: false, TokenVersion: 0}
|
||||
router := newSettingsRouter(userRepo, token, "v2.2.0-beta")
|
||||
router := newSettingsRouter(t, userRepo, token, "v2.2.0-beta")
|
||||
cookie := mintGetCurrentUserCookie(t, token, 8, 0)
|
||||
|
||||
rec := sendGetCurrentUserRequest(router, http.MethodGet, "/v1/settings", cookie)
|
||||
|
||||
Reference in new issue
Block a user