Update Upstream

9516002 Register platforms and commands in a more proper way (1766)
This commit is contained in:
NotMyFault
2021-06-05 10:27:38 +02:00
parent f139088b6e
commit d1af6c38e7
21 changed files with 858 additions and 81 deletions

View File

@ -21,10 +21,17 @@ package com.sk89q.worldedit.internal.expression;
import com.sk89q.worldedit.LocalConfiguration;
import com.sk89q.worldedit.WorldEdit;
import com.sk89q.worldedit.event.platform.PlatformsRegisteredEvent;
import com.sk89q.worldedit.extension.platform.Capability;
import com.sk89q.worldedit.extension.platform.Platform;
import com.sk89q.worldedit.extension.platform.Preference;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@ -42,12 +49,17 @@ class BaseExpressionTest {
@BeforeEach
void setup() {
when(mockPlat.getCapabilities()).thenReturn(
Stream.of(Capability.values())
.collect(Collectors.toMap(Function.identity(), __ -> Preference.NORMAL))
);
when(mockPlat.getConfiguration()).thenReturn(new LocalConfiguration() {
@Override
public void load() {
}
});
WorldEdit.getInstance().getPlatformManager().register(mockPlat);
WorldEdit.getInstance().getEventBus().post(new PlatformsRegisteredEvent());
WorldEdit.getInstance().getConfiguration().calculationTimeout = 1_000;
}

View File

@ -30,12 +30,13 @@ class BlockMapTest {
static void setupFakePlatform() {
when(MOCKED_PLATFORM.getRegistries()).thenReturn(new BundledRegistries() {
});
when(MOCKED_PLATFORM.getCapabilities()).thenReturn(ImmutableMap.of(
Capability.WORLD_EDITING, Preference.PREFERRED,
Capability.GAME_HOOKS, Preference.PREFERRED
));
when(MOCKED_PLATFORM.getCapabilities()).thenReturn(
Stream.of(Capability.values())
.collect(Collectors.toMap(Function.identity(), __ -> Preference.NORMAL))
);
PlatformManager platformManager = WorldEdit.getInstance().getPlatformManager();
platformManager.register(MOCKED_PLATFORM);
WorldEdit.getInstance().getEventBus().post(new PlatformsRegisteredEvent());
registerBlock("minecraft:air");
registerBlock("minecraft:oak_wood");