engine: resources: Test to make sure metaparams are preserved
We should ensure these get preserved across encoding/decoding. We rely on this behaviour.
This commit is contained in:
@@ -45,6 +45,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/purpleidea/mgmt/engine"
|
"github.com/purpleidea/mgmt/engine"
|
||||||
|
engineUtil "github.com/purpleidea/mgmt/engine/util"
|
||||||
"github.com/purpleidea/mgmt/pgraph"
|
"github.com/purpleidea/mgmt/pgraph"
|
||||||
"github.com/purpleidea/mgmt/util"
|
"github.com/purpleidea/mgmt/util"
|
||||||
"github.com/purpleidea/mgmt/util/errwrap"
|
"github.com/purpleidea/mgmt/util/errwrap"
|
||||||
@@ -1777,3 +1778,47 @@ func TestResPtrUID1(t *testing.T) {
|
|||||||
t.Errorf("uid's don't match")
|
t.Errorf("uid's don't match")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestResToB64(t *testing.T) {
|
||||||
|
res, err := engine.NewNamedResource("noop", "n1")
|
||||||
|
if err != nil {
|
||||||
|
t.Errorf("could not build resource: %+v", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
s, err := engineUtil.ResToB64(res)
|
||||||
|
if err != nil {
|
||||||
|
t.Errorf("error trying to encode res: %s", err.Error())
|
||||||
|
return
|
||||||
|
}
|
||||||
|
t.Logf("out: %s", s)
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestResToB64Meta(t *testing.T) {
|
||||||
|
hidden := true // must be true, since false is a default
|
||||||
|
|
||||||
|
res, err := engine.NewNamedResource("noop", "n1")
|
||||||
|
if err != nil {
|
||||||
|
t.Errorf("could not build resource: %+v", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
res.MetaParams().Hidden = hidden
|
||||||
|
|
||||||
|
s, err := engineUtil.ResToB64(res)
|
||||||
|
if err != nil {
|
||||||
|
t.Errorf("error trying to encode res: %s", err.Error())
|
||||||
|
return
|
||||||
|
}
|
||||||
|
t.Logf("out: %s", s)
|
||||||
|
|
||||||
|
r, err := engineUtil.B64ToRes(s)
|
||||||
|
if err != nil {
|
||||||
|
t.Errorf("error trying to decode res: %s", err.Error())
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if r.MetaParams().Hidden != hidden {
|
||||||
|
t.Errorf("metaparam did not get preserved")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
t.Logf("meta: %v", r.MetaParams().Hidden)
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user