tests: produce on planets, unload on routes
This commit is contained in:
@@ -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))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user