github.com/hyperledger/burrow@v0.34.5-0.20220512172541-77f09336001d/util/natives/templates/solidity_templates_test.go (about) 1 // Copyright Monax Industries Limited 2 // SPDX-License-Identifier: Apache-2.0 3 4 package templates 5 6 import ( 7 "fmt" 8 "testing" 9 10 "github.com/hyperledger/burrow/execution/native" 11 "github.com/stretchr/testify/assert" 12 ) 13 14 func TestSNativeFuncTemplate(t *testing.T) { 15 contract := native.MustDefaultNatives().GetContract("Permissions") 16 function := contract.FunctionByName("removeRole") 17 if function == nil { 18 t.Fatal("Couldn't get function") 19 } 20 solidityFunction := NewSolidityFunction(function) 21 solidity, err := solidityFunction.Solidity() 22 assert.NoError(t, err) 23 fmt.Println(solidity) 24 } 25 26 // This test checks that we can generate the native contract interface and 27 // prints it to stdout 28 func TestSNativeContractTemplate(t *testing.T) { 29 contract := native.MustDefaultNatives().GetContract("Permissions") 30 solidityContract := NewSolidityContract(contract) 31 solidity, err := solidityContract.Solidity() 32 assert.NoError(t, err) 33 fmt.Println(solidity) 34 }