[X2Go-Commits] x2gobroker.git - statusflag (branch) updated: 0.0.1.0-45-g692561e
X2Go dev team
git-admin at x2go.org
Tue Jun 4 21:10:16 CEST 2013
The branch, statusflag has been updated
via 692561e8fe83789863ae6a04e6e4a747f859bc03 (commit)
from abc72963617a4c27b376efacbc46cfbe4de4237a (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:
debian/changelog | 3 +-
etc/broker/x2gobroker-sessionprofiles.conf | 3 +-
x2gobroker/brokers/zeroconf_broker.py | 7 +-
x2gobroker/defaults.py | 4 +-
x2gobroker/tests/test_broker_base.py | 4 +-
x2gobroker/tests/test_broker_inifile.py | 140 +++++++++++++++++++++++-----
x2gobroker/tests/test_broker_zeroconf.py | 4 +
7 files changed, 133 insertions(+), 32 deletions(-)
The diff of changes is:
diff --git a/debian/changelog b/debian/changelog
index 39d3dfd..05a9e92 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -20,7 +20,8 @@ x2gobroker (0.0.1.1-0~x2go1) UNRELEASED; urgency=low
- Add script: x2gobroker-testauth.
- Add enable()/disable() methods to broker backends.
- Move complete authservice logic into x2gobroker-authservice script.
- - Add cmd and directrdp session profile parameters to defaults.
+ - Add command and directrdp session profile parameters to defaults.
+ - Fix wrong usage of session option »cmd«, has to be »command«.
* /debian/control:
+ Fix --root parameter in DEB_PYTHON_INSTALL_ARGS.
+ Let bin:package x2gobroker-authservice depend on python-x2gobroker (of the
diff --git a/etc/broker/x2gobroker-sessionprofiles.conf b/etc/broker/x2gobroker-sessionprofiles.conf
index dc79a6b..8031d9e 100644
--- a/etc/broker/x2gobroker-sessionprofiles.conf
+++ b/etc/broker/x2gobroker-sessionprofiles.conf
@@ -29,6 +29,7 @@
[DEFAULT]
+command=TERMINAL
defsndport=true
useiconv=false
iconvfrom=UTF-8
@@ -52,7 +53,7 @@ applications=TERMINAL,WWWBROWSER,MAILCLIENT,OFFICE
multidisp=false
sshproxyport=22
sound=true
-rootless=false
+rootless=true
iconvto=UTF-8
soundtunnel=true
dpi=96
diff --git a/x2gobroker/brokers/zeroconf_broker.py b/x2gobroker/brokers/zeroconf_broker.py
index 5970659..6cb83ad 100644
--- a/x2gobroker/brokers/zeroconf_broker.py
+++ b/x2gobroker/brokers/zeroconf_broker.py
@@ -36,7 +36,7 @@ class X2GoBroker(base.X2GoBroker):
def list_profiles(self, username):
- list_of_profiles = {
+ _list_of_profiles = {
uuid.uuid4(): {
'user': u'',
'defsndport': True,
@@ -74,6 +74,11 @@ class X2GoBroker(base.X2GoBroker):
'pack': u'16m-jpeg',
},
}
+ list_of_profiles = {}
+ for profile_id in _list_of_profiles.keys():
+ profile = self.get_profile_defaults()
+ profile.update(_list_of_profiles[profile_id])
+ list_of_profiles[profile_id] = profile
return list_of_profiles
def select_session(self, profile_id, username=None):
diff --git a/x2gobroker/defaults.py b/x2gobroker/defaults.py
index ca70e82..8d08a33 100644
--- a/x2gobroker/defaults.py
+++ b/x2gobroker/defaults.py
@@ -160,7 +160,7 @@ X2GOBROKER_CONFIG_DEFAULTS = {
# defaults for X2Go Sessino Broker session profiles file
X2GOBROKER_SESSIONPROFILE_DEFAULTS = {
u'DEFAULT': {
- u'cmd': u'TERMINAL',
+ u'command': u'TERMINAL',
u'defsndport': True,
u'useiconv': False,
u'iconvfrom': u'UTF-8',
@@ -184,7 +184,7 @@ X2GOBROKER_SESSIONPROFILE_DEFAULTS = {
u'multidisp': False,
u'sshproxyport': 22,
u'sound': True,
- u'rootless': False,
+ u'rootless': True,
u'iconvto': u'UTF-8',
u'soundtunnel': True,
u'dpi': 96,
diff --git a/x2gobroker/tests/test_broker_base.py b/x2gobroker/tests/test_broker_base.py
index ac710b8..ff06542 100644
--- a/x2gobroker/tests/test_broker_base.py
+++ b/x2gobroker/tests/test_broker_base.py
@@ -274,7 +274,7 @@ check-credentials = false
def test_getdefaultprofile(self):
base_backend = self._init_base_backend()
_expected_profile = {
- 'cmd': 'TERMINAL',
+ 'command': 'TERMINAL',
'defsndport': True,
'useiconv': False,
'iconvfrom': 'UTF-8',
@@ -298,7 +298,7 @@ check-credentials = false
'multidisp': False,
'sshproxyport': 22,
'sound': True,
- 'rootless': False,
+ 'rootless': True,
'iconvto': 'UTF-8',
'soundtunnel': True,
'dpi': 96,
diff --git a/x2gobroker/tests/test_broker_inifile.py b/x2gobroker/tests/test_broker_inifile.py
index 35b4289..9d163eb 100644
--- a/x2gobroker/tests/test_broker_inifile.py
+++ b/x2gobroker/tests/test_broker_inifile.py
@@ -47,6 +47,96 @@ class TestX2GoBrokerBackendInifile(unittest.TestCase):
for _profile_id in _profile_ids:
self.assertTrue( ( 'default' not in inifile_backend.get_profile(_profile_id).keys() ) )
+ # TEST COMPLETION OF DEFAULTS FROM CODE IN defaults.py
+
+ def test_getprofilecompletion(self):
+ _session_profiles = """
+[DEFAULT]
+exports =
+fullscreen = false
+width = 800
+height = 600
+applications = TERMINAL, WWWBROWSER
+
+[testprofile]
+user = foo
+command = GNOME
+
+"""
+ tf = tempfile.NamedTemporaryFile()
+ print >> tf, _session_profiles
+ tf.seek(0)
+ inifile_backend = inifile.X2GoBroker(profile_config_file=tf.name)
+ _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',],
+ u'user': 'foo',
+ u'command': 'GNOME',
+ } )
+ # just testing the directrdp hard-coded defaults
+ _expected_defaults.update( {
+ u'directrdp': False,
+ } )
+ _expected_profile = copy.deepcopy(_expected_defaults)
+ _profile = inifile_backend.get_profile('testprofile')
+ print _expected_defaults
+ for key in _expected_profile.keys():
+ self.assertTrue( ( key in _profile.keys() ) )
+ for key in _profile.keys():
+ self.assertTrue( ( key in _expected_profile.keys() and _profile[key] == _expected_profile[key] ) )
+
+ # TEST COMPLETION OF DEFAULTS FROM CODE IN defaults.py
+
+ def test_getprofilecompletion(self):
+ _session_profiles = """
+[DEFAULT]
+exports =
+fullscreen = false
+width = 800
+height = 600
+applications = TERMINAL, WWWBROWSER
+
+[testprofile]
+user = foo
+command = GNOME
+
+"""
+ tf = tempfile.NamedTemporaryFile()
+ print >> tf, _session_profiles
+ tf.seek(0)
+ inifile_backend = inifile.X2GoBroker(profile_config_file=tf.name)
+ _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',],
+ u'user': 'foo',
+ u'command': 'GNOME',
+ } )
+ # just testing the directrdp hard-coded defaults
+ _expected_defaults.update( {
+ u'directrdp': False,
+ } )
+ _expected_profile = copy.deepcopy(_expected_defaults)
+ _profile = inifile_backend.get_profile('testprofile')
+ for key in _expected_profile.keys():
+ self.assertTrue( ( key in _profile.keys() ) )
+ for key in _profile.keys():
+ self.assertTrue( ( key in _expected_profile.keys() and _profile[key] == _expected_profile[key] ) )
+
+
### TEST SESSION PROFILES: get_profile_defaults()
def test_getprofiledefaults(self):
@@ -74,16 +164,16 @@ applications = TERMINAL, WWWBROWSER
[testprofile1]
user = foo
-cmd = GNOME
+command = GNOME
[testprofile2]
user = bar
-cmd = KDE
+command = KDE
fullscreen = true
[testprofile3]
user = bar
-cmd = KDE
+command = KDE
fullscreen = true
acl-users-deny = ALL
acl-users-allow = foo,bar
@@ -107,18 +197,18 @@ acl-users-order = deny-allow
_expected_profile1 = copy.deepcopy(_expected_defaults)
_expected_profile1.update({
u'user': 'foo',
- u'cmd': 'GNOME',
+ u'command': 'GNOME',
})
_expected_profile2 = copy.deepcopy(_expected_defaults)
_expected_profile2.update({
u'user': 'bar',
- u'cmd': 'KDE',
+ u'command': 'KDE',
u'fullscreen': True,
})
_expected_profile3 = copy.deepcopy(_expected_defaults)
_expected_profile3.update({
u'user': 'bar',
- u'cmd': 'KDE',
+ u'command': 'KDE',
u'fullscreen': True,
})
_profile1 = inifile_backend.get_profile('testprofile1')
@@ -154,16 +244,16 @@ acl-clients-allow = 10.0.0.0/16,10.1.0.0/16,admin-1.intern,admin-2.intern
[testprofile1]
user = foo
-cmd = GNOME
+command = GNOME
[testprofile2]
user = foo
-cmd = GNOME
+command = GNOME
acl-clients-deny = 10.0.2.0/24,ALL
[testprofile3]
user = bar
-cmd = KDE
+command = KDE
fullscreen = true
acl-users-deny = ALL
acl-users-allow = foo,bar
@@ -223,15 +313,15 @@ applications = TERMINAL, WWWBROWSER
[testprofile1]
user =
-cmd = GNOME
+command = GNOME
[testprofile2]
user =
-cmd = XFCE
+command = XFCE
[testprofile3]
user =
-cmd = KDE
+command = KDE
fullscreen = true
"""
tf = tempfile.NamedTemporaryFile()
@@ -273,21 +363,21 @@ acl-groups-order = deny-allow
[testprofile1]
user =
-cmd = GNOME
+command = GNOME
acl-users-allow = flip
acl-users-deny = ALL
acl-users-order = deny-allow
[testprofile2]
user =
-cmd = XFCE
+command = XFCE
acl-users-allow = thekla
acl-users-deny = ALL
acl-users-order = deny-allow
[testprofile3]
user =
-cmd = KDE
+command = KDE
fullscreen = true
acl-users-deny = willi
acl-users-order = deny-allow
@@ -302,40 +392,40 @@ acl-users-order = deny-allow
list_of_profile_ids = list_of_profiles.keys()
list_of_profile_ids.sort()
self.assertEqual(list_of_profile_ids, ['testprofile1'])
- self.assertEqual(list_of_profiles['testprofile1']['cmd'], 'GNOME')
+ self.assertEqual(list_of_profiles['testprofile1']['command'], 'GNOME')
username_m = 'maja'
list_of_profiles = inifile_backend.list_profiles(username_m)
list_of_profile_ids = list_of_profiles.keys()
list_of_profile_ids.sort()
self.assertEqual(list_of_profile_ids, ['testprofile1', 'testprofile2', 'testprofile3'])
- self.assertEqual(list_of_profiles['testprofile1']['cmd'], 'GNOME')
- self.assertEqual(list_of_profiles['testprofile2']['cmd'], 'XFCE')
- self.assertEqual(list_of_profiles['testprofile3']['cmd'], 'KDE')
+ self.assertEqual(list_of_profiles['testprofile1']['command'], 'GNOME')
+ self.assertEqual(list_of_profiles['testprofile2']['command'], 'XFCE')
+ self.assertEqual(list_of_profiles['testprofile3']['command'], 'KDE')
username_k = 'kassandra'
list_of_profiles = inifile_backend.list_profiles(username_k)
list_of_profile_ids = list_of_profiles.keys()
list_of_profile_ids.sort()
self.assertEqual(list_of_profile_ids, ['testprofile1', 'testprofile2', 'testprofile3'])
- self.assertEqual(list_of_profiles['testprofile1']['cmd'], 'GNOME')
- self.assertEqual(list_of_profiles['testprofile2']['cmd'], 'XFCE')
- self.assertEqual(list_of_profiles['testprofile3']['cmd'], 'KDE')
+ self.assertEqual(list_of_profiles['testprofile1']['command'], 'GNOME')
+ self.assertEqual(list_of_profiles['testprofile2']['command'], 'XFCE')
+ self.assertEqual(list_of_profiles['testprofile3']['command'], 'KDE')
username_t = 'thekla'
list_of_profiles = inifile_backend.list_profiles(username_t)
list_of_profile_ids = list_of_profiles.keys()
list_of_profile_ids.sort()
self.assertEqual(list_of_profile_ids, ['testprofile2'])
- self.assertEqual(list_of_profiles['testprofile2']['cmd'], 'XFCE')
+ self.assertEqual(list_of_profiles['testprofile2']['command'], 'XFCE')
username_w = 'willi'
list_of_profiles = inifile_backend.list_profiles(username_w)
list_of_profile_ids = list_of_profiles.keys()
list_of_profile_ids.sort()
self.assertEqual(list_of_profile_ids, ['testprofile1', 'testprofile2'])
- self.assertEqual(list_of_profiles['testprofile1']['cmd'], 'GNOME')
- self.assertEqual(list_of_profiles['testprofile2']['cmd'], 'XFCE')
+ self.assertEqual(list_of_profiles['testprofile1']['command'], 'GNOME')
+ self.assertEqual(list_of_profiles['testprofile2']['command'], 'XFCE')
### TEST: select_session() method
diff --git a/x2gobroker/tests/test_broker_zeroconf.py b/x2gobroker/tests/test_broker_zeroconf.py
index 0e97b66..1a42278 100644
--- a/x2gobroker/tests/test_broker_zeroconf.py
+++ b/x2gobroker/tests/test_broker_zeroconf.py
@@ -63,6 +63,8 @@ class TestX2GoBrokerBackendZeroconf(unittest.TestCase):
'sshport': 22,
'setdpi': 0,
'pack': u'16m-jpeg',
+ # make sure, hard-coded defaults end up in the list_profiles() output of the zeroconf backend, as well
+ 'directrdp': False,
},
}
zeroconf_backend = x2gobroker.brokers.zeroconf_broker.X2GoBroker()
@@ -73,6 +75,8 @@ class TestX2GoBrokerBackendZeroconf(unittest.TestCase):
_test_profiles = {
_key: list_of_profiles['unittest']
}
+ for key in _profiles[_key]:
+ print key, _profiles[_key][key], _test_profiles[_key][key]
self.assertEqual(_profiles, _test_profiles)
### TEST: select_profile() method
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