• Lars-Peter Clausen's avatar
    iio: Add basic unit test for iio_format_value() · 0bf49ffb
    Lars-Peter Clausen authored
    The IIO core provides a function to do formatting of fixedpoint numbers.
    
    In the past there have been some issues with the implementation of the
    function where for example negative numbers were not handled correctly.
    
    Introduce a basic unit test based on kunit that tests the function and
    ensures that the generated output matches the expected output.
    
    This gives us some confidence that future modifications to the function
    implementation will not break ABI compatibility.
    
    To run the unit tests follow the kunit documentation and add
    
      CONFIG_IIO=y
      CONFIG_IIO_TEST_FORMAT=y
    
    to the .kunitconfig and run
    
      > ./tools/testing/kunit/kunit.py run
      Configuring KUnit Kernel ...
      Building KUnit Kernel ...
      Starting KUnit Kernel ...
      ============================================================
      ======== [PASSED] iio-format ========
      [PASSED] iio_test_iio_format_value_integer
      [PASSED] iio_test_iio_format_value_fixedpoint
      [PASSED] iio_test_iio_format_value_fractional
      [PASSED] iio_test_iio_format_value_fractional_log2
      [PASSED] iio_test_iio_format_value_multiple
      ============================================================
      Testing complete. 21 tests run. 0 failed. 0 crashed.
      Elapsed time: 8.242s total, 0.001s configuring, 3.865s building, 0.000s running
    Signed-off-by: default avatarLars-Peter Clausen <lars@metafoo.de>
    Link: https://lore.kernel.org/r/20201215191743.2725-3-lars@metafoo.deSigned-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
    0bf49ffb
Kconfig 221 Bytes