mirror of
https://github.com/plan-player-analytics/Plan.git
synced 2024-12-28 12:07:35 +01:00
Re-implemented GraphTest.
This commit is contained in:
parent
3d6472343c
commit
1de2723662
@ -15,8 +15,7 @@ import com.djrapitops.plugin.command.ISender;
|
|||||||
import com.djrapitops.plugin.command.SubCommand;
|
import com.djrapitops.plugin.command.SubCommand;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This manage subcommand is used to swap to a different database and reload the
|
* This manage SubCommand is used to request settings from Bungee so that connection can be established.
|
||||||
* plugin if the connection to the new database can be established.
|
|
||||||
*
|
*
|
||||||
* @author Rsl1122
|
* @author Rsl1122
|
||||||
* @since 2.3.0
|
* @since 2.3.0
|
||||||
|
@ -1,57 +1,37 @@
|
|||||||
/*
|
/*
|
||||||
* Licence is provided in the jar as license.yml also here:
|
* Licence is provided in the jar as license.yml also here:
|
||||||
* https://github.com/Rsl1122/Plan-PlayerAnalytics/blob/master/Plan/src/main/resources/license.yml
|
* https://github.com/Rsl1122/Plan-PlayerAnalytics/blob/master/Plan/src/main/resources/license.yml
|
||||||
*/
|
*/
|
||||||
package com.djrapitops.plan.ui.graphs;
|
package com.djrapitops.plan.ui.graphs;
|
||||||
|
|
||||||
import com.djrapitops.plan.data.container.Session;
|
|
||||||
import com.djrapitops.plan.data.container.TPS;
|
import com.djrapitops.plan.data.container.TPS;
|
||||||
import com.djrapitops.plan.data.time.WorldTimes;
|
|
||||||
import com.djrapitops.plan.utilities.analysis.Point;
|
|
||||||
import com.djrapitops.plan.utilities.html.graphs.line.*;
|
import com.djrapitops.plan.utilities.html.graphs.line.*;
|
||||||
import org.bukkit.plugin.java.JavaPlugin;
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Ignore;
|
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
import org.powermock.core.classloader.annotations.PrepareForTest;
|
|
||||||
import org.powermock.modules.junit4.PowerMockRunner;
|
|
||||||
import test.utilities.RandomData;
|
|
||||||
import test.utilities.TestInit;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Stack;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertTrue;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Fuzzlemann
|
* Tests various Graphs.
|
||||||
|
*
|
||||||
|
* @author Rsl1122
|
||||||
*/
|
*/
|
||||||
@RunWith(PowerMockRunner.class)
|
|
||||||
@PrepareForTest({JavaPlugin.class})
|
|
||||||
public class GraphTest {
|
public class GraphTest {
|
||||||
|
|
||||||
private final List<TPS> tpsList = new ArrayList<>();
|
private final List<TPS> tpsList = new ArrayList<>();
|
||||||
private final List<Session> sessionList = new ArrayList<>();
|
|
||||||
private final Map<String, Integer> geoList = new HashMap<>();
|
|
||||||
private final WorldTimes worldTimes = new WorldTimes("WORLD", "SURVIVAL");
|
|
||||||
|
|
||||||
private List<Point> points = new ArrayList<>();
|
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp() throws Exception {
|
public void setUp() {
|
||||||
TestInit t = TestInit.init();
|
|
||||||
for (int i = 0; i < 10; i++) {
|
for (int i = 0; i < 10; i++) {
|
||||||
tpsList.add(new TPS(i, i, i, i, i, i, i));
|
tpsList.add(new TPS(i, i, i, i, i, i, i));
|
||||||
sessionList.add(new Session(i, (long) i, (long) i, i, i));
|
|
||||||
geoList.put(String.valueOf(i), i);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
points = RandomData.randomPoints();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Ignore("Test should use Stack instead")
|
|
||||||
public void testLineGraphsForBracketErrors() {
|
public void testLineGraphsForBracketErrors() {
|
||||||
AbstractLineGraph[] graphs = new AbstractLineGraph[]{
|
AbstractLineGraph[] graphs = new AbstractLineGraph[]{
|
||||||
new CPUGraph(tpsList),
|
new CPUGraph(tpsList),
|
||||||
@ -63,8 +43,41 @@ public class GraphTest {
|
|||||||
};
|
};
|
||||||
|
|
||||||
for (AbstractLineGraph graph : graphs) {
|
for (AbstractLineGraph graph : graphs) {
|
||||||
|
System.out.print("Bracket Test: " + graph.getClass().getSimpleName() + " | ");
|
||||||
String series = graph.toHighChartsSeries();
|
String series = graph.toHighChartsSeries();
|
||||||
// TODO Use Stack instead.
|
|
||||||
|
System.out.println(series);
|
||||||
|
|
||||||
|
char[] chars = series.toCharArray();
|
||||||
|
assertBracketMatch(chars);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void assertBracketMatch(char[] chars) {
|
||||||
|
Stack<Character> bracketStack = new Stack<>();
|
||||||
|
for (int i = 0; i < chars.length; i++) {
|
||||||
|
char c = chars[i];
|
||||||
|
switch (c) {
|
||||||
|
case '{':
|
||||||
|
case '[':
|
||||||
|
case '(':
|
||||||
|
bracketStack.push(c);
|
||||||
|
break;
|
||||||
|
case ')':
|
||||||
|
Character pop = bracketStack.pop();
|
||||||
|
assertTrue("Bracket mismatch at char: " + i + " Expected (, got " + pop, '(' == pop);
|
||||||
|
break;
|
||||||
|
case ']':
|
||||||
|
Character pop1 = bracketStack.pop();
|
||||||
|
assertTrue("Bracket mismatch at char: " + i + " Expected [, got " + pop1, '[' == pop1);
|
||||||
|
break;
|
||||||
|
case '}':
|
||||||
|
Character pop2 = bracketStack.pop();
|
||||||
|
assertTrue("Bracket mismatch at char: " + i + " Expected {, got " + pop2, '{' == pop2);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user