/** Tests handling of the incorrect input. */
 public void testFindGuidesByTitleFail() {
   try {
     set.findGuidesByTitle(null);
     fail("Title should be specified. NPE is expected.");
   } catch (Exception e) {
     // Expected
   }
 }
  /** Tests finding the guides by their title. */
  public void testFindGuidesByTitle() {
    IGuide guide1 = new DummyEmptyGuide();
    guide1.setTitle("1");
    guide1.setIconKey("a");
    IGuide guide2 = new DummyEmptyGuide();
    guide2.setTitle("2");
    IGuide guide3 = new DummyEmptyGuide();
    guide3.setTitle("1");
    guide1.setIconKey("b");

    // Empty set
    Collection guides;
    guides = set.findGuidesByTitle("1");
    assertEquals("Set is empty.", 0, guides.size());

    // Add guides with similar titles
    set.add(guide1);
    set.add(guide2);
    set.add(guide3);
    guides = set.findGuidesByTitle("1");
    assertEquals("Wrong number of guides in result.", 2, guides.size());
    assertTrue("Missing guide.", guides.contains(guide1));
    assertTrue("Missing guide.", guides.contains(guide3));
  }