1 package net.pterodactylus.xdcc.ui.stdin;
3 import static java.util.Arrays.asList;
4 import static java.util.Collections.emptyList;
5 import static net.pterodactylus.xdcc.data.Network.builder;
6 import static org.hamcrest.MatcherAssert.assertThat;
7 import static org.hamcrest.Matchers.is;
8 import static org.mockito.Mockito.mock;
9 import static org.mockito.Mockito.when;
11 import java.io.IOException;
12 import java.io.StringWriter;
14 import net.pterodactylus.xdcc.core.Core;
15 import net.pterodactylus.xdcc.data.ConnectedNetwork;
17 import org.junit.Before;
18 import org.junit.Test;
23 * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
25 public class StatsCommandTest {
27 private final Core core = mock(Core.class);
28 private final StatsCommand command =
29 new StatsCommand(core);
32 public void setupCore() {
33 ConnectedNetwork network1 = new ConnectedNetwork(
34 builder("TestNet").build(),
38 asList("#channel1", "#channel2"),
43 ConnectedNetwork network2 = new ConnectedNetwork(
44 builder("DummyNet").build(),
48 asList("#dummy1", "#dummy2"),
49 asList("#foo", "#bar"),
53 when(core.connectedNetworks()).thenReturn(asList(network1, network2));
57 public void extendedStatsDumpContainsTheCorrectData() throws IOException {
58 StringWriter writer = new StringWriter();
59 command.execute(null, emptyList(), writer);
60 String result = writer.toString();
61 assertThat(result, is(
62 "Connected to TestNet via irc.test.net:6667.\n" +
63 " Joined #channel1, #channel2, force-joined #forced.\n" +
64 " 17 bots serving 445 packs.\n" +
65 "Connected to DummyNet via irc.dummy.net:6789.\n" +
66 " Joined #dummy1, #dummy2, force-joined #foo, #bar.\n" +
67 " 65 bots serving 234 packs.\n" +
68 "Total: 82 bots, 679 packs.\n"