test_dm.py 1.4 KB

1234567891011121314151617181920212223242526272829303132333435
  1. # SPDX-License-Identifier: GPL-2.0
  2. # Copyright (C) 2020 Sean Anderson
  3. import pytest
  4. @pytest.mark.buildconfigspec('cmd_dm')
  5. def test_dm_compat(u_boot_console):
  6. """Test that each driver in `dm tree` is also listed in `dm compat`."""
  7. response = u_boot_console.run_command('dm tree')
  8. driver_index = response.find('Driver')
  9. assert driver_index != -1
  10. drivers = (line[driver_index:].split()[0]
  11. for line in response[:-1].split('\n')[2:])
  12. response = u_boot_console.run_command('dm compat')
  13. for driver in drivers:
  14. assert driver in response
  15. @pytest.mark.buildconfigspec('cmd_dm')
  16. def test_dm_drivers(u_boot_console):
  17. """Test that each driver in `dm compat` is also listed in `dm drivers`."""
  18. response = u_boot_console.run_command('dm compat')
  19. drivers = (line[:20].rstrip() for line in response[:-1].split('\n')[2:])
  20. response = u_boot_console.run_command('dm drivers')
  21. for driver in drivers:
  22. assert driver in response
  23. @pytest.mark.buildconfigspec('cmd_dm')
  24. def test_dm_static(u_boot_console):
  25. """Test that each driver in `dm static` is also listed in `dm drivers`."""
  26. response = u_boot_console.run_command('dm static')
  27. drivers = (line[:25].rstrip() for line in response[:-1].split('\n')[2:])
  28. response = u_boot_console.run_command('dm drivers')
  29. for driver in drivers:
  30. assert driver in response