Skip to content

Commit

Permalink
[FEATURE] Add methods for uints (#127)
Browse files Browse the repository at this point in the history
Fixes #125

Signed-off-by: Jonathan Schweder <jonathanschweder@amazon.com>
  • Loading branch information
jaswdr committed Dec 25, 2022
1 parent 062deca commit cfcb392
Show file tree
Hide file tree
Showing 2 changed files with 93 additions and 6 deletions.
41 changes: 38 additions & 3 deletions faker.go
Expand Up @@ -173,16 +173,51 @@ func (f Faker) IntBetween(min, max int) int {
return f.Generator.Intn(diff+1) + min
}

// Int64Between returns a fake Int64 between a given minimum and maximum values for Faker
func (f Faker) Int64Between(min, max int64) int64 {
return int64(f.IntBetween(int(min), int(max)))
// Int8Between returns a fake Int8 between a given minimum and maximum values for Faker
func (f Faker) Int8Between(min, max int8) int8 {
return int8(f.IntBetween(int(min), int(max)))
}

// Int16Between returns a fake Int16 between a given minimum and maximum values for Faker
func (f Faker) Int16Between(min, max int16) int16 {
return int16(f.IntBetween(int(min), int(max)))
}

// Int32Between returns a fake Int32 between a given minimum and maximum values for Faker
func (f Faker) Int32Between(min, max int32) int32 {
return int32(f.IntBetween(int(min), int(max)))
}

// Int64Between returns a fake Int64 between a given minimum and maximum values for Faker
func (f Faker) Int64Between(min, max int64) int64 {
return int64(f.IntBetween(int(min), int(max)))
}

// UIntBetween returns a fake UInt between a given minimum and maximum values for Faker
func (f Faker) UIntBetween(min, max uint) uint {
return uint(f.IntBetween(int(min), int(max)))
}

// UInt8Between returns a fake UInt8 between a given minimum and maximum values for Faker
func (f Faker) UInt8Between(min, max int8) uint8 {
return uint8(f.IntBetween(int(min), int(max)))
}

// UInt16Between returns a fake UInt16 between a given minimum and maximum values for Faker
func (f Faker) UInt16Between(min, max int16) uint16 {
return uint16(f.IntBetween(int(min), int(max)))
}

// UInt32Between returns a fake UInt32 between a given minimum and maximum values for Faker
func (f Faker) UInt32Between(min, max uint32) uint32 {
return uint32(f.IntBetween(int(min), int(max)))
}

// UInt64Between returns a fake UInt64 between a given minimum and maximum values for Faker
func (f Faker) UInt64Between(min, max uint64) uint64 {
return uint64(f.IntBetween(int(min), int(max)))
}

// Letter returns a fake single letter for Faker
func (f Faker) Letter() string {
return f.RandomLetter()
Expand Down
58 changes: 55 additions & 3 deletions faker_test.go
Expand Up @@ -118,10 +118,16 @@ func TestInt(t *testing.T) {
Expect(t, fmt.Sprintf("%T", value), "int")
}

func TestInt64(t *testing.T) {
func TestInt8(t *testing.T) {
f := New()
value := f.Int64()
Expect(t, fmt.Sprintf("%T", value), "int64")
value := f.Int8()
Expect(t, fmt.Sprintf("%T", value), "int8")
}

func TestInt16(t *testing.T) {
f := New()
value := f.Int16()
Expect(t, fmt.Sprintf("%T", value), "int16")
}

func TestInt32(t *testing.T) {
Expand All @@ -130,6 +136,12 @@ func TestInt32(t *testing.T) {
Expect(t, fmt.Sprintf("%T", value), "int32")
}

func TestInt64(t *testing.T) {
f := New()
value := f.Int64()
Expect(t, fmt.Sprintf("%T", value), "int64")
}

func TestIntBetween(t *testing.T) {
f := New()
value := f.IntBetween(1, 100)
Expand Down Expand Up @@ -216,6 +228,46 @@ func TestUint64(t *testing.T) {
Expect(t, fmt.Sprintf("%T", value), "uint64")
}

func TestUIntBetween(t *testing.T) {
f := New()
value := f.UIntBetween(1, 100)
Expect(t, fmt.Sprintf("%T", value), "uint")
Expect(t, true, value >= 1)
Expect(t, true, value <= 100)
}

func TestUInt8Between(t *testing.T) {
f := New()
value := f.UInt8Between(1, 100)
Expect(t, fmt.Sprintf("%T", value), "uint8")
Expect(t, true, value >= 1)
Expect(t, true, value <= 100)
}

func TestUInt16Between(t *testing.T) {
f := New()
value := f.UInt16Between(1, 100)
Expect(t, fmt.Sprintf("%T", value), "uint16")
Expect(t, true, value >= 1)
Expect(t, true, value <= 100)
}

func TestUInt32Between(t *testing.T) {
f := New()
value := f.UInt32Between(1, 100)
Expect(t, fmt.Sprintf("%T", value), "uint32")
Expect(t, true, value >= 1)
Expect(t, true, value <= 100)
}

func TestUInt64Between(t *testing.T) {
f := New()
value := f.UInt64Between(1, 100)
Expect(t, fmt.Sprintf("%T", value), "uint64")
Expect(t, true, value >= 1)
Expect(t, true, value <= 100)
}

func TestRandomFloat(t *testing.T) {
f := New()
value := f.RandomFloat(1, 1, 100)
Expand Down

0 comments on commit cfcb392

Please sign in to comment.