solana-go/programs/token/Burn_test.go

49 lines
1.3 KiB
Go
Raw Normal View History

// Copyright 2021 github.com/gagliardetto
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
2021-09-03 15:43:43 -07:00
package token
import (
"bytes"
"strconv"
"testing"
2021-09-04 08:41:00 -07:00
ag_gofuzz "github.com/gagliardetto/gofuzz"
ag_require "github.com/stretchr/testify/require"
2021-09-03 15:43:43 -07:00
)
func TestEncodeDecode_Burn(t *testing.T) {
fu := ag_gofuzz.New().NilChance(0)
for i := 0; i < 1; i++ {
t.Run("Burn"+strconv.Itoa(i), func(t *testing.T) {
{
params := new(Burn)
fu.Fuzz(params)
2021-09-04 08:41:00 -07:00
params.Accounts = nil
params.Signers = nil
2021-09-03 15:43:43 -07:00
buf := new(bytes.Buffer)
err := encodeT(*params, buf)
ag_require.NoError(t, err)
//
got := new(Burn)
err = decodeT(got, buf.Bytes())
2021-09-04 08:41:00 -07:00
params.Accounts = nil
params.Signers = nil
2021-09-03 15:43:43 -07:00
ag_require.NoError(t, err)
ag_require.Equal(t, params, got)
}
})
}
}