Fixing problem with home menu item being marked as active all the time. NIHVIVO-1627

This commit is contained in:
bdc34 2011-01-06 16:57:54 +00:00
parent 5929c82c22
commit acabfe7f38
2 changed files with 18 additions and 2 deletions

View file

@ -107,8 +107,8 @@ public class MenuDaoJena extends JenaBaseDao implements MenuDao {
protected boolean isActive(String url, String link){ protected boolean isActive(String url, String link){
if( "/".equals(url) ) if( "/".equals(link) )
return "/".equals(link); return "/".equals(url);
else else
return url.startsWith(link); return url.startsWith(link);
} }

View file

@ -88,4 +88,20 @@ public class MenuDaoJenaTest extends AbstractTestClass {
Assert.assertEquals("Organizations",item.getLinkText()); Assert.assertEquals("Organizations",item.getLinkText());
Assert.assertEquals("bogusUrlContextPath/organizations",item.getUrl()); Assert.assertEquals("bogusUrlContextPath/organizations",item.getUrl());
} }
@Test
public void isActiveTest(){
SimpleOntModelSelector sos = new SimpleOntModelSelector( ModelFactory.createOntologyModel(OntModelSpec.OWL_DL_MEM));
sos.setDisplayModel(displayModel);
MenuDaoJena menuDaoJena = new MenuDaoJena(new WebappDaoFactoryJena(sos));
//First arg is the page the user is on. Second arg is the urlmapping of the menu item.
Assert.assertTrue( menuDaoJena.isActive("/", "/") );
Assert.assertTrue( menuDaoJena.isActive("/people", "/people") );
Assert.assertFalse( menuDaoJena.isActive("/people", "/") );
Assert.assertFalse( menuDaoJena.isActive("/", "/people") );
}
} }