helpers.py 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. # This file is part of Radicale - CalDAV and CardDAV server
  2. # Copyright © 2008 Nicolas Kandel
  3. # Copyright © 2008 Pascal Halter
  4. # Copyright © 2008-2017 Guillaume Ayoub
  5. # Copyright © 2017-2019 Unrud <unrud@outlook.com>
  6. #
  7. # This library is free software: you can redistribute it and/or modify
  8. # it under the terms of the GNU General Public License as published by
  9. # the Free Software Foundation, either version 3 of the License, or
  10. # (at your option) any later version.
  11. #
  12. # This library is distributed in the hope that it will be useful,
  13. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. # GNU General Public License for more details.
  16. #
  17. # You should have received a copy of the GNU General Public License
  18. # along with Radicale. If not, see <http://www.gnu.org/licenses/>.
  19. """
  20. Radicale Helpers module.
  21. This module offers helpers to use in tests.
  22. """
  23. import os
  24. from radicale import config, types
  25. EXAMPLES_FOLDER: str = os.path.join(os.path.dirname(__file__), "static")
  26. def get_file_path(file_name: str) -> str:
  27. return os.path.join(EXAMPLES_FOLDER, file_name)
  28. def get_file_content(file_name: str) -> str:
  29. with open(get_file_path(file_name), encoding="utf-8") as f:
  30. return f.read()
  31. def configuration_to_dict(configuration: config.Configuration) -> types.CONFIG:
  32. """Convert configuration to a dict with raw values."""
  33. return {section: {option: configuration.get_raw(section, option)
  34. for option in configuration.options(section)
  35. if not option.startswith("_")}
  36. for section in configuration.sections()
  37. if not section.startswith("_")}