diff options
Diffstat (limited to 'weed')
| -rw-r--r-- | weed/security/jwt.go | 8 | ||||
| -rw-r--r-- | weed/storage/idx_binary_search_test.go | 12 |
2 files changed, 20 insertions, 0 deletions
diff --git a/weed/security/jwt.go b/weed/security/jwt.go index 446c3c21d..d859e9ea8 100644 --- a/weed/security/jwt.go +++ b/weed/security/jwt.go @@ -83,6 +83,14 @@ func GetJwt(r *http.Request) EncodedJwt { } } + // Get token from http only cookie + if tokenStr == "" { + token, err := r.Cookie("AT") + if err == nil { + tokenStr = token.Value + } + } + return EncodedJwt(tokenStr) } diff --git a/weed/storage/idx_binary_search_test.go b/weed/storage/idx_binary_search_test.go index 07eacb898..0f26cdd02 100644 --- a/weed/storage/idx_binary_search_test.go +++ b/weed/storage/idx_binary_search_test.go @@ -32,6 +32,9 @@ func TestFirstInvalidIndex(t *testing.T) { } } b, err := os.ReadFile(v.IndexFileName() + ".idx") + if err != nil { + t.Fatal(err) + } // base case every record is valid -> nothing is filtered index, err := idx.FirstInvalidIndex(b, func(key types.NeedleId, offset types.Offset, size types.Size) (bool, error) { return true, nil @@ -43,16 +46,25 @@ func TestFirstInvalidIndex(t *testing.T) { index, err = idx.FirstInvalidIndex(b, func(key types.NeedleId, offset types.Offset, size types.Size) (bool, error) { return false, nil }) + if err != nil { + t.Fatal(err) + } assert.Equal(t, 0, index, "when every record is invalid everything should be filtered from binary search") index, err = idx.FirstInvalidIndex(b, func(key types.NeedleId, offset types.Offset, size types.Size) (bool, error) { return key < 20, nil }) + if err != nil { + t.Fatal(err) + } // needle key range from 1 to 30 so < 20 means 19 keys are valid and cutoff the bytes at 19 * 16 = 304 assert.Equal(t, 19, index, "when every record is invalid everything should be filtered from binary search") index, err = idx.FirstInvalidIndex(b, func(key types.NeedleId, offset types.Offset, size types.Size) (bool, error) { return key <= 1, nil }) + if err != nil { + t.Fatal(err) + } // needle key range from 1 to 30 so <=1 1 means 1 key is valid and cutoff the bytes at 1 * 16 = 16 assert.Equal(t, 1, index, "when every record is invalid everything should be filtered from binary search") } |
