package backend import ( "fmt" "github.com/tendermint/tendermint/proto/tendermint/crypto" ) func mookProofs(num int, withData bool) *crypto.ProofOps { var proofOps *crypto.ProofOps if num > 0 { proofOps = new(crypto.ProofOps) for i := 0; i < num; i++ { proof := crypto.ProofOp{} if withData { proof.Data = []byte("\n\031\n\003KEY\022\005VALUE\032\013\010\001\030\001 \001*\003\000\002\002") } proofOps.Ops = append(proofOps.Ops, proof) } } return proofOps } func (suite *BackendTestSuite) TestGetHexProofs() { defaultRes := []string{""} testCases := []struct { name string proof *crypto.ProofOps exp []string }{ { "no proof provided", mookProofs(0, false), defaultRes, }, { "no proof data provided", mookProofs(1, false), defaultRes, }, { "valid proof provided", mookProofs(1, true), []string{"0x0a190a034b4559120556414c55451a0b0801180120012a03000202"}, }, } for _, tc := range testCases { suite.Run(fmt.Sprintf("Case %s", tc.name), func() { suite.Require().Equal(tc.exp, GetHexProofs(tc.proof)) }) } }