[PATCH 12/12] test: add test-gnss
--- Makefile.am|3 +- test/test-gnss | 91 2 files changed, 93 insertions(+), 1 deletions(-) create mode 100755 test/test-gnss diff --git a/Makefile.am b/Makefile.am index b5a3d6e..626a310 100644 --- a/Makefile.am +++ b/Makefile.am @@ -509,7 +509,8 @@ test_scripts = test/backtrace \ test/test-sms \ test/test-message-waiting \ test/cdma-connman-disable \ - test/cdma-connman-enable + test/cdma-connman-enable \ + test/test-gnss if TEST testdir = $(pkglibdir)/test diff --git a/test/test-gnss b/test/test-gnss new file mode 100755 index 000..d7d9027 --- /dev/null +++ b/test/test-gnss @@ -0,0 +1,91 @@ +#!/usr/bin/python + +import gobject +import sys +import os + +import dbus +import dbus.service +import dbus.mainloop.glib + +class PositioningAgent(dbus.service.Object): + @dbus.service.method(org.ofono.PositioningRequestAgent, + in_signature=, out_signature=) + def Release(self): + print Release + mainloop.quit() + + @dbus.service.method(org.ofono.PositioningRequestAgent, + in_signature=s, out_signature=) + def Request(self, xml): + print positioning data: %s % (xml) + + @dbus.service.method(org.ofono.PositioningRequestAgent, + in_signature=, out_signature=) + def ResetAssistanceData(self): + print Reset Assistance Data request received + +def print_menu(): + print Select test case + print --- + print [0] SendPositioningElement + print [1] RegisterPositioningRequestAgent + print [2] UnregisterPositioningRequestAgent + print [x] Exit + print --- + +def stdin_handler(fd, condition, positioning, path): + + in_key = os.read(fd.fileno(), 8).rstrip() + if in_key == '0': + xml = raw_input('type the element and press enter: ') + try: + positioning.SendPositioningElement(dbus.String(xml)) + print ok + except dbus.DBusException, e: + print Unable to send positioning element + + elif in_key == '1': + try: + positioning.RegisterPositioningRequestAgent(/test/posagent) + print ok + except dbus.DBusException, e: + print Unable to register positioning agent + + elif in_key == '2': + try: + positioning.UnregisterPositioningRequestAgent(path) + print ok + except dbus.DBusException, e: + print Unable to unregister positioning agent + elif in_key == 'x': + sys.exit(1) + + return True + +if __name__ == __main__: + + if len(sys.argv) 1: + sys.exit(1) + + dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) + bus = dbus.SystemBus() + manager = dbus.Interface(bus.get_object('org.ofono', '/'), + 'org.ofono.Manager') + + modems = manager.GetModems() + for path, properties in modems: + if org.ofono.AssistedSatelliteNavigation not in properties[Interfaces]: + continue + + positioning = dbus.Interface(bus.get_object('org.ofono', path), + 'org.ofono.AssistedSatelliteNavigation') + + path = /test/posagent + agent = PositioningAgent(bus, path) + + print_menu() + + gobject.io_add_watch(sys.stdin, gobject.IO_IN, stdin_handler, positioning, path) + mainloop = gobject.MainLoop() + mainloop.run() -- 1.7.0.4 ___ ofono mailing list ofono@ofono.org http://lists.ofono.org/listinfo/ofono
[PATCH 12/12] test: add test-gnss
--- Makefile.am|3 +- test/test-gnss | 91 2 files changed, 93 insertions(+), 1 deletions(-) create mode 100755 test/test-gnss diff --git a/Makefile.am b/Makefile.am index 3dae7f4..daa5dd0 100644 --- a/Makefile.am +++ b/Makefile.am @@ -503,7 +503,8 @@ test_scripts = test/backtrace \ test/cdma-hangup \ test/disable-call-forwarding \ test/list-messages \ - test/test-sms + test/test-sms \ + test/test-gnss if TEST testdir = $(pkglibdir)/test diff --git a/test/test-gnss b/test/test-gnss new file mode 100755 index 000..d7d9027 --- /dev/null +++ b/test/test-gnss @@ -0,0 +1,91 @@ +#!/usr/bin/python + +import gobject +import sys +import os + +import dbus +import dbus.service +import dbus.mainloop.glib + +class PositioningAgent(dbus.service.Object): + @dbus.service.method(org.ofono.PositioningRequestAgent, + in_signature=, out_signature=) + def Release(self): + print Release + mainloop.quit() + + @dbus.service.method(org.ofono.PositioningRequestAgent, + in_signature=s, out_signature=) + def Request(self, xml): + print positioning data: %s % (xml) + + @dbus.service.method(org.ofono.PositioningRequestAgent, + in_signature=, out_signature=) + def ResetAssistanceData(self): + print Reset Assistance Data request received + +def print_menu(): + print Select test case + print --- + print [0] SendPositioningElement + print [1] RegisterPositioningRequestAgent + print [2] UnregisterPositioningRequestAgent + print [x] Exit + print --- + +def stdin_handler(fd, condition, positioning, path): + + in_key = os.read(fd.fileno(), 8).rstrip() + if in_key == '0': + xml = raw_input('type the element and press enter: ') + try: + positioning.SendPositioningElement(dbus.String(xml)) + print ok + except dbus.DBusException, e: + print Unable to send positioning element + + elif in_key == '1': + try: + positioning.RegisterPositioningRequestAgent(/test/posagent) + print ok + except dbus.DBusException, e: + print Unable to register positioning agent + + elif in_key == '2': + try: + positioning.UnregisterPositioningRequestAgent(path) + print ok + except dbus.DBusException, e: + print Unable to unregister positioning agent + elif in_key == 'x': + sys.exit(1) + + return True + +if __name__ == __main__: + + if len(sys.argv) 1: + sys.exit(1) + + dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) + bus = dbus.SystemBus() + manager = dbus.Interface(bus.get_object('org.ofono', '/'), + 'org.ofono.Manager') + + modems = manager.GetModems() + for path, properties in modems: + if org.ofono.AssistedSatelliteNavigation not in properties[Interfaces]: + continue + + positioning = dbus.Interface(bus.get_object('org.ofono', path), + 'org.ofono.AssistedSatelliteNavigation') + + path = /test/posagent + agent = PositioningAgent(bus, path) + + print_menu() + + gobject.io_add_watch(sys.stdin, gobject.IO_IN, stdin_handler, positioning, path) + mainloop = gobject.MainLoop() + mainloop.run() -- 1.7.0.4 ___ ofono mailing list ofono@ofono.org http://lists.ofono.org/listinfo/ofono