forget what i did

This commit is contained in:
Jeffrey Duroyon
2020-05-06 01:23:40 +02:00
parent f982922ef3
commit f00db120f2
6 changed files with 49 additions and 65 deletions

View File

@@ -54,7 +54,7 @@ func (h *Hamster) Die() {
func (h *Hamster) Grow() {
if h.Age >= MaxAge {
if randNumber(h.Age-MaxAge,365) > 364 {
if randNumber(h.Age-MaxAge, 365) > 364 {
h.Die()
return
}
@@ -82,11 +82,11 @@ func (h *Hamster) Fuck(another *Hamster) (bool, error) {
rand := randNumber(1, 100)
if rand <= GestationLuck {
female,male := func() (*Hamster,*Hamster) {
female, male := func() (*Hamster, *Hamster) {
if h.Sexe == FEMALE {
return h,another
return h, another
} else {
return another,h
return another, h
}
}()
female.GestationFather = male

View File

@@ -41,85 +41,85 @@ func TestHamster_Die(t *testing.T) {
func TestHamster_Grow(t *testing.T) {
testCases := []struct {
caseName string
hamster *Hamster
caseName string
hamster *Hamster
expectedHamster *Hamster
}{
{
caseName: "Age increment",
hamster: &Hamster{
Age: 0,
Age: 0,
Alive: true,
},
expectedHamster: &Hamster{
Age: 1,
Age: 1,
Alive: true,
},
},
{
caseName: "Gestation decrement",
hamster: &Hamster{
Age: 0,
Gestation: true,
Age: 0,
Gestation: true,
GestationPeriod: 1,
Alive: true,
Alive: true,
},
expectedHamster: &Hamster{
Age: 1,
Gestation: true,
Age: 1,
Gestation: true,
GestationPeriod: 2,
Alive: true,
Alive: true,
},
},
{
caseName: "Gestation Cooldown doesn't decrement",
hamster: &Hamster{
Age: 0,
Gestation: true,
Age: 0,
Gestation: true,
GestationCooldown: 17,
GestationPeriod: 1,
Alive: true,
GestationPeriod: 1,
Alive: true,
},
expectedHamster: &Hamster{
Age: 1,
Age: 1,
GestationCooldown: 17,
Gestation: true,
GestationPeriod: 2,
Alive: true,
Gestation: true,
GestationPeriod: 2,
Alive: true,
},
},
{
caseName: "Gestation Cooldown decrement",
hamster: &Hamster{
Age: 0,
Gestation: false,
Age: 0,
Gestation: false,
GestationCooldown: 17,
GestationPeriod: 0,
Alive: true,
GestationPeriod: 0,
Alive: true,
},
expectedHamster: &Hamster{
Age: 1,
Age: 1,
GestationCooldown: 16,
Gestation: false,
GestationPeriod: 0,
Alive: true,
Gestation: false,
GestationPeriod: 0,
Alive: true,
},
},
{
caseName: "Hamster die",
hamster: &Hamster{
Age: 365*3,
Gestation: false,
Age: 365 * 3,
Gestation: false,
GestationCooldown: 17,
GestationPeriod: 0,
Alive: true,
GestationPeriod: 0,
Alive: true,
},
expectedHamster: &Hamster{
Age: 365*3,
Alive:false,
Age: 365 * 3,
Alive: false,
GestationCooldown: 17,
Gestation: false,
GestationPeriod: 0,
Gestation: false,
GestationPeriod: 0,
},
},
}
@@ -130,7 +130,7 @@ func TestHamster_Grow(t *testing.T) {
randomizer.FakeRandomizer(364)
}
tc.hamster.Grow()
if !reflect.DeepEqual(tc.hamster,tc.expectedHamster) {
if !reflect.DeepEqual(tc.hamster, tc.expectedHamster) {
t.Errorf("Got %v expect %v", tc.hamster, tc.expectedHamster)
}
})