tests: produce on planets, unload on routes

This commit is contained in:
Ilia Denisov
2026-01-23 00:28:23 +02:00
parent 9825e05c0e
commit 812e0d4afd
15 changed files with 522 additions and 103 deletions
+35
View File
@@ -4,7 +4,9 @@ import (
"testing"
"github.com/google/uuid"
"github.com/iliadenisov/galaxy/internal/controller"
e "github.com/iliadenisov/galaxy/internal/error"
"github.com/iliadenisov/galaxy/internal/model/game"
"github.com/stretchr/testify/assert"
)
@@ -97,3 +99,36 @@ func TestDeleteScience(t *testing.T) {
g.DeleteScience(Race_0.Name, second),
e.GenericErrorText(e.ErrDeleteSciencePlanetProduction))
}
func TestResearchTech(t *testing.T) {
r := Race_0
rr := &r
assert.Equal(t, 1.1, rr.Tech.Value(game.TechDrive))
assert.Equal(t, 1.2, rr.Tech.Value(game.TechWeapons))
assert.Equal(t, 1.3, rr.Tech.Value(game.TechShields))
assert.Equal(t, 1.4, rr.Tech.Value(game.TechCargo))
controller.ResearchTech(rr, 500, 1.0, 0.0, 0.0, 0.0)
assert.InDelta(t, 1.2, rr.Tech.Value(game.TechDrive), 0.000001)
assert.Equal(t, 1.2, rr.Tech.Value(game.TechWeapons))
assert.Equal(t, 1.3, rr.Tech.Value(game.TechShields))
assert.Equal(t, 1.4, rr.Tech.Value(game.TechCargo))
controller.ResearchTech(rr, 500, 0.0, 0.5, 0.0, 0.5)
assert.InDelta(t, 1.2, rr.Tech.Value(game.TechDrive), 0.000001)
assert.Equal(t, 1.25, rr.Tech.Value(game.TechWeapons))
assert.Equal(t, 1.3, rr.Tech.Value(game.TechShields))
assert.Equal(t, 1.45, rr.Tech.Value(game.TechCargo))
controller.ResearchTech(rr, 500, 0.5, 0.0, 0.5, 0.0)
assert.InDelta(t, 1.25, rr.Tech.Value(game.TechDrive), 0.000001)
assert.Equal(t, 1.25, rr.Tech.Value(game.TechWeapons))
assert.Equal(t, 1.35, rr.Tech.Value(game.TechShields))
assert.Equal(t, 1.45, rr.Tech.Value(game.TechCargo))
controller.ResearchTech(rr, 1000, 0.0, 1.0, 0.0, 0.0)
assert.InDelta(t, 1.25, rr.Tech.Value(game.TechDrive), 0.000001)
assert.Equal(t, 1.45, rr.Tech.Value(game.TechWeapons))
assert.Equal(t, 1.35, rr.Tech.Value(game.TechShields))
assert.Equal(t, 1.45, rr.Tech.Value(game.TechCargo))
}