test_hints.py 969 B

1234567891011121314151617181920212223242526272829303132333435
  1. #!/usr/bin/env python
  2. #
  3. # SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
  4. # SPDX-License-Identifier: Apache-2.0
  5. import os
  6. import sys
  7. import tempfile
  8. import unittest
  9. import yaml
  10. CWD = os.path.join(os.path.dirname(__file__))
  11. ERR_OUT_YML = os.path.join(CWD, 'error_output.yml')
  12. try:
  13. from idf_py_actions.tools import generate_hints
  14. except ImportError:
  15. sys.path.append(os.path.join(CWD, '..'))
  16. from idf_py_actions.tools import generate_hints
  17. class TestHintsMassages(unittest.TestCase):
  18. def test_output(self) -> None:
  19. with open(ERR_OUT_YML) as f:
  20. error_output = yaml.safe_load(f)
  21. for error, hint in error_output.items():
  22. with tempfile.NamedTemporaryFile(mode='w') as f:
  23. f.write(error)
  24. f.flush()
  25. for generated_hint in generate_hints(f.name):
  26. self.assertEqual(generated_hint, hint)
  27. if __name__ == '__main__':
  28. unittest.main()