package de.otto.edison.navigation;
import org.junit.Test;
import static de.otto.edison.navigation.NavBar.navBar;
import static de.otto.edison.navigation.NavBarItem.navBarItem;
import static java.util.Arrays.asList;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.is;
public class NavBarTest {
@Test
public void shouldSortNavBarItemsByIndex() {
final NavBar navBar = navBar(asList(
navBarItem(1, "Bar", "/"),
navBarItem(0, "Foo", "/")
));
assertThat(navBar.getItems().get(0).getTitle(), is("Foo"));
assertThat(navBar.getItems().get(1).getTitle(), is("Bar"));
}
@Test
public void shouldSortNavBarItemsByIndexAndTitle() {
final NavBar navBar = navBar(asList(
navBarItem(0, "Foo", "/"),
navBarItem(0, "Bar", "/")
));
assertThat(navBar.getItems().get(0).getTitle(), is("Bar"));
assertThat(navBar.getItems().get(1).getTitle(), is("Foo"));
}
@Test
public void shouldSortNavBarItemsAfterRegistration() {
final NavBar navBar = navBar(asList(
navBarItem(0, "Foo", "/"),
navBarItem(1, "Bar", "/")
));
navBar.register(navBarItem(1, "AAARGH", "/"));
assertThat(navBar.getItems().get(0).getTitle(), is("Foo"));
assertThat(navBar.getItems().get(1).getTitle(), is("AAARGH"));
assertThat(navBar.getItems().get(2).getTitle(), is("Bar"));
}
}