21 lines
581 B
Go
21 lines
581 B
Go
package httpapi
|
|
|
|
import (
|
|
"net/http/httptest"
|
|
"strings"
|
|
"testing"
|
|
)
|
|
|
|
func TestGenericJobCreationCannotBypassDirectorySyncAdminPath(t *testing.T) {
|
|
h, err := NewHandler(Config{Store: &fakeJobStore{}})
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
req := httptest.NewRequest("POST", "/api/v1/jobs", strings.NewReader(`{"type":"qaops.directory.sync.fixture","payload":{"triggered_by":"forged"},"idempotency_key":"bypass"}`))
|
|
res := httptest.NewRecorder()
|
|
h.ServeHTTP(res, req)
|
|
if res.Code != 400 {
|
|
t.Fatalf("reserved sync job bypassed its dedicated admission path: %d", res.Code)
|
|
}
|
|
}
|