blob: 503bc08fbcefdb289c4d6c72e9081216b301e47a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
from unittest import mock
from cloudinit import stages
from cloudinit.cmd.devel import read_cfg_paths
from tests.unittests.util import TEST_INSTANCE_ID, FakeDataSource
class TestReadCfgPaths:
def test_read_cfg_paths_fetches_cached_datasource(self, tmpdir):
init = stages.Init()
init._cfg = {
"system_info": {
"distro": "ubuntu",
"paths": {"cloud_dir": tmpdir, "run_dir": tmpdir},
}
}
with mock.patch("cloudinit.cmd.devel.Init") as m_init:
with mock.patch.object(init, "_restore_from_cache") as restore:
restore.return_value = FakeDataSource(paths=init.paths)
with mock.patch(
"cloudinit.util.read_conf_from_cmdline", return_value={}
):
m_init.return_value = init
paths = read_cfg_paths()
assert paths.get_ipath() is None
paths = read_cfg_paths(fetch_existing_datasource="trust")
assert (
paths.get_ipath() == f"/var/lib/cloud/instances/{TEST_INSTANCE_ID}"
)
|