zlh-agent/internal/provision/provision_test.go
2026-04-18 21:18:26 +00:00

53 lines
1.3 KiB
Go

package provision
import (
"testing"
"zlh-agent/internal/state"
)
func TestNormalizeMinecraftConfigVanillaUsesFabricProfile(t *testing.T) {
cfg := &state.Config{
ContainerType: "game",
Game: "minecraft",
Variant: "vanilla",
Version: "1.21.1",
}
normalizeMinecraftConfig(cfg)
if cfg.Runtime != "fabric" {
t.Fatalf("Runtime = %q, want fabric", cfg.Runtime)
}
if cfg.InternalProfile != "vanilla-fabric" {
t.Fatalf("InternalProfile = %q, want vanilla-fabric", cfg.InternalProfile)
}
if cfg.ArtifactPath != "minecraft/fabric/1.21.1/server.jar" {
t.Fatalf("ArtifactPath = %q", cfg.ArtifactPath)
}
}
func TestNormalizeMinecraftConfigFabricUsesFabricArtifactOnly(t *testing.T) {
cfg := &state.Config{
ContainerType: "game",
Game: "minecraft",
Variant: "fabric",
Version: "1.21.1",
Runtime: "vanilla",
InternalProfile: "vanilla-fabric",
ArtifactPath: "bad/path/server.jar",
}
normalizeMinecraftConfig(cfg)
if cfg.Runtime != "fabric" {
t.Fatalf("Runtime = %q, want fabric", cfg.Runtime)
}
if cfg.InternalProfile != "" {
t.Fatalf("InternalProfile = %q, want empty", cfg.InternalProfile)
}
if cfg.ArtifactPath != "minecraft/fabric/1.21.1/server.jar" {
t.Fatalf("ArtifactPath = %q", cfg.ArtifactPath)
}
}