github.com/jimpick/sp-kyc-checks@v0.0.0-20230201194251-fa84fca72da8/checks/minpower/check_power_test.go (about)

     1  package minpower
     2  
     3  import (
     4  	"context"
     5  	"math/big"
     6  	"os"
     7  	"testing"
     8  
     9  	"github.com/stretchr/testify/assert"
    10  )
    11  
    12  type TestCase struct {
    13  	in   string
    14  	want bool
    15  }
    16  
    17  func TestMinPower(t *testing.T) {
    18  	min, ok := new(big.Int).SetString("10995116277760", 10) // 10TiB = 10 * 1024^4
    19  	assert.True(t, ok)
    20  
    21  	minerID := os.Getenv("MINER_ID")
    22  
    23  	cases := make([]TestCase, 0)
    24  	if minerID == "" {
    25  		cases = append(cases, TestCase{"f01000", false})
    26  		cases = append(cases, TestCase{"f02620", true})
    27  	} else {
    28  		cases = append(cases, TestCase{minerID, true})
    29  	}
    30  	for _, c := range cases {
    31  		ok, err := MinQualityPowerOk(context.Background(), c.in, min)
    32  		assert.Equal(t, c.want, ok)
    33  		assert.Nil(t, err)
    34  	}
    35  }