pkg.re/essentialkaos/ek.10@v12.41.0+incompatible/rand/rand_test.go (about)

     1  package rand
     2  
     3  // ////////////////////////////////////////////////////////////////////////////////// //
     4  //                                                                                    //
     5  //                         Copyright (c) 2022 ESSENTIAL KAOS                          //
     6  //      Apache License, Version 2.0 <https://www.apache.org/licenses/LICENSE-2.0>     //
     7  //                                                                                    //
     8  // ////////////////////////////////////////////////////////////////////////////////// //
     9  
    10  import (
    11  	"strings"
    12  	"testing"
    13  
    14  	. "pkg.re/essentialkaos/check.v1"
    15  )
    16  
    17  // ////////////////////////////////////////////////////////////////////////////////// //
    18  
    19  func Test(t *testing.T) { TestingT(t) }
    20  
    21  type RandSuite struct{}
    22  
    23  // ////////////////////////////////////////////////////////////////////////////////// //
    24  
    25  var _ = Suite(&RandSuite{})
    26  
    27  // ////////////////////////////////////////////////////////////////////////////////// //
    28  
    29  func (s *RandSuite) TestString(c *C) {
    30  	c.Assert(len(String(100)), Equals, 100)
    31  	c.Assert(len(String(1)), Equals, 1)
    32  	c.Assert(len(String(0)), Equals, 0)
    33  	c.Assert(len(String(-100)), Equals, 0)
    34  }
    35  
    36  func (s *RandSuite) TestInt(c *C) {
    37  	n := 1000
    38  	k := 0
    39  
    40  	for i := 0; i < 1000; i++ {
    41  		k += Int(n)
    42  	}
    43  
    44  	c.Assert(k/n, Not(Equals), n)
    45  }
    46  
    47  func (s *RandSuite) TestSlice(c *C) {
    48  	t1 := strings.Join(Slice(256), "")
    49  	t2 := strings.Join(Slice(256), "")
    50  
    51  	c.Assert(t1, Not(Equals), t2)
    52  	c.Assert(Slice(0), HasLen, 0)
    53  }