package org.geoserver.web.security;
import java.util.HashSet;
import java.util.Set;
import org.apache.wicket.Component;
import org.geoserver.security.AccessMode;
import org.geoserver.security.impl.DataAccessRule;
import org.geoserver.web.ComponentBuilder;
import org.geoserver.web.FormTestPage;
import org.geoserver.web.GeoServerWicketTestSupport;
public class ConfirmRemovalDataAccessRulePanelTest extends GeoServerWicketTestSupport {
void setupPanel(final DataAccessRule... roots) {
tester.startPage(new FormTestPage(new ComponentBuilder() {
public Component buildComponent(String id) {
return new ConfirmRemovalDataAccessRulePanel(id, roots);
}
}));
}
public void testRemoveDataAccessRule() {
Set<String> roles = new HashSet<String>();
roles.add("*");
setupPanel(new DataAccessRule("*","*",AccessMode.READ,roles));
// print(tester.getLastRenderedPage(), true, true);
tester.assertRenderedPage(FormTestPage.class);
tester.assertNoErrorMessage();
tester.assertLabel("form:panel:removedObjects:rulesRemoved:rules", "*.*.READ=[*]");
// String layers = tester.getComponentFromLastRenderedPage("form:panel:removedObjects:layersRemoved:layers").getModelObjectAsString();
// String[] layerArray = layers.split(", ");
// DataStoreInfo citeStore = getCatalog().getStoreByName("cite", DataStoreInfo.class);
// List<FeatureTypeInfo> typeInfos = getCatalog().getResourcesByStore(citeStore, FeatureTypeInfo.class);
// assertEquals(typeInfos.size(), layerArray.length);
}
}