[X2Go-Commits] x2gobroker.git - statusflag (branch) updated: 8e3bdb8e8b0014ce0d0d4d81e763c31bc0656011
X2Go dev team
git-admin at x2go.org
Tue Jun 4 21:09:35 CEST 2013
The branch, statusflag 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