use of org.activityinfo.shared.dto.SiteDTO in project activityinfo by bedatadriven.
the class GetSitesTest method linkedSites.
@Test
@OnDataSet("/dbunit/sites-linked.db.xml")
public void linkedSites() {
setUser(1);
GetSites cmd = new GetSites();
cmd.filter().addRestriction(DimensionType.Activity, 1);
cmd.setSortInfo(new SortInfo("locationName", SortDir.ASC));
SiteResult result = execute(cmd);
assertThat(result.getData().size(), equalTo(2));
SiteDTO site1 = result.getData().get(0);
SiteDTO site2 = result.getData().get(1);
System.out.println(site1.getProperties());
System.out.println(site2.getProperties());
assertThat(site1.getId(), equalTo(1));
assertThat(site1.getLocationName(), equalTo("Penekusu Kivu"));
assertThat(site1.getActivityId(), equalTo(1));
assertThat(site1.getIndicatorValue(1), equalTo(1500d));
assertThat(site2.getId(), equalTo(2));
assertThat(site2.getLocationName(), equalTo("Penekusu Kivu 2"));
assertThat(site2.getActivityId(), equalTo(1));
assertThat(site2.getIndicatorValue(1), equalTo(400d));
}
use of org.activityinfo.shared.dto.SiteDTO in project activityinfo by bedatadriven.
the class LocalSiteCreateTest method createNew.
@Test
@OnDataSet("/dbunit/sites-simple1.db.xml")
public void createNew() throws CommandException {
synchronizeFirstTime();
// create a new detached, client model
SiteDTO newSite = SiteDTOs.newSite();
LocationDTO location = LocationDTOs.newLocation();
executeLocally(new CreateLocation(location));
newSite.setLocation(location);
// create command
CreateSite cmd = new CreateSite(newSite);
// execute the command
CreateResult result = executeLocally(cmd);
// let the client know the command has succeeded
newSite.setId(result.getNewId());
// try to retrieve what we've created FROM OUR CLIENT SIDE DATABASE
SiteResult loadResult = executeLocally(GetSites.byId(newSite.getId()));
Assert.assertEquals(1, loadResult.getData().size());
SiteDTO secondRead = loadResult.getData().get(0);
// confirm that the changes are there
SiteDTOs.validateNewSite(secondRead);
newRequest();
// now Sync with the server
synchronize();
// Confirm that paging works client side
GetSites pagingRequest = new GetSites();
pagingRequest.setLimit(1);
loadResult = executeLocally(pagingRequest);
}
use of org.activityinfo.shared.dto.SiteDTO in project activityinfo by bedatadriven.
the class TableGeneratorTest method testMap.
//
// @Test
// public void tableWithMap() {
//
// MapReportElement map = new MapReportElement();
// map.setBaseMapId(GoogleBaseMap.ROADMAP.getId());
//
// BubbleMapLayer layer = new BubbleMapLayer();
// layer.addIndicator(INDICATOR_ID);
// map.addLayer(layer);
//
// TableElement table = new TableElement();
// table.setMap(map);
//
// TableColumn column = new TableColumn("Location", "location.name");
// table.addColumn(column);
//
// TableColumn mapColumn = new TableColumn("Map", "map");
// table.addColumn(mapColumn);
//
// DispatcherSync dispatcher = createDispatcher();
// TableGenerator gtor = new TableGenerator(dispatcher, new
// MapGenerator(dispatcher, null, null));
// gtor.generate(user, table, null, null);
//
// Assert.assertNotNull("content is set", table.getContent());
//
// TableData data = table.getContent().getData();
// List<SiteDTO> rows = data.getRows();
// Assert.assertEquals("row count", 1, rows.size());
//
// SiteDTO row = rows.get(0);
// assertThat((String)row.get(column.getSitePropertyName()),
// equalTo("tampa bay"));
// assertThat((String)row.get("map"), equalTo("1"));
// }
@Test
public void testMap() {
TableElement table = new TableElement();
table.addColumn(new TableColumn("Index", "map"));
table.addColumn(new TableColumn("Site", "location.name"));
MapReportElement map = new MapReportElement();
map.setBaseMapId("map1");
CircledMapLayer layer = new BubbleMapLayer();
layer.setLabelSequence(new ArabicNumberSequence());
map.addLayer(layer);
table.setMap(map);
DispatcherSync dispatcher = createMock(DispatcherSync.class);
expect(dispatcher.execute(isA(GetSites.class))).andReturn(new SiteResult(dummySite())).anyTimes();
TileBaseMap baseMap1 = new TileBaseMap();
baseMap1.setId("map1");
baseMap1.setMinZoom(0);
baseMap1.setMaxZoom(12);
baseMap1.setCopyright("(C)");
baseMap1.setName("Grand Canyon");
baseMap1.setTileUrlPattern("http://s/test.png");
expect(dispatcher.execute(isA(GetBaseMaps.class))).andReturn(new BaseMapResult(Collections.singletonList(baseMap1)));
replay(dispatcher);
TableGenerator gtor = new TableGenerator(dispatcher, new MapGenerator(dispatcher, new MockIndicatorDAO()));
gtor.generate(user, table, null, null);
MapContent mapContent = map.getContent();
Assert.assertNotNull("map content", mapContent);
Assert.assertEquals("marker count", 1, mapContent.getMarkers().size());
Assert.assertEquals("label on marker", "1", ((BubbleMapMarker) mapContent.getMarkers().get(0)).getLabel());
Map<Integer, String> siteLabels = mapContent.siteLabelMap();
Assert.assertEquals("site id in map", "1", siteLabels.get(1));
SiteDTO row = table.getContent().getData().getRows().get(0);
Assert.assertEquals("label on row", "1", row.get("map"));
}
use of org.activityinfo.shared.dto.SiteDTO in project activityinfo by bedatadriven.
the class TableGeneratorTest method simpleTable.
@Test
public void simpleTable() {
TableElement table = new TableElement();
TableColumn column = new TableColumn("Location", "location.name");
table.addColumn(column);
TableGenerator gtor = new TableGenerator(createDispatcher(), null);
gtor.generate(user, table, null, null);
Assert.assertNotNull("content is set", table.getContent());
TableData data = table.getContent().getData();
List<SiteDTO> rows = data.getRows();
Assert.assertEquals("row count", 1, rows.size());
SiteDTO row = rows.get(0);
assertThat((String) row.get(column.getSitePropertyName()), equalTo("tampa bay"));
}
use of org.activityinfo.shared.dto.SiteDTO in project activityinfo by bedatadriven.
the class CoincidentPointsClusterTest method testSimpleData.
@Test
public void testSimpleData() throws Exception {
List<PointValue> points = new ArrayList<PointValue>();
points.add(new PointValue(new SiteDTO(), new MapSymbol(), 7.0, new Point(0, 0)));
points.add(new PointValue(new SiteDTO(), new MapSymbol(), 2.0, new Point(0, 0)));
points.add(new PointValue(new SiteDTO(), new MapSymbol(), 41.0, new Point(100, 100)));
points.add(new PointValue(new SiteDTO(), new MapSymbol(), 9.0, new Point(0, 0)));
points.add(new PointValue(new SiteDTO(), new MapSymbol(), 39.0, new Point(100, 100)));
double originalSum = 7 + 2 + 9 + 41 + 39;
// Now build the graph
MarkerGraph graph = new MarkerGraph(points, new BubbleIntersectionCalculator(15));
GeneticSolver solver = new GeneticSolver();
List<Cluster> clusters = solver.solve(graph, new GsLogCalculator(5, 15), new BubbleFitnessFunctor(), UpperBoundsCalculator.calculate(graph, new FixedRadiiCalculator(5)));
// check to make sure all values were included
double sumAfterClustering = 0;
for (Cluster cluster : clusters) {
sumAfterClustering += cluster.sumValues();
}
Assert.assertEquals(originalSum, sumAfterClustering, 0.0001);
Assert.assertEquals(2, clusters.size());
saveClusters(graph, "clusterTest-solution", clusters);
}
Aggregations