113 lines
2.5 KiB
Python
113 lines
2.5 KiB
Python
from dcos import config
|
|
|
|
import pytest
|
|
|
|
|
|
@pytest.fixture
|
|
def conf():
|
|
return config.Toml(_conf())
|
|
|
|
|
|
def test_get_property(conf):
|
|
conf['dcos.mesos_uri'] == 'zk://localhost/mesos'
|
|
|
|
|
|
def test_get_partial_property(conf):
|
|
conf['dcos'] == config.Toml({
|
|
'user': 'group',
|
|
'mesos_uri': 'zk://localhost/mesos'
|
|
})
|
|
|
|
|
|
def test_iterator(conf):
|
|
assert (sorted(list(conf.property_items())) == [
|
|
('dcos.mesos_uri', 'zk://localhost/mesos'),
|
|
('dcos.user', 'principal'),
|
|
('package.repo_uri', 'git://localhost/mesosphere/package-repo.git'),
|
|
])
|
|
|
|
|
|
@pytest.fixture
|
|
def mutable_conf():
|
|
return config.MutableToml(_conf())
|
|
|
|
|
|
def test_mutable_unset_property(mutable_conf):
|
|
expect = config.MutableToml({
|
|
'dcos': {
|
|
'user': 'principal',
|
|
'mesos_uri': 'zk://localhost/mesos'
|
|
},
|
|
'package': {}
|
|
})
|
|
|
|
del mutable_conf['package.repo_uri']
|
|
|
|
assert mutable_conf == expect
|
|
|
|
|
|
def test_mutable_set_property(mutable_conf):
|
|
expect = config.MutableToml({
|
|
'dcos': {
|
|
'user': 'group',
|
|
'mesos_uri': 'zk://localhost/mesos'
|
|
},
|
|
'package': {
|
|
'repo_uri': 'git://localhost/mesosphere/package-repo.git'
|
|
}
|
|
})
|
|
|
|
mutable_conf['dcos.user'] = 'group'
|
|
|
|
assert mutable_conf == expect
|
|
|
|
|
|
def test_mutable_test_deep_property(mutable_conf):
|
|
expect = config.MutableToml({
|
|
'dcos': {
|
|
'user': 'principal',
|
|
'mesos_uri': 'zk://localhost/mesos'
|
|
},
|
|
'package': {
|
|
'repo_uri': 'git://localhost/mesosphere/package-repo.git'
|
|
},
|
|
'new': {
|
|
'key': 42
|
|
},
|
|
})
|
|
|
|
mutable_conf['new.key'] = 42
|
|
|
|
assert mutable_conf == expect
|
|
|
|
|
|
def test_mutable_get_property(mutable_conf):
|
|
mutable_conf['dcos.mesos_uri'] == 'zk://localhost/mesos'
|
|
|
|
|
|
def test_mutable_get_partial_property(mutable_conf):
|
|
mutable_conf['dcos'] == config.MutableToml({
|
|
'user': 'group',
|
|
'mesos_uri': 'zk://localhost/mesos'
|
|
})
|
|
|
|
|
|
def test_mutable_iterator(mutable_conf):
|
|
assert (sorted(list(mutable_conf.property_items())) == [
|
|
('dcos.mesos_uri', 'zk://localhost/mesos'),
|
|
('dcos.user', 'principal'),
|
|
('package.repo_uri', 'git://localhost/mesosphere/package-repo.git'),
|
|
])
|
|
|
|
|
|
def _conf():
|
|
return {
|
|
'dcos': {
|
|
'user': 'principal',
|
|
'mesos_uri': 'zk://localhost/mesos'
|
|
},
|
|
'package': {
|
|
'repo_uri': 'git://localhost/mesosphere/package-repo.git'
|
|
}
|
|
}
|