github.com/yankunsam/loki/v2@v2.6.3-0.20220817130409-389df5235c27/pkg/querier/http_test.go (about)

     1  package querier
     2  
     3  import (
     4  	"net/http"
     5  	"net/http/httptest"
     6  	"testing"
     7  
     8  	"github.com/go-kit/log"
     9  	"github.com/grafana/dskit/tenant"
    10  	"github.com/stretchr/testify/require"
    11  	"github.com/weaveworks/common/user"
    12  
    13  	"github.com/grafana/loki/pkg/validation"
    14  )
    15  
    16  func TestTailHandler(t *testing.T) {
    17  	tenant.WithDefaultResolver(tenant.NewMultiResolver())
    18  
    19  	defaultLimits := defaultLimitsTestConfig()
    20  	limits, err := validation.NewOverrides(defaultLimits, nil)
    21  	require.NoError(t, err)
    22  
    23  	api := NewQuerierAPI(mockQuerierConfig(), nil, limits, log.NewNopLogger())
    24  
    25  	req, err := http.NewRequest("GET", "/", nil)
    26  	ctx := user.InjectOrgID(req.Context(), "1|2")
    27  	req = req.WithContext(ctx)
    28  	require.NoError(t, err)
    29  
    30  	rr := httptest.NewRecorder()
    31  	handler := http.HandlerFunc(api.TailHandler)
    32  
    33  	handler.ServeHTTP(rr, req)
    34  	require.Equal(t, http.StatusBadRequest, rr.Code)
    35  	require.Equal(t, "multiple org IDs present\n", rr.Body.String())
    36  }