test: unknown and extict races for commands

This commit is contained in:
Ilia Denisov
2026-02-08 14:57:38 +02:00
parent c36857e702
commit 175fb98c3a
17 changed files with 292 additions and 63 deletions
+33 -8
View File
@@ -36,7 +36,7 @@ func TestCreateShips(t *testing.T) {
}
func TestJoinEqualGroups(t *testing.T) {
c, _ := newCache()
c, g := newCache()
assert.NoError(t, c.CreateShips(Race_0_idx, Race_0_Freighter, R0_Planet_0_num, 1)) // 1 -> 2
assert.NoError(t, c.CreateShips(Race_1_idx, Race_1_Freighter, R1_Planet_1_num, 1))
@@ -57,7 +57,14 @@ func TestJoinEqualGroups(t *testing.T) {
assert.NoError(t, c.CreateShips(1, Race_1_Freighter, R1_Planet_1_num, 1))
assert.Len(t, slices.Collect(c.RaceShipGroups(Race_1_idx)), 3)
c.JoinEqualGroups(Race_0_idx)
assert.ErrorContains(t,
g.JoinEqualGroups(UnknownRace),
e.GenericErrorText(e.ErrInputUnknownRace))
assert.ErrorContains(t,
g.JoinEqualGroups(Race_Extinct.Name),
e.GenericErrorText(e.ErrRaceExinct))
assert.NoError(t, g.JoinEqualGroups(Race_0.Name))
assert.Len(t, slices.Collect(c.RaceShipGroups(Race_1_idx)), 3)
assert.Len(t, slices.Collect(c.RaceShipGroups(Race_0_idx)), 4)
@@ -104,8 +111,11 @@ func TestBreakGroup(t *testing.T) {
assert.NoError(t, g.JoinShipGroupToFleet(Race_0.Name, fleet, 1, 0))
assert.ErrorContains(t,
g.BreakGroup("UnknownRace", 1, 0),
g.BreakGroup(UnknownRace, 1, 0),
e.GenericErrorText(e.ErrInputUnknownRace))
assert.ErrorContains(t,
g.BreakGroup(Race_Extinct.Name, 1, 0),
e.GenericErrorText(e.ErrRaceExinct))
assert.ErrorContains(t,
g.BreakGroup(Race_0.Name, 555, 0),
e.GenericErrorText(e.ErrInputEntityNotExists))
@@ -179,11 +189,17 @@ func TestTransferGroup(t *testing.T) {
assert.Len(t, slices.Collect(c.RaceShipGroups(Race_1_idx)), 1)
assert.ErrorContains(t,
g.TransferGroup("UnknownRace", Race_1.Name, 2, 0),
g.TransferGroup(UnknownRace, Race_1.Name, 2, 0),
e.GenericErrorText(e.ErrInputUnknownRace))
assert.ErrorContains(t,
g.TransferGroup(Race_0.Name, "UnknownRace", 2, 0),
g.TransferGroup(Race_0.Name, UnknownRace, 2, 0),
e.GenericErrorText(e.ErrInputUnknownRace))
assert.ErrorContains(t,
g.TransferGroup(Race_0.Name, Race_Extinct.Name, 2, 0),
e.GenericErrorText(e.ErrRaceExinct))
assert.ErrorContains(t,
g.TransferGroup(Race_Extinct.Name, Race_1.Name, 2, 0),
e.GenericErrorText(e.ErrRaceExinct))
assert.ErrorContains(t,
g.TransferGroup(Race_0.Name, Race_0.Name, 2, 0),
e.GenericErrorText(e.ErrInputSameRace))
@@ -273,8 +289,11 @@ func TestLoadCargo(t *testing.T) {
// tests
assert.ErrorContains(t,
g.LoadCargo("UnknownRace", 1, game.CargoMaterial.String(), 0, 0),
g.LoadCargo(UnknownRace, 1, game.CargoMaterial.String(), 0, 0),
e.GenericErrorText(e.ErrInputUnknownRace))
assert.ErrorContains(t,
g.LoadCargo(Race_Extinct.Name, 1, game.CargoMaterial.String(), 0, 0),
e.GenericErrorText(e.ErrRaceExinct))
assert.ErrorContains(t,
g.LoadCargo(Race_0.Name, 1, "GOLD", 0, 0),
e.GenericErrorText(e.ErrInputCargoTypeInvalid))
@@ -401,8 +420,11 @@ func TestUnloadCargo(t *testing.T) {
// tests
assert.ErrorContains(t,
g.UnloadCargo("UnknownRace", 1, 0, 0),
g.UnloadCargo(UnknownRace, 1, 0, 0),
e.GenericErrorText(e.ErrInputUnknownRace))
assert.ErrorContains(t,
g.UnloadCargo(Race_Extinct.Name, 1, 0, 0),
e.GenericErrorText(e.ErrRaceExinct))
assert.ErrorContains(t,
g.UnloadCargo(Race_0.Name, 555, 0, 0),
e.GenericErrorText(e.ErrInputEntityNotExists))
@@ -495,8 +517,11 @@ func TestDisassembleGroup(t *testing.T) {
// tests
assert.ErrorContains(t,
g.DisassembleGroup("UnknownRace", 1, 0),
g.DisassembleGroup(UnknownRace, 1, 0),
e.GenericErrorText(e.ErrInputUnknownRace))
assert.ErrorContains(t,
g.DisassembleGroup(Race_Extinct.Name, 1, 0),
e.GenericErrorText(e.ErrRaceExinct))
assert.ErrorContains(t,
g.DisassembleGroup(Race_0.Name, 555, 0),
e.GenericErrorText(e.ErrInputEntityNotExists))