package com.xfestudio.xfeservermanager.infra;
import static org.assertj.core.api.Assertions.assertThat;
import java.util.Map;
import org.junit.jupiter.api.Test;
class ServerManagerRuntimeTest {
@Test
void globalOperationEventOmitsPrivilegedResultFields() {
Object projection = ServerManagerRuntime.publicEventPayload("operation", Map.of(
"id", "operation-1",
"kind", "inventory.update",
"state", "SUCCEEDED",
"progress", 1.0,
"requestId", "private-request",
"targets", java.util.List.of("player"),
"diffs", java.util.List.of(Map.of("before", "diamond", "after", "air")),
"policy", Map.of("rules", "private"),
"result", Map.of("secret", "private")));
assertThat(projection).isEqualTo(Map.of(
"id", "operation-1",
"kind", "inventory.update",
"state", "SUCCEEDED",
"progress", 1.0));
}
@Test
void serverStatusEventsAreNotChanged() {
Map<String, Object> status = Map.of("playersOnline", 3);
assertThat(ServerManagerRuntime.publicEventPayload("server-status", status)).isSameAs(status);
}
@Test
void globalPolicyEventsTriggerARefetchWithoutLeakingDraftMetadata() {
Object projection = ServerManagerRuntime.publicEventPayload("policy-draft", Map.of(
"version", 7,
"name", "secret draft",
"description", "confidential policy rationale",
"updatedBy", "Owner_One"));
assertThat(projection).isEqualTo(Map.of("changed", true));
assertThat(ServerManagerRuntime.publicEventPayload(
"future-private-event", Map.of("secret", "value")))
.isEqualTo(Map.of("redacted", true));
}
}
package com.xfestudio.xfeservermanager.infra;
import static org.assertj.core.api.Assertions.assertThat;
import java.util.Map;
import org.junit.jupiter.api.Test;
class ServerManagerRuntimeTest {
@Test
void globalOperationEventOmitsPrivilegedResultFields() {
Object projection = ServerManagerRuntime.publicEventPayload("operation", Map.of(
"id", "operation-1",
"kind", "inventory.update",
"state", "SUCCEEDED",
"progress", 1.0,
"requestId", "private-request",
"targets", java.util.List.of("player"),
"diffs", java.util.List.of(Map.of("before", "diamond", "after", "air")),
"policy", Map.of("rules", "private"),
"result", Map.of("secret", "private")));
assertThat(projection).isEqualTo(Map.of(
"id", "operation-1",
"kind", "inventory.update",
"state", "SUCCEEDED",
"progress", 1.0));
}
@Test
void serverStatusEventsAreNotChanged() {
Map<String, Object> status = Map.of("playersOnline", 3);
assertThat(ServerManagerRuntime.publicEventPayload("server-status", status)).isSameAs(status);
}
@Test
void globalPolicyEventsTriggerARefetchWithoutLeakingDraftMetadata() {
Object projection = ServerManagerRuntime.publicEventPayload("policy-draft", Map.of(
"version", 7,
"name", "secret draft",
"description", "confidential policy rationale",
"updatedBy", "Owner_One"));
assertThat(projection).isEqualTo(Map.of("changed", true));
assertThat(ServerManagerRuntime.publicEventPayload(
"future-private-event", Map.of("secret", "value")))
.isEqualTo(Map.of("redacted", true));
}
}