private void update(LocalPlayer localPlayer, ApplicableRegionSet set, boolean allowed) { if (!allowed) { storedMessage = set.queryValue(localPlayer, Flags.EXIT_DENY_MESSAGE); exitViaTeleport = set.testState(localPlayer, Flags.EXIT_VIA_TELEPORT); } }
/** * Create a new instance using a list of regions that is known to * already be sorted by priority descending. * * @param regions a list of regions * @param globalRegion a global region * @return an instance */ public static RegionResultSet fromSortedList(List<ProtectedRegion> regions, @Nullable ProtectedRegion globalRegion) { return new RegionResultSet(regions, globalRegion, true); }
@Override @Nullable public <V> V queryValue(@Nullable RegionAssociable subject, Flag<V> flag) { return flagValueCalculator.queryValue(subject, flag); }
@Test public void testGlobalRegionDefaultBuild() { MockApplicableRegionSet mock = new MockApplicableRegionSet(); @SuppressWarnings("unused") ProtectedRegion region = mock.global(); LocalPlayer member = mock.createPlayer(); LocalPlayer nonMember = mock.createPlayer(); ApplicableRegionSet set = mock.getApplicableSet(); assertTrue(set.testState(member, Flags.BUILD)); assertTrue(set.testState(nonMember, Flags.BUILD)); }
@Test public void testQueryValueBuildFlagWildernessAndGlobalRegion() throws Exception { MockApplicableRegionSet mock = new MockApplicableRegionSet(); LocalPlayer nonMember = mock.createPlayer(); ProtectedRegion global = mock.global(); FlagValueCalculator result = mock.getFlagCalculator(); assertThat(result.queryValue(nonMember, Flags.BUILD), is(State.ALLOW)); }
@Test public void testGetMembershipGlobalRegionAndRegion() throws Exception { MockApplicableRegionSet mock = new MockApplicableRegionSet(); ProtectedRegion global = mock.global(); ProtectedRegion region = mock.add(0); LocalPlayer player = mock.createPlayer(); FlagValueCalculator result = mock.getFlagCalculator(); assertThat(result.getMembership(player), is(Result.FAIL)); }
@Before public void setUp() throws Exception { setUpGlobalRegion(); manager = createRegionManager(); setUpPlayers(); setUpCourtyardRegion(); setUpFountainRegion(); setUpNoFireRegion(); }
@Override public final void initialize(LocalPlayer player, Location current, ApplicableRegionSet set) { lastValue = set.queryValue(player, flag); onInitialValue(player, set, lastValue); }
@Before public void setUp() throws Exception { setUpGlobalRegion(); manager = createRegionManager(); setUpPlayers(); setUpEntryRegion(); setUpExitRegion(); }
@Before public void setUp() throws Exception { setUpGlobalRegion(); manager = createRegionManager(); setUpPlayers(); setUpCourtyardRegion(); setUpFountainRegion(); }
@Test public void testGetEffectiveFlagGlobalRegionBuild() throws Exception { MockApplicableRegionSet mock = new MockApplicableRegionSet(); ProtectedRegion global = mock.global(); FlagValueCalculator result = mock.getFlagCalculator(); assertThat(result.getEffectiveFlag(global, Flags.BUILD, null), equalTo(null)); }
@Test public void testGetEffectivePriority() throws Exception { MockApplicableRegionSet mock = new MockApplicableRegionSet(); ProtectedRegion region = mock.add(30); FlagValueCalculator result = mock.getFlagCalculator(); assertThat(result.getPriority(region), is(30)); }
@Test public void testGetEffectivePriorityGlobalRegion() throws Exception { MockApplicableRegionSet mock = new MockApplicableRegionSet(); ProtectedRegion region = mock.global(); FlagValueCalculator result = mock.getFlagCalculator(); assertThat(result.getPriority(region), is(Integer.MIN_VALUE)); }
@Override @Nullable public State queryState(@Nullable RegionAssociable subject, StateFlag... flags) { return flagValueCalculator.queryState(subject, flags); }
@Test public void testGlobalRegionBuildFlagAllow() { MockApplicableRegionSet mock = new MockApplicableRegionSet(); ProtectedRegion region; region = mock.global(); region.setFlag(Flags.BUILD, StateFlag.State.ALLOW); LocalPlayer member = mock.createPlayer(); LocalPlayer nonMember = mock.createPlayer(); ApplicableRegionSet set = mock.getApplicableSet(); assertTrue(set.testState(member, Flags.BUILD)); assertTrue(set.testState(nonMember, Flags.BUILD)); }
@Test public void testQueryValueBuildFlagWilderness() throws Exception { MockApplicableRegionSet mock = new MockApplicableRegionSet(); LocalPlayer nonMember = mock.createPlayer(); FlagValueCalculator result = mock.getFlagCalculator(); assertThat(result.queryValue(nonMember, Flags.BUILD), is(State.ALLOW)); }
public ApplicableRegionSet getApplicableSet() { return new RegionResultSet(regions, global); }
@Test public void testGlobalRegionBuildFlagDeny() { MockApplicableRegionSet mock = new MockApplicableRegionSet(); ProtectedRegion region; region = mock.global(); region.setFlag(Flags.BUILD, StateFlag.State.DENY); LocalPlayer member = mock.createPlayer(); LocalPlayer nonMember = mock.createPlayer(); ApplicableRegionSet set = mock.getApplicableSet(); assertFalse(set.testState(member, Flags.BUILD)); assertFalse(set.testState(nonMember, Flags.BUILD)); }
@Test public void testNoGlobalRegionDefaultBuild() { MockApplicableRegionSet mock = new MockApplicableRegionSet(); LocalPlayer member = mock.createPlayer(); LocalPlayer nonMember = mock.createPlayer(); ApplicableRegionSet set = mock.getApplicableSet(); assertTrue(set.testState(member, Flags.BUILD)); assertTrue(set.testState(nonMember, Flags.BUILD)); }
@Test public void testWildernessBuild() { MockApplicableRegionSet mock = new MockApplicableRegionSet(); LocalPlayer player = mock.createPlayer(); ApplicableRegionSet set = mock.getApplicableSet(); assertThat(set.testState(player, Flags.BUILD), is(true)); }