def test_set(self): from kamaki.cli.config import Config, CLOUD_PREFIX _cnf = Config(path=self.f.name) with patch( 'kamaki.cli.config.Config._cloud_name', return_value='cn') as _cloud_name: with patch( 'kamaki.cli.config.Config.set_cloud', return_value='sc') as set_cloud: self.assertEqual( 'sc', _cnf.set('%s.sec' % CLOUD_PREFIX, 'opt', 'val')) self.assertEqual( _cloud_name.mock_calls[-1], call('%s "sec"' % CLOUD_PREFIX)) self.assertEqual( set_cloud.mock_calls[-1], call('cn', 'opt', 'val')) self.assertTrue(len(_cnf.items('global')) > 0) self.assertEqual(None, _cnf.set('global', 'opt', 'val')) self.assertTrue(('opt', 'val') in _cnf.items('global')) self.assertTrue(len(_cnf.items('new')) == 0) self.assertEqual(None, _cnf.set('new', 'opt', 'val')) self.assertTrue(('opt', 'val') in _cnf.items('new'))
def test_items(self, _get_dict): from kamaki.cli.config import Config _cnf = Config(path=self.f.name) self.assertEqual(sorted([('k1', 'v1'), ('k2', 'v2')]), sorted(_cnf.items('opt', 'boolean'))) _get_dict.assert_called_once_with('opt', 'boolean')
def test_items(self, _get_dict): from kamaki.cli.config import Config _cnf = Config(path=self.f.name) self.assertEqual( sorted([('k1', 'v1'), ('k2', 'v2')]), sorted(_cnf.items('opt', 'boolean'))) _get_dict.assert_called_once_with('opt', 'boolean')
def test_set(self): from kamaki.cli.config import Config, CLOUD_PREFIX _cnf = Config(path=self.f.name) with patch('kamaki.cli.config.Config.cloud_name', return_value='cn') as cloud_name: with patch('kamaki.cli.config.Config.set_cloud', return_value='sc') as set_cloud: self.assertEqual( 'sc', _cnf.set('%s.sec' % CLOUD_PREFIX, 'opt', 'val')) self.assertEqual(cloud_name.mock_calls[-1], call('%s "sec"' % CLOUD_PREFIX)) self.assertEqual(set_cloud.mock_calls[-1], call('cn', 'opt', 'val')) self.assertTrue(len(_cnf.items('global')) > 0) self.assertEqual(None, _cnf.set('global', 'opt', 'val')) self.assertTrue(('opt', 'val') in _cnf.items('global')) self.assertTrue(len(_cnf.items('new')) == 0) self.assertEqual(None, _cnf.set('new', 'opt', 'val')) self.assertTrue(('opt', 'val') in _cnf.items('new'))
def test_remove_option(self): from kamaki.cli.config import Config _cnf = Config(path=self.f.name) self.assertEqual(len(_cnf.items('no-section')), 0) _cnf.remove_option('no-section', 'opt', False) self.assertEqual(len(_cnf.items('no-section')), 0) _cnf.remove_option('no-section', 'opt', True) self.assertEqual(len(_cnf.items('no-section')), 0) opt_num = len(_cnf.items('global')) self.assertTrue(opt_num > 0) _cnf.remove_option('global', 'file_cli', False) self.assertEqual(len(_cnf.items('global')), opt_num) _cnf.remove_option('global', 'file_cli', True) self.assertEqual(len(_cnf.items('global')), opt_num - 1) _cnf.set('global', 'server_cli', 'alt-server') self.assertTrue(('server_cli', 'alt-server') in _cnf.items('global')) self.assertFalse(('server_cli', 'cyclades') in _cnf.items('global')) _cnf.remove_option('global', 'server_cli', False) self.assertFalse(('server_cli', 'alt-server') in _cnf.items('global')) self.assertTrue(('server_cli', 'cyclades') in _cnf.items('global')) _cnf.remove_option('global', 'server_cli', True) self.assertFalse(('server_cli', 'alt-server') in _cnf.items('global')) self.assertFalse(('server_cli', 'cyclades') in _cnf.items('global'))