Skip to content

New features, end-to-end test framework, bugfixes and build system improvements

Reinhard Biegel requested to merge intech into servant

There are a lot of exiting changes available on the intech branch:

pyOpenPASS - end-to-end test framework

  • This includes a set of about 25 simulator configurations used to demonstrate various features
  • The framework provides two main aspects of testing:
    • Determinism test check for simulation outputs being consistent on multiple invocations
    • Specialized test allow simple queries on simulation output, e. g. for checking for occurrence of events
  • Documentation is available in sim/tests/endToEndTests/README.md
  • Current test set is specified by sim/tests/endToEndTests/end_to_end.json and CMakeLists.txt
  • Tests are enabled by providing -DWITH_ENDTOEND_TEST=ON to cmake and executed by "make install && make pyOpenPASS"

Documentation

  • Preparations for sphinx documentation format

Features

  • Adapted importers to OpenDRIVE 1.6
  • Support for pedestrian crossing
  • New OpenSCENARIO CustomCommandAction
  • Central ID management for all simulated entities

Important bugfixes

  • lane boundary generation
  • lane linkage inside junctions
  • lane queries on specific s-coordinate range
  • ParamPoly3 calculation
  • GetObjectsInRange no returning correct results
  • logging mechanism not being used correctly in various modules

Improvements

  • Sensor_OSI: improved OSI compliance, fixed bugs
  • FmuWrapper: better OSMP support, openPASS-to-FMU signal mapping and unzip handling, some bugfixes
  • World_OSI: better OSI compliance
  • Spawner: Now generates routes for spawned agents
  • Better logging messages
  • Better performance

Build system

  • Windows: switched to MSYS2, as it is better maintained than MinGW-w64
  • version.h is now generated by CMake
  • Used runtime library dependencies are now automatically detected and copied on "make install"
  • Code coverage generation
Edited by Reinhard Biegel

Merge request reports