mirror of
https://github.com/featurebasedb/featurebase.git
synced 2026-10-10 21:07:53 +00:00
more test
This commit is contained in:
parent
a1a6c7d717
commit
7e53a4ed1d
3 changed files with 25 additions and 7 deletions
2
frame.go
2
frame.go
|
|
@ -446,7 +446,7 @@ func (f *Frame) GetFields() (*FrameSchema, error) {
|
|||
|
||||
// Ensure frame supports fields.
|
||||
if !f.RangeEnabled() {
|
||||
return nil, nil
|
||||
return nil, ErrFrameFieldsNotAllowed
|
||||
}
|
||||
err := f.loadSchema()
|
||||
if err != nil {
|
||||
|
|
|
|||
|
|
@ -849,7 +849,10 @@ func (h *Handler) handleGetFrameField(w http.ResponseWriter, r *http.Request) {
|
|||
index := h.Holder.index(indexName)
|
||||
frame := index.frame(frameName)
|
||||
schema, err := frame.GetFields()
|
||||
if err != nil {
|
||||
if err == ErrFrameFieldsNotAllowed {
|
||||
http.Error(w, err.Error(), http.StatusBadRequest)
|
||||
return
|
||||
} else if err != nil {
|
||||
http.Error(w, err.Error(), http.StatusInternalServerError)
|
||||
return
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1072,13 +1072,28 @@ func TestHandler_Frame_GetFields(t *testing.T) {
|
|||
} else if field.Max != 100 {
|
||||
t.Fatalf("expected field's max: x, actuall max: %v", field.Max)
|
||||
}
|
||||
//
|
||||
//
|
||||
//if field := f.Field("x"); field != nil {
|
||||
// t.Fatalf("expected nil field, got: %#v", field)
|
||||
//}
|
||||
|
||||
})
|
||||
|
||||
t.Run("ErrFrameFieldNotAllowed", func(t *testing.T) {
|
||||
idx := hldr.MustCreateIndexIfNotExists("i", pilosa.IndexOptions{})
|
||||
_, err := idx.CreateFrameIfNotExists("f1", pilosa.FrameOptions{RangeEnabled: false})
|
||||
|
||||
resp, err := http.Get(s.URL + "/index/i/frame/f1/fields")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
} else if resp.StatusCode != http.StatusBadRequest {
|
||||
t.Fatalf("unexpected status code: %d", resp.StatusCode)
|
||||
} else if body, err := ioutil.ReadAll(resp.Body); err != nil {
|
||||
t.Fatal(err)
|
||||
} else if strings.TrimSpace(string(body)) != `frame fields not allowed` {
|
||||
t.Fatalf("unexpected body: %q", body)
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
type FrameFields struct {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue