OSC2 basics examples
Example: field declarations
OSC2 code: field declarations
import "$FTX_BASIC/exe_platforms/sumo_ssp/config/sumo_config.osc"
extend test_config:
set map = "$FTX_PACKAGES/maps/hooder.xodr"
extend top.main:
do sut.car.drive(duration: 5s)
scenario vehicle.my_scenario1:
legal_speed: speed
var too_fast:= true
Example: field constraints
OSC2 code: field constraints
import "$FTX_BASIC/exe_platforms/sumo_ssp/config/sumo_config.osc"
extend test_config:
set map = "$FTX_PACKAGES/maps/hooder.xodr"
extend top.main:
do sut.car.drive(duration: 5s)
scenario vehicle.my_scenario1:
legal_speed: speed
keep(legal_speed < 120kph)
Example: behavior specification
OSC2 code: behavior specification
import "$FTX_BASIC/exe_platforms/sumo_ssp/config/sumo_config.osc"
extend test_config:
set map = "$FTX_PACKAGES/maps/highway.xodr"
extend top.main:
car1: vehicle
do car1.simple_drive()
scenario vehicle.simple_drive:
do serial(duration: 10sec):
actor.drive()
Example: behavior modification
OSC2 code: behavior modification
import "$FTX_BASIC/exe_platforms/sumo_ssp/config/sumo_config.osc"
extend test_config:
set map = "$FTX_PACKAGES/maps/hooder.xodr"
extend top.main:
do sut.car.drive(duration: 5s)
scenario sut.my_scenario2:
speed: speed
car1: vehicle
car2: vehicle
do parallel(overlap:equal):
car2.drive()
car1.drive() with:
speed([1..5]kph, faster_than: car2)
Example: valid field declarations
OSC2 code: valid field declarations
import "$FTX_BASIC/exe_platforms/sumo_ssp/config/sumo_config.osc"
extend test_config:
set map = "$FTX_PACKAGES/maps/hooder.xodr"
extend top.main:
do sut.car.drive(duration: 5s)
scenario vehicle.my_scenario1:
var current_speed: speed
start_speed: speed with:
keep(it < 100kph)
cars: list of vehicle with:
keep(soft it.size() <= 10)
var too_fast:= true