Store configs used to create an archive in the archive and add borgmatic bootstrap (#697).
Merge pull request #71 from diivi/feat/store-config-in-archive
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
import argparse
|
||||
|
||||
import pytest
|
||||
from flexmock import flexmock
|
||||
|
||||
@@ -298,6 +300,13 @@ def test_parse_arguments_disallows_paths_unless_action_consumes_it():
|
||||
module.parse_arguments('--config', 'myconfig', '--path', 'test')
|
||||
|
||||
|
||||
def test_parse_arguments_disallows_other_actions_with_config_bootstrap():
|
||||
flexmock(module.collect).should_receive('get_default_config_paths').and_return(['default'])
|
||||
|
||||
with pytest.raises(ValueError):
|
||||
module.parse_arguments('config', 'bootstrap', '--repository', 'test.borg', 'list')
|
||||
|
||||
|
||||
def test_parse_arguments_allows_archive_with_extract():
|
||||
flexmock(module.collect).should_receive('get_default_config_paths').and_return(['default'])
|
||||
|
||||
@@ -523,3 +532,26 @@ def test_parse_arguments_extract_with_check_only_extract_does_not_raise():
|
||||
flexmock(module.collect).should_receive('get_default_config_paths').and_return(['default'])
|
||||
|
||||
module.parse_arguments('extract', '--archive', 'name', 'check', '--only', 'extract')
|
||||
|
||||
|
||||
def test_merging_two_subparser_collections_merges_their_choices():
|
||||
top_level_parser = argparse.ArgumentParser()
|
||||
|
||||
subparsers = top_level_parser.add_subparsers()
|
||||
subparser1 = subparsers.add_parser('subparser1')
|
||||
|
||||
subparser2 = subparsers.add_parser('subparser2')
|
||||
subsubparsers = subparser2.add_subparsers()
|
||||
subsubparser1 = subsubparsers.add_parser('subsubparser1')
|
||||
|
||||
merged_subparsers = argparse._SubParsersAction(
|
||||
None, None, metavar=None, dest='merged', parser_class=None
|
||||
)
|
||||
|
||||
merged_subparsers = module.merge_subparsers(subparsers, subsubparsers)
|
||||
|
||||
assert merged_subparsers.choices == {
|
||||
'subparser1': subparser1,
|
||||
'subparser2': subparser2,
|
||||
'subsubparser1': subsubparser1,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user