[#306] Fix billing tests

Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
This commit is contained in:
Denis Kirillov 2024-02-28 18:00:27 +03:00
parent 3285a2e105
commit 7de1ffdbe9

View file

@ -57,7 +57,7 @@ func prepareRouter(t *testing.T) *routerMock {
Limit: 10,
BacklogTimeout: 30 * time.Second,
},
Handler: &handlerMock{t: t, cfg: middlewareSettings, buckets: map[string]*data.BucketInfo{}},
Handler: &handlerMock{t: t, cfg: middlewareSettings, buckets: map[string]*data.BucketInfo{}},
Center: &centerMock{t: t},
Log: logger,
Metrics: metrics.NewAppMetrics(metricsConfig),
@ -442,33 +442,24 @@ func putObjectBase(router *routerMock, namespace, bktName, objName string) *http
func TestOwnerIDRetrieving(t *testing.T) {
chiRouter := prepareRouter(t)
w := httptest.NewRecorder()
r := httptest.NewRequest(http.MethodGet, "/test-bucket", nil)
ns, bktName, objName := "", "test-bucket", "test-object"
chiRouter.ServeHTTP(w, r)
resp := readResponse(t, w)
createBucket(chiRouter, ns, bktName)
resp := putObject(chiRouter, ns, bktName, objName)
require.NotEqual(t, "anon", resp.ReqInfo.User)
w = httptest.NewRecorder()
r = httptest.NewRequest(http.MethodGet, "/test-bucket", nil)
chiRouter.cfg.Center.(*centerMock).anon = true
chiRouter.ServeHTTP(w, r)
resp = readResponse(t, w)
resp = putObject(chiRouter, ns, bktName, objName)
require.Equal(t, "anon", resp.ReqInfo.User)
}
func TestBillingMetrics(t *testing.T) {
chiRouter := prepareRouter(t)
bktName, objName := "test-bucket", "test-object"
target := fmt.Sprintf("/%s/%s", bktName, objName)
ns, bktName, objName := "", "test-bucket", "test-object"
w := httptest.NewRecorder()
r := httptest.NewRequest(http.MethodPut, target, nil)
chiRouter.ServeHTTP(w, r)
createBucket(chiRouter, ns, bktName)
dump := chiRouter.cfg.Metrics.UsersAPIStats().DumpMetrics()
require.Len(t, dump.Requests, 1)
require.NotEqual(t, "anon", dump.Requests[0].User)
@ -477,11 +468,7 @@ func TestBillingMetrics(t *testing.T) {
require.Equal(t, 1, dump.Requests[0].Requests)
chiRouter.cfg.Center.(*centerMock).anon = true
w = httptest.NewRecorder()
r = httptest.NewRequest(http.MethodPut, target, nil)
chiRouter.ServeHTTP(w, r)
putObject(chiRouter, ns, bktName, objName)
dump = chiRouter.cfg.Metrics.UsersAPIStats().DumpMetrics()
require.Len(t, dump.Requests, 1)
require.Equal(t, "anon", dump.Requests[0].User)