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);
ViewConfigResolver viewConfigResolver = this.viewConfigResolverProducer.createViewConfigResolver();
ConfigDescriptor<?> configDescriptor = viewConfigResolver.getConfigDescriptor(Pages.class);
Assert.assertNotNull(configDescriptor);
Assert.assertNotNull(configDescriptor.getConfigClass());
Assert.assertEquals(Pages.class, configDescriptor.getConfigClass());
Assert.assertNotNull(configDescriptor.getMetaData());
Assert.assertEquals(2, configDescriptor.getMetaData().size());
Assert.assertEquals(1, configDescriptor.getMetaData(Folder.class).size());
Assert.assertEquals("/pages/", configDescriptor.getMetaData(Folder.class).iterator().next().name());
Assert.assertEquals(View.NavigationMode.REDIRECT, configDescriptor.getMetaData(View.class).iterator().next()
.navigation());
Assert.assertEquals(View.ViewParameterMode.EXCLUDE, configDescriptor.getMetaData(View.class).iterator().next().viewParams());
Assert.assertEquals(View.Extension.JSF, configDescriptor.getMetaData(View.class).iterator().next().extension());
Assert.assertEquals("", configDescriptor.getMetaData(View.class).iterator().next().name());
configDescriptor = viewConfigResolver.getConfigDescriptor(Pages.Admin.class);
Assert.assertNotNull(configDescriptor);
Assert.assertNotNull(configDescriptor.getConfigClass());
Assert.assertEquals(Pages.Admin.class, configDescriptor.getConfigClass());
Assert.assertNotNull(configDescriptor.getMetaData());
Assert.assertEquals(2, configDescriptor.getMetaData().size());
Assert.assertEquals(1, configDescriptor.getMetaData(Folder.class).size());
Assert.assertEquals("/pages/admin/", configDescriptor.getMetaData(Folder.class).iterator().next().name());
Assert.assertEquals(1, configDescriptor.getMetaData(View.class).size());
Assert.assertEquals(View.NavigationMode.REDIRECT, configDescriptor.getMetaData(View.class).iterator().next().navigation());
Assert.assertEquals(View.ViewParameterMode.EXCLUDE, configDescriptor.getMetaData(View.class).iterator().next().viewParams());
//the following is correct because it's @View at the folder level:
Assert.assertEquals("", configDescriptor.getMetaData(View.class).iterator().next().name());
Assert.assertEquals("", configDescriptor.getMetaData(View.class).iterator().next().basePath());
Assert.assertEquals("jsf", configDescriptor.getMetaData(View.class).iterator().next().extension());
configDescriptor = viewConfigResolver.getConfigDescriptor(Pages.Admin.Statistics.class);
Assert.assertNotNull(configDescriptor);
Assert.assertNotNull(configDescriptor.getConfigClass());
Assert.assertEquals(Pages.Admin.Statistics.class, configDescriptor.getConfigClass());
Assert.assertNotNull(configDescriptor.getMetaData());
Assert.assertEquals(2, configDescriptor.getMetaData().size());
Assert.assertEquals(1, configDescriptor.getMetaData(Folder.class).size());
Assert.assertEquals("/pages/admin/statistics/", configDescriptor.getMetaData(Folder.class).iterator().next().name());
Assert.assertEquals(1, configDescriptor.getMetaData(View.class).size());
Assert.assertEquals(View.NavigationMode.REDIRECT, configDescriptor.getMetaData(View.class).iterator().next().navigation());
Assert.assertEquals(View.ViewParameterMode.INCLUDE, configDescriptor.getMetaData(View.class).iterator().next().viewParams());
//the following is correct because it's @View at the folder level:
Assert.assertEquals("", configDescriptor.getMetaData(View.class).iterator().next().name());
Assert.assertEquals("", configDescriptor.getMetaData(View.class).iterator().next().basePath());
Assert.assertEquals("faces", configDescriptor.getMetaData(View.class).iterator().next().extension());
ViewConfigDescriptor viewConfigDescriptor = viewConfigResolver.getViewConfigDescriptor(Pages.Index.class);
Assert.assertNotNull(viewConfigDescriptor);
Assert.assertEquals("/pages/index.jsf", viewConfigDescriptor.getViewId());
Assert.assertEquals(Pages.Index.class, viewConfigDescriptor.getConfigClass());
Assert.assertNotNull(viewConfigDescriptor.getMetaData());
Assert.assertEquals(1, viewConfigDescriptor.getMetaData().size());
Assert.assertEquals(1, viewConfigDescriptor.getMetaData(View.class).size());
Assert.assertEquals(View.NavigationMode.REDIRECT, viewConfigDescriptor.getMetaData(View.class).iterator().next().navigation());
Assert.assertEquals(View.ViewParameterMode.EXCLUDE, viewConfigDescriptor.getMetaData(View.class).iterator().next().viewParams());
Assert.assertEquals("index", viewConfigDescriptor.getMetaData(View.class).iterator().next().name());
Assert.assertEquals("jsf", viewConfigDescriptor.getMetaData(View.class).iterator().next().extension());
viewConfigDescriptor = viewConfigResolver.getViewConfigDescriptor(Pages.Admin.Statistics.Index.class);
Assert.assertNotNull(viewConfigDescriptor);
Assert.assertEquals("/pages/admin/statistics/index.faces", viewConfigDescriptor.getViewId());
Assert.assertEquals(Pages.Admin.Statistics.Index.class, viewConfigDescriptor.getConfigClass());
Assert.assertNotNull(viewConfigDescriptor.getMetaData());
Assert.assertEquals(1, viewConfigDescriptor.getMetaData().size());
Assert.assertEquals(View.NavigationMode.REDIRECT, viewConfigDescriptor.getMetaData(View.class).iterator().next().navigation());
Assert.assertEquals(View.ViewParameterMode.INCLUDE, viewConfigDescriptor.getMetaData(View.class).iterator().next().viewParams());
Assert.assertEquals("index", viewConfigDescriptor.getMetaData(View.class).iterator().next().name());
Assert.assertEquals("faces", viewConfigDescriptor.getMetaData(View.class).iterator().next().extension());
viewConfigDescriptor = viewConfigResolver.getViewConfigDescriptor(Pages.Admin.Statistics.Home.class);
Assert.assertNotNull(viewConfigDescriptor);
Assert.assertEquals("/pages/admin/statistics/home.jsf", viewConfigDescriptor.getViewId());
Assert.assertEquals(Pages.Admin.Statistics.Home.class, viewConfigDescriptor.getConfigClass());
Assert.assertNotNull(viewConfigDescriptor.getMetaData());
Assert.assertEquals(1, viewConfigDescriptor.getMetaData().size());
Assert.assertEquals(View.NavigationMode.REDIRECT, viewConfigDescriptor.getMetaData(View.class).iterator().next().navigation());
Assert.assertEquals(View.ViewParameterMode.EXCLUDE, viewConfigDescriptor.getMetaData(View.class).iterator().next().viewParams());
Assert.assertEquals("home", viewConfigDescriptor.getMetaData(View.class).iterator().next().name());
Assert.assertEquals("jsf", viewConfigDescriptor.getMetaData(View.class).iterator().next().extension());
viewConfigDescriptor = viewConfigResolver.getViewConfigDescriptor(Pages.Admin.Index.class);
Assert.assertNotNull(viewConfigDescriptor);
Assert.assertEquals("/pages/admin/index.xhtml", viewConfigDescriptor.getViewId());
Assert.assertEquals(Pages.Admin.Index.class, viewConfigDescriptor.getConfigClass());
Assert.assertNotNull(viewConfigDescriptor.getMetaData());
Assert.assertEquals(1, viewConfigDescriptor.getMetaData().size());
Assert.assertEquals(View.NavigationMode.REDIRECT, viewConfigDescriptor.getMetaData(View.class).iterator().next().navigation());
Assert.assertEquals(View.ViewParameterMode.EXCLUDE, viewConfigDescriptor.getMetaData(View.class).iterator().next().viewParams());
Assert.assertEquals("index", viewConfigDescriptor.getMetaData(View.class).iterator().next().name());
Assert.assertEquals("xhtml", viewConfigDescriptor.getMetaData(View.class).iterator().next().extension());
viewConfigDescriptor = viewConfigResolver.getViewConfigDescriptor(Pages.Admin.Home.class);
Assert.assertNotNull(viewConfigDescriptor);
Assert.assertEquals("/pages/admin/home.jsf", viewConfigDescriptor.getViewId());
Assert.assertEquals(Pages.Admin.Home.class, viewConfigDescriptor.getConfigClass());