Fixes #1358. Mimics go-ipfs defaults. Co-authored-by: Alan Shaw <alan.shaw@protocol.ai>
This commit is contained in:
parent
bfe179e943
commit
55516fe7c6
17
api/add.go
17
api/add.go
|
@ -154,10 +154,6 @@ func AddParamsFromQuery(query url.Values) (*AddParams, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
err = parseBoolParam(query, "raw-leaves", ¶ms.RawLeaves)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
err = parseBoolParam(query, "hidden", ¶ms.Hidden)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
@ -181,6 +177,19 @@ func AddParamsFromQuery(query url.Values) (*AddParams, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
// This mimics go-ipfs behaviour.
|
||||
if params.CidVersion > 0 {
|
||||
params.RawLeaves = true
|
||||
}
|
||||
|
||||
// If the raw-leaves param is empty, the default RawLeaves value will
|
||||
// take place (which may be true or false depending on
|
||||
// CidVersion). Otherwise, it will be explicitly set.
|
||||
err = parseBoolParam(query, "raw-leaves", ¶ms.RawLeaves)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
err = parseBoolParam(query, "stream-channels", ¶ms.StreamChannels)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
|
|
@ -28,6 +28,53 @@ func TestAddParams_FromQuery(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
func TestAddParams_FromQueryRawLeaves(t *testing.T) {
|
||||
qStr := "cid-version=1"
|
||||
|
||||
q, err := url.ParseQuery(qStr)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
p, err := AddParamsFromQuery(q)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if !p.RawLeaves {
|
||||
t.Error("RawLeaves should be true with cid-version=1")
|
||||
}
|
||||
|
||||
qStr = "cid-version=1&raw-leaves=false"
|
||||
|
||||
q, err = url.ParseQuery(qStr)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
p, err = AddParamsFromQuery(q)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if p.RawLeaves {
|
||||
t.Error("RawLeaves should be false when explicitally set")
|
||||
}
|
||||
|
||||
qStr = "cid-version=0&raw-leaves=true"
|
||||
|
||||
q, err = url.ParseQuery(qStr)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
p, err = AddParamsFromQuery(q)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if !p.RawLeaves {
|
||||
t.Error("RawLeaves should be true when explicitly set")
|
||||
}
|
||||
}
|
||||
|
||||
func TestAddParams_ToQueryString(t *testing.T) {
|
||||
p := DefaultAddParams()
|
||||
p.ReplicationFactorMin = 3
|
||||
|
|
Loading…
Reference in New Issue
Block a user