~ubuntu-branches/ubuntu/saucy/ubuntu-system-service/saucy

« back to all changes in this revision

Viewing changes to test/interactive/test_systemd

  • Committer: Package Import Robot
  • Author(s): Michael Vogt, Rodrigo Moya
  • Date: 2011-11-28 11:48:38 UTC
  • Revision ID: package-import@ubuntu.com-20111128114838-umgqjjb36ds7dvlm
Tags: 0.2.1
[ Rodrigo Moya ]
* merged lp:~rodrigo-moya/system-service/new-interfaces:
  - add org.freedesktop.hostname1 and org.freedesktop.locale1
    interfaces for systemd compatbility

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/usr/bin/python
 
2
 
 
3
import dbus
 
4
import os
 
5
import unittest
 
6
 
 
7
class TestSystemd(unittest.TestCase):
 
8
 
 
9
      def setUp(self):
 
10
            self.system_bus = dbus.SystemBus()
 
11
            self.localed = dbus.Interface(
 
12
                  self.system_bus.get_object ("org.freedesktop.locale1", "/org/freedesktop/locale1"),
 
13
                  "org.freedesktop.locale1")
 
14
            self.localed_props = dbus.Interface(
 
15
                  self.system_bus.get_object ("org.freedesktop.locale1", "/org/freedesktop/locale1"),
 
16
                  "org.freedesktop.DBus.Properties")
 
17
 
 
18
            self.hostnamed = dbus.Interface(
 
19
                  self.system_bus.get_object ("org.freedesktop.hostname1", "/org/freedesktop/hostname1"),
 
20
                  "org.freedesktop.hostname1")
 
21
            self.hostnamed_props = dbus.Interface(
 
22
                  self.system_bus.get_object ("org.freedesktop.hostname1", "/org/freedesktop/hostname1"),
 
23
                  "org.freedesktop.DBus.Properties")
 
24
 
 
25
      def test_hostname(self):
 
26
            old_hostname = self.hostnamed_props.Get("org.freedesktop.hostname1", "Hostname")
 
27
            new_hostname = "ubuntu-system-service"
 
28
 
 
29
            self.hostnamed.SetHostname(new_hostname, True)
 
30
            assert(new_hostname == self.hostnamed_props.Get("org.freedesktop.hostname1", "Hostname"))
 
31
 
 
32
            # Now restore to the previous value
 
33
            self.hostnamed.SetHostname(old_hostname, True)
 
34
            assert(old_hostname == self.hostnamed_props.Get("org.freedesktop.hostname1", "Hostname"))
 
35
 
 
36
      def test_static_hostname(self):
 
37
            old_hostname = self.hostnamed_props.Get("org.freedesktop.hostname1", "StaticHostname")
 
38
            new_hostname = "ubuntu-system-service"
 
39
 
 
40
            self.hostnamed.SetStaticHostname(new_hostname, True)
 
41
            assert(new_hostname == self.hostnamed_props.Get("org.freedesktop.hostname1", "StaticHostname"))
 
42
            assert(new_hostname == open("/etc/hostname").read())
 
43
 
 
44
            # Now restore to the previous value
 
45
            self.hostnamed.SetStaticHostname(old_hostname, True)
 
46
            assert(old_hostname == self.hostnamed_props.Get("org.freedesktop.hostname1", "StaticHostname"))
 
47
            assert(old_hostname == open("/etc/hostname").read())
 
48
 
 
49
      def test_set_locale(self):
 
50
            old_locale = self.localed_props.Get("org.freedesktop.locale1", "Locale")
 
51
            new_locale = [ "LANG=en_US.UTF-8", "LC_MONETARY=es" ]
 
52
 
 
53
            self.localed.SetLocale(new_locale, True)
 
54
            assert(new_locale == self.localed_props.Get("org.freedesktop.locale1", "Locale"))
 
55
 
 
56
            # Now restore to the previous value
 
57
            self.localed.SetLocale(old_locale, True)
 
58
            assert(old_locale == self.localed_props.Get("org.freedesktop.locale1", "Locale"))
 
59
 
 
60
      def test_keyboard(self):
 
61
            old_model = self.localed_props.Get("org.freedesktop.locale1", "X11Model")
 
62
            old_layout = self.localed_props.Get("org.freedesktop.locale1", "X11Layout")
 
63
            old_variant = self.localed_props.Get("org.freedesktop.locale1", "X11Variant")
 
64
            old_options = self.localed_props.Get("org.freedesktop.locale1", "X11Options")
 
65
 
 
66
            new_model = "pc105"
 
67
            new_layout = "es"
 
68
            new_variant = ""
 
69
            new_options = ""
 
70
 
 
71
            self.localed.SetX11Keyboard(new_layout, new_model, new_variant, new_options, True, True)
 
72
            assert(new_model == self.localed_props.Get("org.freedesktop.locale1", "X11Model"))
 
73
            assert(new_layout == self.localed_props.Get("org.freedesktop.locale1", "X11Layout"))
 
74
            assert(new_variant == self.localed_props.Get("org.freedesktop.locale1", "X11Variant"))
 
75
            assert(new_options == self.localed_props.Get("org.freedesktop.locale1", "X11Options"))
 
76
 
 
77
            # Now restore to the previous value
 
78
            self.localed.SetX11Keyboard(old_layout, old_model, old_variant, old_options, True, True)
 
79
            assert(old_model == self.localed_props.Get("org.freedesktop.locale1", "X11Model"))
 
80
            assert(old_layout == self.localed_props.Get("org.freedesktop.locale1", "X11Layout"))
 
81
            assert(old_variant == self.localed_props.Get("org.freedesktop.locale1", "X11Variant"))
 
82
            assert(old_options == self.localed_props.Get("org.freedesktop.locale1", "X11Options"))
 
83
 
 
84
if __name__ == "__main__":
 
85
    unittest.main()