예제 #1
0
  public void testExistingCommand() throws UnsupportedCommandException, BadCommandException {
    ProtocolProviderServiceIrcImpl provider =
        EasyMock.createMock(ProtocolProviderServiceIrcImpl.class);
    IrcConnection connection = EasyMock.createMock(IrcConnection.class);
    EasyMock.replay(provider, connection);

    CommandFactory.registerCommand("test", Test.class);
    try {
      CommandFactory factory = new CommandFactory(provider, connection);
      Command cmd = factory.createCommand("test");
      Assert.assertNotNull(cmd);
      Assert.assertTrue(cmd instanceof Test);
    } finally {
      CommandFactory.unregisterCommand(Test.class, null);
    }
  }
예제 #2
0
  public void testUnregisterMultipleAmongOtherTypes() {
    Command anotherType =
        new Command() {

          @Override
          public void execute(String source, String line) {}

          @Override
          public String help() {
            return null;
          }
        };
    CommandFactory.registerCommand("test", Test.class);
    CommandFactory.registerCommand("foo", anotherType.getClass());
    CommandFactory.registerCommand("bla", Test.class);
    Assert.assertEquals(Test.class, CommandFactory.getCommands().get("test"));
    Assert.assertEquals(Test.class, CommandFactory.getCommands().get("bla"));
    Assert.assertNotNull(CommandFactory.getCommands().get("foo"));
    Assert.assertEquals(3, CommandFactory.getCommands().size());
    CommandFactory.unregisterCommand(Test.class, null);
    Assert.assertEquals(1, CommandFactory.getCommands().size());
    Assert.assertNotSame(Test.class, CommandFactory.getCommands().get("foo"));
    CommandFactory.unregisterCommand(anotherType.getClass(), null);
  }
예제 #3
0
 public void testCommandsAvailable() {
   Assert.assertNotNull(CommandFactory.getCommands());
 }