@Test
public void testChangeEventsParserWriter() {
String input = utils.getInputDirectory() + "testNetworkChangeEvents.xml";
String output = utils.getOutputDirectory() + "outputTestNetworkChangeEvents.xml";
final Network network = NetworkUtils.createNetwork();
NetworkFactory nf = network.getFactory();
nf.setLinkFactory(new VariableIntervalTimeVariantLinkFactory());
((NetworkImpl)network).setFactory(nf);
Node node1 = NetworkUtils.createAndAddNode(network, Id.create("1", Node.class), new Coord((double) 0, (double) 0));
Node node2 = NetworkUtils.createAndAddNode(network, Id.create("2", Node.class), new Coord((double) 0, (double) 1000));
Node node3 = NetworkUtils.createAndAddNode(network, Id.create("3", Node.class), new Coord((double) 1000, (double) 2000));
NetworkUtils.createAndAddLink(network,Id.create("1", Link.class), node1, node2, (double) 1000, 1.667, (double) 3600, (double) 1 );
NetworkUtils.createAndAddLink(network,Id.create("2", Link.class), node2, node3, (double) 1500, 1.667, (double) 3600, (double) 1 );
List<NetworkChangeEvent> events = new ArrayList<>();
NetworkChangeEventsParser parser = new NetworkChangeEventsParser(network, events );
parser.readFile(input);
new NetworkChangeEventsWriter().write(output, events);
long checksum_ref = CRCChecksum.getCRCFromFile(input);
long checksum_run = CRCChecksum.getCRCFromFile(output);
assertEquals(checksum_ref, checksum_run);
}