Files
tidb/br/pkg/utils/math_test.go
2021-08-06 00:17:12 +08:00

49 lines
1.3 KiB
Go

// Copyright 2020 PingCAP, Inc. Licensed under Apache-2.0.
package utils
import (
. "github.com/pingcap/check"
)
type testMathSuite struct{}
var _ = Suite(&testMathSuite{})
func (*testMathSuite) TestMinInt(c *C) {
c.Assert(MinInt(1, 2), Equals, 1)
c.Assert(MinInt(2, 1), Equals, 1)
c.Assert(MinInt(4, 2, 1, 3), Equals, 1)
c.Assert(MinInt(1, 1), Equals, 1)
}
func (*testMathSuite) TestMaxInt(c *C) {
c.Assert(MaxInt(1, 2), Equals, 2)
c.Assert(MaxInt(2, 1), Equals, 2)
c.Assert(MaxInt(4, 2, 1, 3), Equals, 4)
c.Assert(MaxInt(1, 1), Equals, 1)
}
func (*testMathSuite) TestClampInt(c *C) {
c.Assert(ClampInt(100, 1, 3), Equals, 3)
c.Assert(ClampInt(2, 1, 3), Equals, 2)
c.Assert(ClampInt(0, 1, 3), Equals, 1)
c.Assert(ClampInt(0, 1, 1), Equals, 1)
c.Assert(ClampInt(100, 1, 1), Equals, 1)
}
func (*testMathSuite) TestMinInt64(c *C) {
c.Assert(MinInt(1, 2), Equals, 1)
c.Assert(MinInt(2, 1), Equals, 1)
c.Assert(MinInt(4, 2, 1, 3), Equals, 1)
c.Assert(MinInt(1, 1), Equals, 1)
}
func (*testMathSuite) TestNextPowerOfTwo(c *C) {
c.Assert(NextPowerOfTwo(1), Equals, int64(1))
c.Assert(NextPowerOfTwo(3), Equals, int64(4))
c.Assert(NextPowerOfTwo(255), Equals, int64(256))
c.Assert(NextPowerOfTwo(1024), Equals, int64(1024))
c.Assert(NextPowerOfTwo(0xabcd1234), Equals, int64(0x100000000))
}