Package org.osm2world.core.world.modules

Source Code of org.osm2world.core.world.modules.PowerModuleTest

package org.osm2world.core.world.modules;

import static java.util.Arrays.asList;
import static java.util.Collections.EMPTY_LIST;
import static org.junit.Assert.assertEquals;

import java.util.Arrays;
import java.util.Collections;
import java.util.List;

import org.junit.Test;
import org.openstreetmap.josm.plugins.graphview.core.data.MapBasedTagGroup;
import org.openstreetmap.josm.plugins.graphview.core.data.Tag;
import org.osm2world.core.ConversionFacade;
import org.osm2world.core.osm.data.OSMData;
import org.osm2world.core.osm.data.OSMNode;
import org.osm2world.core.osm.data.OSMWay;
import org.osm2world.core.target.Target;
import org.osm2world.core.target.statistics.StatisticsTarget;
import org.osm2world.core.target.statistics.StatisticsTarget.Stat;
import org.osm2world.core.world.creation.WorldModule;


public class PowerModuleTest {
 
  @Test
  public void testRepeatedRendering() throws Exception {
   
    /* create fake data */
   
    List<OSMNode> nodes = asList(
        new OSMNode(0, 0, new MapBasedTagGroup(new Tag("power","tower")), 101),
        new OSMNode(0, 0.001, new MapBasedTagGroup(new Tag("power","tower")), 102)
        );
   
    List<OSMWay> ways = asList(
        new OSMWay(new MapBasedTagGroup(new Tag("power","line"), new Tag("cables","4")), 201, nodes)
        );
   
    OSMData osmData = new OSMData(EMPTY_LIST, nodes, ways, EMPTY_LIST);
   
    /* render to multiple targets */
   
    ConversionFacade cf = new ConversionFacade();
   
    StatisticsTarget t1 = new StatisticsTarget();
    StatisticsTarget t2 = new StatisticsTarget();
   
    List<Target<?>> targets = Arrays.<Target<?>>asList(t1, t2);
    List<WorldModule> modules = Collections.<WorldModule>singletonList(new PowerModule());
   
    cf.createRepresentations(osmData, modules, null, targets);
   
    /* check whether the results are the same each time */
   
    for (Stat stat : Stat.values()) {
      assertEquals(t1.getGlobalCount(stat), t2.getGlobalCount(stat));
    }
   
  }
 
}
TOP

Related Classes of org.osm2world.core.world.modules.PowerModuleTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.