API state endpoint test

This commit is contained in:
laisolizq
2020-11-10 12:54:22 +01:00
parent 6ec7a0b55d
commit 43e9bee9db
9 changed files with 351 additions and 271 deletions

View File

@@ -13,6 +13,8 @@ import (
"github.com/iden3/go-iden3-crypto/babyjub"
)
const exitIdx = "hez:EXIT:1"
// Query parsers
type querier interface {
@@ -428,3 +430,28 @@ func parseParamHezEthAddr(c paramer) (*ethCommon.Address, error) {
addrStr := c.Param(name)
return hezStringToEthAddr(addrStr, name)
}
type errorMsg struct {
Message string
}
func bjjToString(bjj *babyjub.PublicKey) string {
pkComp := [32]byte(bjj.Compress())
sum := pkComp[0]
for i := 1; i < len(pkComp); i++ {
sum += pkComp[i]
}
bjjSum := append(pkComp[:], sum)
return "hez:" + base64.RawURLEncoding.EncodeToString(bjjSum)
}
func ethAddrToHez(addr ethCommon.Address) string {
return "hez:" + addr.String()
}
func idxToHez(idx common.Idx, tokenSymbol string) string {
if idx == 1 {
return exitIdx
}
return "hez:" + tokenSymbol + ":" + strconv.Itoa(int(idx))
}