29 lines
944 B
Go
29 lines
944 B
Go
package api
|
|
|
|
import (
|
|
"encoding/json"
|
|
"testing"
|
|
|
|
"linkport/internal/store"
|
|
)
|
|
|
|
func TestLoggingSettings(t *testing.T) {
|
|
f := newFixture(t)
|
|
f.login()
|
|
w := f.request("GET", "/api/v1/logging/settings", nil, false)
|
|
requireStatus(t, w, 200)
|
|
var settings store.LogSettings
|
|
if err := json.Unmarshal(w.Body.Bytes(), &settings); err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
if settings.MaxBytes != store.DefaultLogShardMaxBytes || settings.MaxAllowedBytes != store.MaxLogShardMaxBytes {
|
|
t.Fatal(settings)
|
|
}
|
|
requireStatus(t, f.request("PUT", "/api/v1/logging/settings", map[string]int64{"maxBytes": store.MinLogShardMaxBytes - 1}, true), 400)
|
|
w = f.request("PUT", "/api/v1/logging/settings", map[string]int64{"maxBytes": store.MinLogShardMaxBytes}, true)
|
|
requireStatus(t, w, 200)
|
|
if err := json.Unmarshal(w.Body.Bytes(), &settings); err != nil || settings.MaxBytes != store.MinLogShardMaxBytes {
|
|
t.Fatalf("saved settings: %v %v", settings, err)
|
|
}
|
|
}
|