Path: blob/main/tests/netedit/elements/demands/routeflow/create/id/test.py
169781 views
#!/usr/bin/env python1# Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo2# Copyright (C) 2009-2025 German Aerospace Center (DLR) and others.3# This program and the accompanying materials are made available under the4# terms of the Eclipse Public License 2.0 which is available at5# https://www.eclipse.org/legal/epl-2.0/6# This Source Code may also be made available under the following Secondary7# Licenses when the conditions for such availability set forth in the Eclipse8# Public License 2.0 are satisfied: GNU General Public License, version 29# or later which is available at10# https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html11# SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later1213# @file test.py14# @author Pablo Alvarez Lopez15# @date 2019-07-161617# import common functions for netedit tests18import os19import sys2021sys.path.append(os.path.join(os.environ.get("SUMO_HOME", "."), "tools"))22import neteditTestFunctions as netedit # noqa2324# Open netedit25neteditProcess, referencePosition = netedit.setupAndStart()2627# go to demand mode28netedit.changeSupermode("demand")2930# go to route mode31netedit.changeMode("route")3233# create route using three edges34netedit.leftClick(referencePosition, netedit.positions.elements.edge0)35netedit.leftClick(referencePosition, netedit.positions.elements.edge1)36netedit.leftClick(referencePosition, netedit.positions.elements.edge2)3738# press enter to create route39netedit.typeKey("enter")4041# create route using three edges42netedit.leftClick(referencePosition, netedit.positions.elements.edge3)43netedit.leftClick(referencePosition, netedit.positions.elements.edge4)44netedit.leftClick(referencePosition, netedit.positions.elements.edge5)4546# press enter to create route47netedit.typeKey("enter")4849# go to vehicle mode50netedit.changeMode("vehicle")5152# select flow over route53netedit.changeElement("vehicleFrame", "flow (over route)")5455# try to create vehicle56netedit.leftClick(referencePosition, netedit.positions.elements.edge0)5758# try to create vehicle59netedit.leftClick(referencePosition, netedit.positions.elements.edge5)6061# set invalid id62netedit.modifyAttribute(netedit.attrs.routeFlow.create.id, "%%;;%%%%")6364# try to create vehicle65netedit.leftClick(referencePosition, netedit.positions.elements.edge0)6667# set valid id68netedit.modifyAttribute(netedit.attrs.routeFlow.create.id, "")6970# create vehicle71netedit.leftClick(referencePosition, netedit.positions.elements.edge0)7273# set empty id74netedit.modifyAttribute(netedit.attrs.routeFlow.create.id, "f_0")7576# create vehicle77netedit.leftClick(referencePosition, netedit.positions.elements.edge0)7879# set empty id80netedit.modifyAttribute(netedit.attrs.routeFlow.create.id, "customID")8182# create vehicle83netedit.leftClick(referencePosition, netedit.positions.elements.edge0)8485# Check undo redo86netedit.checkUndoRedo(referencePosition)8788# save Netedit config89netedit.saveExistentFile("neteditConfig")9091# quit netedit92netedit.quit(neteditProcess)939495