Skip to content

Commit b4691cb

Browse files
committed
common: Add tests for equipment & players
1 parent 64d7f0b commit b4691cb

File tree

4 files changed

+150
-7
lines changed

4 files changed

+150
-7
lines changed

Gopkg.lock

Lines changed: 59 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Gopkg.toml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,3 +48,7 @@
4848
[prune]
4949
go-tests = true
5050
unused-packages = true
51+
52+
[[constraint]]
53+
name = "github.com/stretchr/testify"
54+
version = "1.2.2"

common/equipment_test.go

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
package common
2+
3+
import (
4+
"testing"
5+
6+
assert "github.com/stretchr/testify/assert"
7+
)
8+
9+
func TestEquipmentElementClass(t *testing.T) {
10+
assert.Equal(t, EqClassUnknown, EqUnknown.Class(), "EqUnknown should have the class EqClassUnknown")
11+
assert.Equal(t, EqClassPistols, EqP2000.Class(), "EqP2000 should have the class EqClassPistols")
12+
assert.Equal(t, EqClassPistols, EqRevolver.Class(), "EqRevolver should have the class EqClassPistols")
13+
assert.Equal(t, EqClassRifle, EqG3SG1.Class(), "EqG3SG1 should have the class EqClassRifle")
14+
}
15+
16+
func TestEquipmentClass(t *testing.T) {
17+
assert.Equal(t, EqClassUnknown, NewEquipment(EqUnknown).Class(), "EqUnknown should have the class EqClassUnknown")
18+
assert.Equal(t, EqClassPistols, NewEquipment(EqP2000).Class(), "EqP2000 should have the class EqClassPistols")
19+
assert.Equal(t, EqClassPistols, NewEquipment(EqRevolver).Class(), "EqRevolver should have the class EqClassPistols")
20+
assert.Equal(t, EqClassRifle, NewEquipment(EqG3SG1).Class(), "EqG3SG1 should have the class EqClassRifle")
21+
}
22+
23+
func TestMapEquipment(t *testing.T) {
24+
assert.Equal(t, EqKnife, MapEquipment("weapon_bayonet"), "'weapon_bayonet' should be mapped to EqKnife")
25+
assert.Equal(t, EqKnife, MapEquipment("weapon_knife_butterfly"), "'weapon_knife_butterfly' should be mapped to EqKnife")
26+
assert.Equal(t, EqM4A4, MapEquipment("weapon_m4a1"), "'weapon_m4a1' should be mapped to EqM4A4") // This is correct, weapon_m4a1 == M4A4
27+
assert.Equal(t, EqM4A1, MapEquipment("weapon_m4a1_silencer"), "'weapon_m4a1_silencer' should be mapped to EqM4A1")
28+
assert.Equal(t, EqUnknown, MapEquipment("asdf"), "'asdf' should be mapped to EqUnknown")
29+
}
30+
31+
func TestEquipmentUniqueID(t *testing.T) {
32+
assert.NotEqual(t, NewEquipment(EqAK47).UniqueID(), NewEquipment(EqAK47).UniqueID(), "UniqueIDs of different equipment instances should be different")
33+
}
34+
35+
func TestEquipmentName(t *testing.T) {
36+
assert.Equal(t, "Dual Barettas", EqDualBarettas.String(), "EqDualBarettas should be named correctly")
37+
}

common/player_test.go

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
package common
2+
3+
import (
4+
"testing"
5+
6+
assert "github.com/stretchr/testify/assert"
7+
)
8+
9+
func TestPlayerActiveWeapon(t *testing.T) {
10+
knife := NewEquipment(EqKnife)
11+
glock := NewEquipment(EqGlock)
12+
ak47 := NewEquipment(EqAK47)
13+
14+
pl := NewPlayer()
15+
pl.RawWeapons[1] = &knife
16+
pl.RawWeapons[2] = &glock
17+
pl.RawWeapons[3] = &ak47
18+
pl.ActiveWeaponID = 3
19+
20+
assert.Equal(t, &ak47, pl.ActiveWeapon(), "Should have AK-47 equipped")
21+
}
22+
func TestPlayerWeapons(t *testing.T) {
23+
knife := NewEquipment(EqKnife)
24+
glock := NewEquipment(EqGlock)
25+
ak47 := NewEquipment(EqAK47)
26+
27+
pl := NewPlayer()
28+
pl.RawWeapons[1] = &knife
29+
pl.RawWeapons[2] = &glock
30+
pl.RawWeapons[3] = &ak47
31+
32+
expected := []*Equipment{&knife, &glock, &ak47}
33+
assert.ElementsMatch(t, expected, pl.Weapons(), "Should have expected weapons")
34+
}
35+
36+
func TestPlayerAlive(t *testing.T) {
37+
pl := NewPlayer()
38+
39+
pl.Hp = 100
40+
assert.Equal(t, true, pl.IsAlive(), "Should be alive")
41+
42+
pl.Hp = 1
43+
assert.Equal(t, true, pl.IsAlive(), "Should be alive")
44+
45+
pl.Hp = 0
46+
assert.Equal(t, false, pl.IsAlive(), "Should be dead")
47+
48+
pl.Hp = -10
49+
assert.Equal(t, false, pl.IsAlive(), "Should be dead")
50+
}

0 commit comments

Comments
 (0)