test_repo_info.py 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. from flexmock import flexmock
  2. from borgmatic.actions import repo_info as module
  3. def test_run_repo_info_does_not_raise():
  4. flexmock(module.logger).answer = lambda message: None
  5. flexmock(module.borgmatic.config.validate).should_receive('repositories_match').and_return(True)
  6. flexmock(module.borgmatic.borg.repo_info).should_receive('display_repository_info')
  7. repo_info_arguments = flexmock(repository=flexmock(), json=False)
  8. list(
  9. module.run_repo_info(
  10. repository={'path': 'repo'},
  11. config={},
  12. local_borg_version=None,
  13. repo_info_arguments=repo_info_arguments,
  14. global_arguments=flexmock(log_json=False),
  15. local_path=None,
  16. remote_path=None,
  17. )
  18. )
  19. def test_run_repo_info_parses_json():
  20. flexmock(module.logger).answer = lambda message: None
  21. flexmock(module.borgmatic.config.validate).should_receive('repositories_match').and_return(True)
  22. flexmock(module.borgmatic.borg.repo_info).should_receive('display_repository_info').and_return(
  23. flexmock()
  24. )
  25. parsed_json = flexmock()
  26. flexmock(module.borgmatic.actions.json).should_receive('parse_json').and_return(parsed_json)
  27. repo_info_arguments = flexmock(repository=flexmock(), json=True)
  28. list(
  29. module.run_repo_info(
  30. repository={'path': 'repo'},
  31. config={},
  32. local_borg_version=None,
  33. repo_info_arguments=repo_info_arguments,
  34. global_arguments=flexmock(log_json=False),
  35. local_path=None,
  36. remote_path=None,
  37. )
  38. ) == [parsed_json]