[X2Go-Commits] x2gobroker.git - build-main (branch) updated: 8e3bdb8e8b0014ce0d0d4d81e763c31bc0656011
X2Go dev team
git-admin at x2go.org
Sun May 19 13:04:39 CEST 2013
The branch, build-main has been updated
via 8e3bdb8e8b0014ce0d0d4d81e763c31bc0656011 (commit)
from 5b273ab1ecaf19c40ce1ea3de05290d5a7fc46cf (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
-----------------------------------------------------------------------
Summary of changes:
x2gobroker/brokers/inifile_broker.py | 12 ++--
x2gobroker/tests/test_broker_inifile.py | 96 +++++++++++++++++++++++--------
2 files changed, 78 insertions(+), 30 deletions(-)
The diff of changes is:
diff --git a/x2gobroker/brokers/inifile_broker.py b/x2gobroker/brokers/inifile_broker.py
index 1ef5418..af33bf2 100644
--- a/x2gobroker/brokers/inifile_broker.py
+++ b/x2gobroker/brokers/inifile_broker.py
@@ -69,6 +69,10 @@ class X2GoBroker(base.X2GoBroker):
def get_profile(self, profile_id):
profile = self.session_profiles.get_section(profile_id)
+ profile_defaults = self.get_profile_defaults()
+ for key in profile_defaults.keys():
+ if key not in profile.keys():
+ profile.update({ key: profile_defaults[key] })
for key in profile.keys():
if key.startswith('acl-'):
del profile[key]
@@ -82,11 +86,7 @@ class X2GoBroker(base.X2GoBroker):
for key in profile.keys():
if not key.startswith('acl-'):
del profile[key]
+ if key.startswith('acl-') and (profile[key] == '' or profile[key] == ['']):
+ del profile[key]
return profile
- def select_profile(self, profile_name):
-
- selectprofile_output = {
- 'server': 'localhost:22',
- }
- return selectprofile_output
diff --git a/x2gobroker/tests/test_broker_inifile.py b/x2gobroker/tests/test_broker_inifile.py
index 0129d4d..dda93b1 100644
--- a/x2gobroker/tests/test_broker_inifile.py
+++ b/x2gobroker/tests/test_broker_inifile.py
@@ -85,37 +85,41 @@ fullscreen = true
user = bar
cmd = KDE
fullscreen = true
-acl-users-denied = ALL
-acl-users-allowed = foo,bar
+acl-users-deny = ALL
+acl-users-allow = foo,bar
acl-users-order = deny-allow
"""
tf = tempfile.NamedTemporaryFile()
print >> tf, _session_profiles
tf.seek(0)
inifile_backend = inifile.X2GoBroker(profile_config_file=tf.name)
- _expected_defaults = {
- 'exports': '',
- 'fullscreen': False,
- 'width': 800,
- 'height': 600,
- 'applications': ['TERMINAL','WWWBROWSER',]
- }
+ _expected_defaults = copy.deepcopy(x2gobroker.defaults.X2GOBROKER_SESSIONPROFILE_DEFAULTS['DEFAULT'])
+ for key in copy.deepcopy(_expected_defaults).keys():
+ if key.startswith('acl-'):
+ del _expected_defaults[key]
+ _expected_defaults.update( {
+ u'exports': '',
+ u'fullscreen': False,
+ u'width': 800,
+ u'height': 600,
+ u'applications': ['TERMINAL','WWWBROWSER',]
+ } )
_expected_profile1 = copy.deepcopy(_expected_defaults)
_expected_profile1.update({
- 'user': 'foo',
- 'cmd': 'GNOME',
+ u'user': 'foo',
+ u'cmd': 'GNOME',
})
_expected_profile2 = copy.deepcopy(_expected_defaults)
_expected_profile2.update({
- 'user': 'bar',
- 'cmd': 'KDE',
- 'fullscreen': True,
+ u'user': 'bar',
+ u'cmd': 'KDE',
+ u'fullscreen': True,
})
_expected_profile3 = copy.deepcopy(_expected_defaults)
_expected_profile3.update({
- 'user': 'bar',
- 'cmd': 'KDE',
- 'fullscreen': True,
+ u'user': 'bar',
+ u'cmd': 'KDE',
+ u'fullscreen': True,
})
_profile1 = inifile_backend.get_profile('testprofile1')
for key in _expected_profile1.keys():
@@ -172,17 +176,20 @@ acl-users-order = deny-allow
_expected_acl_defaults = {
'acl-clients-deny': ['ALL'],
'acl-clients-allow': ['10.0.0.0/16','10.1.0.0/16','admin-1.intern','admin-2.intern'],
+ 'acl-any-order': 'deny-allow',
}
_expected_acls_profile1 = copy.deepcopy(_expected_acl_defaults)
_expected_acls_profile2 = copy.deepcopy(_expected_acl_defaults)
_expected_acls_profile2.update({
'acl-clients-deny': ['10.0.2.0/24','ALL'],
+ 'acl-any-order': 'deny-allow',
})
_expected_acls_profile3 = copy.deepcopy(_expected_acl_defaults)
_expected_acls_profile3.update({
'acl-users-deny': ['ALL'],
'acl-users-allow': ['foo','bar'],
'acl-users-order': 'deny-allow',
+ 'acl-any-order': 'deny-allow',
})
_acls_profile1 = inifile_backend.get_profile_acls('testprofile1')
for key in _expected_acls_profile1.keys():
@@ -329,14 +336,55 @@ fullscreen = true
self.assertEqual(list_of_profiles['testprofile2']['cmd'], 'XFCE')
self.assertEqual(list_of_profiles['testprofile3']['cmd'], 'KDE')
- ### TEST: select_profile() method
+ ### TEST: select_session() method
+
+ def test_sessionselection(self):
+ _config_defaults = copy.deepcopy(x2gobroker.defaults.X2GOBROKER_CONFIG_DEFAULTS)
+ _config = """
+[global]
+default-user-db = testsuite
+default-group-db = testsuite
-# def test_profileselection(self):
-# _output = {
-# 'server': 'localhost:22',
-# }
-# zeroconf_backend = x2gobroker.brokers.zeroconf.X2GoBroker()
-# self.assertEqual(zeroconf_backend.select_profile('profile_bar'), _output)
+[inifile]
+enable = true
+"""
+ tfc = tempfile.NamedTemporaryFile()
+ print >> tfc, _config
+ tfc.seek(0)
+
+ _session_profiles = """
+[testprofile1]
+name = TEST-1
+host = test-1.local
+
+[testprofile2]
+name = TEST-2
+host = test-2.local
+
+[testprofile3]
+name = TEST-3
+host = test-3.local
+sshport = 44566
+"""
+ tfs = tempfile.NamedTemporaryFile()
+ print >> tfs, _session_profiles
+ tfs.seek(0)
+ inifile_backend = inifile.X2GoBroker(config_file=tfc.name, config_defaults=_config_defaults, profile_config_file=tfs.name)
+ _expected_result_1 = {
+ 'server': 'test-1.local',
+ 'port': 22,
+ }
+ _expected_result_2 = {
+ 'server': 'test-2.local',
+ 'port': 22,
+ }
+ _expected_result_3 = {
+ 'server': 'test-3.local',
+ 'port': 44566,
+ }
+ self.assertEqual(inifile_backend.select_session('TEST-1'), _expected_result_1)
+ self.assertEqual(inifile_backend.select_session('TEST-2'), _expected_result_2)
+ self.assertEqual(inifile_backend.select_session('TEST-3'), _expected_result_3)
def test_suite():
hooks/post-receive
--
x2gobroker.git (HTTP(S) Session broker for X2Go)
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "x2gobroker.git" (HTTP(S) Session broker for X2Go).
More information about the x2go-commits
mailing list