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) } }