Fixes #473, catches outdated player names and checks if all entries are UUIDs before converted and thus prevents the server crashing.

Split off logic into single responsibilities for storing, initializing and matching the UUID mappings. Added JUnit to create tests for the UUID Matcher to see if its legit. It tests against simple problems like unconform UUIDs and also tests against a valid UUID.
This commit is contained in:
thatsIch
2014-11-23 13:16:50 +01:00
parent cdfd886fd2
commit 7a06a8bc06
6 changed files with 423 additions and 140 deletions
@@ -0,0 +1,61 @@
/*
* This file is part of Applied Energistics 2.
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
*
* Applied Energistics 2 is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Applied Energistics 2 is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
*/
package appeng.util;
import org.junit.Test;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
/**
* Tests for {@link UUIDMatcher}
*/
public class UUIDMatcherTest
{
private static final String isUUID = "03ba29a1-d6bd-32ba-90b2-375e4d65abc9";
private static final String noUUID = "no";
private static final String invalidUUID = "g3ba29a1-d6bd-32ba-90b2-375e4d65abc9";
private final UUIDMatcher matcher;
public UUIDMatcherTest()
{
this.matcher = new UUIDMatcher();
}
@Test
public void testUUID_shouldPass()
{
assertTrue( this.matcher.isUUID( isUUID ) );
}
@Test
public void testNoUUD_shouldPass()
{
assertFalse( this.matcher.isUUID( noUUID ) );
}
@Test
public void testInvalidUUID_shouldPass()
{
assertFalse( this.matcher.isUUID( invalidUUID ) );
}
}