public void testFiles() throws Exception {
    File dir = RuleBaseAssemblerTest.getTempDirectory();

    Package p1 = new Package("p1");
    File p1f = new File(dir, "p1.pkg");
    RuleBaseAssemblerTest.writePackage(p1, p1f);

    Package p2 = new Package("p2");
    File p2f = new File(dir, "p2.pkg");
    RuleBaseAssemblerTest.writePackage(p2, p2f);

    String path = dir.getPath() + "/" + "p1.pkg " + dir.getPath() + "/" + "p2.pkg";

    Properties props = new Properties();
    props.setProperty("file", path);
    RuleAgent ag = RuleAgent.newRuleAgent(props);
    RuleBase rb = ag.getRuleBase();
    assertNotNull(rb);
    assertEquals(2, rb.getPackages().length);

    assertFalse(ag.isPolling());

    props.setProperty("poll", "1");
    ag = RuleAgent.newRuleAgent(props);
    assertTrue(ag.isPolling());

    ag.stopPolling();
    assertFalse(ag.isPolling());
  }
  public void testEventListenerSetup() throws Exception {
    RuleAgent ag = new RuleAgent(new RuleBaseConfiguration());
    assertNotNull(ag.listener);

    final String[] name = new String[1];

    AgentEventListener list =
        new AgentEventListener() {
          public void debug(String message) {}

          public void exception(Exception e) {}

          public void info(String message) {}

          public void warning(String message) {}

          public void setAgentName(String n) {
            name[0] = n;
          }
        };

    File dir = RuleBaseAssemblerTest.getTempDirectory();

    Package p1 = new Package("p1");
    File p1f = new File(dir, "p42_.pkg");
    RuleBaseAssemblerTest.writePackage(p1, p1f);

    String path = dir.getPath() + "/" + "p42_.pkg";

    Properties props = new Properties();
    props.setProperty("file", path);
    props.setProperty("poll", "1");
    props.setProperty("name", "poo");
    ag = RuleAgent.newRuleAgent(props, list);

    assertEquals(list, ag.listener);
    assertEquals("poo", name[0]);
    ag.stopPolling();
  }