this.viewConfigExtension.addPageDefinition(Pages.Admin.Index.class);
this.viewConfigExtension.addPageDefinition(Pages.Admin.Home.class);
this.viewConfigExtension.addPageDefinition(Pages.Admin.Statistics.Index.class);
this.viewConfigExtension.addPageDefinition(Pages.Admin.Statistics.Home.class);
ViewConfigNode node = this.viewConfigExtension.findNode(Pages.class);
Assert.assertNotNull(node);
Assert.assertNotNull(node.getParent()); //Root
Assert.assertNull(node.getParent().getParent());
Assert.assertNotNull(node.getChildren());
Assert.assertEquals(2, node.getChildren().size());
Assert.assertNotNull(node.getMetaData());
Assert.assertEquals(1, node.getMetaData().size());
Assert.assertEquals(View.NavigationMode.REDIRECT, ((View) node.getMetaData().iterator().next()).navigation());
Assert.assertEquals(View.ViewParameterMode.DEFAULT, ((View) node.getMetaData().iterator().next()).viewParams());
Assert.assertEquals("", ((View) node.getMetaData().iterator().next()).name());
Assert.assertEquals(View.Extension.JSF, ((View) node.getMetaData().iterator().next()).extension());
Assert.assertNotNull(node.getInheritedMetaData());
Assert.assertEquals(0, node.getInheritedMetaData().size());
node = this.viewConfigExtension.findNode(Pages.Admin.class);
Assert.assertNotNull(node);
Assert.assertNotNull(node.getParent()); //Admin
Assert.assertNotNull(node.getParent().getParent()); //Root
Assert.assertNull(node.getParent().getParent().getParent());
Assert.assertNotNull(node.getChildren());
Assert.assertEquals(3, node.getChildren().size());
Assert.assertNotNull(node.getMetaData());
Assert.assertEquals(0, node.getMetaData().size());
Assert.assertNotNull(node.getInheritedMetaData());
Assert.assertEquals(0, node.getInheritedMetaData().size());
node = this.viewConfigExtension.findNode(Pages.Admin.Statistics.class);
Assert.assertNotNull(node);
Assert.assertNotNull(node.getParent()); //Admin
Assert.assertNotNull(node.getParent().getParent()); //Pages
Assert.assertNotNull(node.getParent().getParent().getParent()); //Root
Assert.assertNull(node.getParent().getParent().getParent().getParent());
Assert.assertNotNull(node.getChildren());
Assert.assertEquals(2, node.getChildren().size());
Assert.assertNotNull(node.getMetaData());
Assert.assertEquals(1, node.getMetaData().size());
Assert.assertEquals(View.NavigationMode.DEFAULT, ((View) node.getMetaData().iterator().next()).navigation());
Assert.assertEquals(View.ViewParameterMode.INCLUDE, ((View) node.getMetaData().iterator().next()).viewParams());
Assert.assertEquals("", ((View) node.getMetaData().iterator().next()).name());
Assert.assertEquals(View.Extension.FACES, ((View) node.getMetaData().iterator().next()).extension());
Assert.assertNotNull(node.getInheritedMetaData());
Assert.assertEquals(0, node.getInheritedMetaData().size());
node = this.viewConfigExtension.findNode(Pages.Index.class);
Assert.assertNotNull(node);
Assert.assertNotNull(node.getParent()); //Pages
Assert.assertNotNull(node.getParent().getParent()); //Root
Assert.assertNull(node.getParent().getParent().getParent());
Assert.assertNotNull(node.getChildren());
Assert.assertEquals(0, node.getChildren().size());
Assert.assertNotNull(node.getMetaData());
Assert.assertEquals(0, node.getMetaData().size());
Assert.assertNotNull(node.getInheritedMetaData());
Assert.assertEquals(0, node.getInheritedMetaData().size());
node = this.viewConfigExtension.findNode(Pages.Admin.Statistics.Index.class);
Assert.assertNotNull(node);
Assert.assertNotNull(node.getParent()); //Statistics
Assert.assertNotNull(node.getParent().getParent()); //Admin
Assert.assertNotNull(node.getParent().getParent().getParent()); //Pages
Assert.assertNotNull(node.getParent().getParent().getParent().getParent()); //Root
Assert.assertNull(node.getParent().getParent().getParent().getParent().getParent());
Assert.assertNotNull(node.getChildren());
Assert.assertEquals(0, node.getChildren().size());
Assert.assertNotNull(node.getMetaData());
Assert.assertEquals(1, node.getMetaData().size());
Assert.assertEquals(View.NavigationMode.DEFAULT, ((View) node.getMetaData().iterator().next()).navigation());
Assert.assertEquals(View.ViewParameterMode.DEFAULT, ((View) node.getMetaData().iterator().next()).viewParams());
Assert.assertEquals("", ((View) node.getMetaData().iterator().next()).name());
Assert.assertEquals(View.Extension.DEFAULT, ((View) node.getMetaData().iterator().next()).extension());
Assert.assertNotNull(node.getInheritedMetaData());
Assert.assertEquals(0, node.getInheritedMetaData().size());
node = this.viewConfigExtension.findNode(Pages.Admin.Statistics.Home.class);
Assert.assertNotNull(node);
Assert.assertNotNull(node.getParent()); //Statistics
Assert.assertNotNull(node.getParent().getParent()); //Admin
Assert.assertNotNull(node.getParent().getParent().getParent()); //Pages
Assert.assertNotNull(node.getParent().getParent().getParent().getParent()); //Root
Assert.assertNull(node.getParent().getParent().getParent().getParent().getParent());
Assert.assertNotNull(node.getChildren());
Assert.assertEquals(0, node.getChildren().size());
Assert.assertNotNull(node.getMetaData());
Assert.assertEquals(0, node.getMetaData().size());
Assert.assertNotNull(node.getInheritedMetaData());
Assert.assertEquals(0, node.getInheritedMetaData().size());
node = this.viewConfigExtension.findNode(Pages.Admin.Index.class);
Assert.assertNotNull(node);
Assert.assertNotNull(node.getParent()); //Admin
Assert.assertNotNull(node.getParent().getParent()); //Pages
Assert.assertNotNull(node.getParent().getParent().getParent()); //Root
Assert.assertNull(node.getParent().getParent().getParent().getParent());
Assert.assertNotNull(node.getChildren());
Assert.assertEquals(0, node.getChildren().size());
Assert.assertNotNull(node.getMetaData());
Assert.assertEquals(1, node.getMetaData().size());
Assert.assertEquals(View.NavigationMode.DEFAULT, ((View) node.getMetaData().iterator().next()).navigation());
Assert.assertEquals(View.ViewParameterMode.DEFAULT, ((View) node.getMetaData().iterator().next()).viewParams());
Assert.assertEquals("", ((View) node.getMetaData().iterator().next()).name());
Assert.assertEquals(View.Extension.XHTML, ((View) node.getMetaData().iterator().next()).extension());
Assert.assertNotNull(node.getInheritedMetaData());
Assert.assertEquals(0, node.getInheritedMetaData().size());
node = this.viewConfigExtension.findNode(Pages.Admin.Home.class);
Assert.assertNotNull(node);
Assert.assertNotNull(node.getParent()); //Admin
Assert.assertNotNull(node.getParent().getParent()); //Pages
Assert.assertNotNull(node.getParent().getParent().getParent()); //Root
Assert.assertNull(node.getParent().getParent().getParent().getParent());
Assert.assertNotNull(node.getChildren());
Assert.assertEquals(0, node.getChildren().size());
Assert.assertNotNull(node.getMetaData());
Assert.assertEquals(1, node.getMetaData().size());
Assert.assertEquals(View.NavigationMode.FORWARD, ((View) node.getMetaData().iterator().next()).navigation());
Assert.assertEquals(View.ViewParameterMode.DEFAULT, ((View) node.getMetaData().iterator().next()).viewParams());
Assert.assertEquals("", ((View) node.getMetaData().iterator().next()).name());
Assert.assertEquals(View.Extension.DEFAULT, ((View) node.getMetaData().iterator().next()).extension());
Assert.assertNotNull(node.getInheritedMetaData());
Assert.assertEquals(0, node.getInheritedMetaData().size()); //not processed at this point - node was just added
}