:orphan: .. title:: EMUL .. option:: CONFIG_EMUL *Emulation drivers* Type: ``bool`` Help ==== Enable Emulation Driver Configuration These drivers are used to emulate hardware devices, to support testing of various subsystems. For example, it is possible to write an emulator for an I2C compass such that it appears on the I2C bus and can be used just like a real hardware device. Emulators often implement special features for testing. For example a compass may support returning bogus data if the I2C bus speed is too high, or may return invalid measurements if calibration has not yet been completed. This allows for testing that high-level code can handle these situations correctly. Test coverage can therefore approach 100% if all failure conditions are emulated. Defaults ======== No defaults. Implicitly defaults to ``n``. Kconfig definition ================== .. highlight:: kconfig At ``subsys/emul/Kconfig:9`` Included via ``Kconfig:8`` → ``Kconfig.zephyr:34`` → ``subsys/Kconfig:21`` Menu path: (Top) → Sub Systems and OS Services .. parsed-literal:: menuconfig EMUL bool "Emulation drivers" help Enable Emulation Driver Configuration These drivers are used to emulate hardware devices, to support testing of various subsystems. For example, it is possible to write an emulator for an I2C compass such that it appears on the I2C bus and can be used just like a real hardware device. Emulators often implement special features for testing. For example a compass may support returning bogus data if the I2C bus speed is too high, or may return invalid measurements if calibration has not yet been completed. This allows for testing that high-level code can handle these situations correctly. Test coverage can therefore approach 100% if all failure conditions are emulated. *(The 'depends on' condition includes propagated dependencies from ifs and menus.)*