2
0

test_list.py 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. from flexmock import flexmock
  2. from borgmatic.actions import list as module
  3. def test_run_list_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_list).should_receive('resolve_archive_name').and_return(
  7. flexmock()
  8. )
  9. flexmock(module.borgmatic.actions.arguments).should_receive('update_arguments').and_return(
  10. flexmock()
  11. )
  12. flexmock(module.borgmatic.borg.list).should_receive('list_archive')
  13. list_arguments = flexmock(
  14. repository=flexmock(), archive=flexmock(), json=False, find_paths=None
  15. )
  16. list(
  17. module.run_list(
  18. repository={'path': 'repo'},
  19. config={},
  20. local_borg_version=None,
  21. list_arguments=list_arguments,
  22. global_arguments=flexmock(log_json=False),
  23. local_path=None,
  24. remote_path=None,
  25. )
  26. )
  27. def test_run_list_produces_json():
  28. flexmock(module.logger).answer = lambda message: None
  29. flexmock(module.borgmatic.config.validate).should_receive('repositories_match').and_return(True)
  30. flexmock(module.borgmatic.borg.repo_list).should_receive('resolve_archive_name').and_return(
  31. flexmock()
  32. )
  33. flexmock(module.borgmatic.actions.arguments).should_receive('update_arguments').and_return(
  34. flexmock()
  35. )
  36. flexmock(module.borgmatic.borg.list).should_receive('list_archive').and_return(flexmock())
  37. parsed_json = flexmock()
  38. flexmock(module.borgmatic.actions.json).should_receive('parse_json').and_return(parsed_json)
  39. list_arguments = flexmock(repository=flexmock(), archive=flexmock(), json=True)
  40. assert list(
  41. module.run_list(
  42. repository={'path': 'repo'},
  43. config={},
  44. local_borg_version=None,
  45. list_arguments=list_arguments,
  46. global_arguments=flexmock(log_json=False),
  47. local_path=None,
  48. remote_path=None,
  49. )
  50. ) == [parsed_json]