summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorasanoaozora <fifitaneki@hotmail.com>2016-10-18 01:30:38 +0200
committerasanoaozora <fifitaneki@hotmail.com>2016-10-18 01:30:38 +0200
commitb8c411e899196be159a49d8a6ce054d5588b69f5 (patch)
treedd0ad1100e3d16db52b54b0aff69affbcf962a2e
parent86145b863cc8add76bc98085eddd51309659f76f (diff)
downloadpoi-service-b8c411e899196be159a49d8a6ce054d5588b69f5.tar.gz
fix error in check session active, update test scripts
-rwxr-xr-xsrc/navigation/kill_navit3
-rw-r--r--src/navigation/map-viewer/session-server-plugin/genivi_mapviewer_session.cxx3
-rw-r--r--src/navigation/navigation-core/session-server-plugin/genivi_navigationcore_session.cxx3
-rwxr-xr-xsrc/navigation/run-capi2
-rwxr-xr-xtest/navigation/test-map-viewer-control-capi.py8
-rwxr-xr-xtest/navigation/test-map-viewer-control.py94
6 files changed, 74 insertions, 39 deletions
diff --git a/src/navigation/kill_navit b/src/navigation/kill_navit
new file mode 100755
index 0000000..fb06291
--- /dev/null
+++ b/src/navigation/kill_navit
@@ -0,0 +1,3 @@
+#!/bin/sh
+echo 'kill navit'
+kill -9 `ps -ef | grep navit | grep -v grep | awk '{print $2}'`
diff --git a/src/navigation/map-viewer/session-server-plugin/genivi_mapviewer_session.cxx b/src/navigation/map-viewer/session-server-plugin/genivi_mapviewer_session.cxx
index cb7d59e..993d457 100644
--- a/src/navigation/map-viewer/session-server-plugin/genivi_mapviewer_session.cxx
+++ b/src/navigation/map-viewer/session-server-plugin/genivi_mapviewer_session.cxx
@@ -94,7 +94,8 @@ class SessionServerStub : public SessionStubDefault
dbg(lvl_debug,"enter\n");
if (!mp_handles[_sessionHandle])
_error = Session::deleteSessionError::SESSION_ERROR_SESSIONNOTAVAILABLE;
- delete(mp_handles[_sessionHandle]);
+ else
+ delete(mp_handles[_sessionHandle]);
mp_handles[_sessionHandle]=NULL;
fireSessionDeletedEvent(_sessionHandle);
_reply(_error);
diff --git a/src/navigation/navigation-core/session-server-plugin/genivi_navigationcore_session.cxx b/src/navigation/navigation-core/session-server-plugin/genivi_navigationcore_session.cxx
index 4de1a7f..8bd3b48 100644
--- a/src/navigation/navigation-core/session-server-plugin/genivi_navigationcore_session.cxx
+++ b/src/navigation/navigation-core/session-server-plugin/genivi_navigationcore_session.cxx
@@ -95,7 +95,8 @@ class SessionServerStub : public SessionStubDefault
dbg(lvl_debug,"enter\n");
if (!mp_handles[_sessionHandle])
_error = Session::deleteSessionError::SESSION_ERROR_SESSIONNOTAVAILABLE;
- delete(mp_handles[_sessionHandle]);
+ else
+ delete(mp_handles[_sessionHandle]);
mp_handles[_sessionHandle]=NULL;
fireSessionDeletedEvent(_sessionHandle);
_reply(_error);
diff --git a/src/navigation/run-capi b/src/navigation/run-capi
index 4a5a7a0..eba360a 100755
--- a/src/navigation/run-capi
+++ b/src/navigation/run-capi
@@ -153,6 +153,8 @@ set -e
echo "the graphic for navit is based on sdl"
export NAVIT_GRAPHICS='sdl'
+./kill_navit &
+
cd $BIN_DIR
if [ "$enhpos" = 1 ]
diff --git a/test/navigation/test-map-viewer-control-capi.py b/test/navigation/test-map-viewer-control-capi.py
index 534ce62..7f4aa90 100755
--- a/test/navigation/test-map-viewer-control-capi.py
+++ b/test/navigation/test-map-viewer-control-capi.py
@@ -47,14 +47,16 @@ HORIZONTAL_SIZE = 800
VERTICAL_SIZE = 480
TIME_OUT = 10000
MIN_SCALE = 0
-MAX_SCALE = 16
+MAX_SCALE = 21
def mapviewer_mapViewScaleChanged_handler(mapViewInstanceHandle,scale,isMinMax):
global g_scale
new_scale=int(scale)
print("Scale: "+str(new_scale))
+ print('Is min max: '+str(int(isMinMax)))
if g_scale > new_scale and new_scale !=MIN_SCALE:
print("Zoom in")
+# pdb.set_trace()
g_scale=new_scale
MapViewerControl_interface.setMapViewScaleByDelta( \
dbus.UInt32(sessionhandle), \
@@ -160,8 +162,8 @@ if round(alt1,4) != round(alt2,4) :
print '\nTest Failed:' + str(round(alt1,4)) + '!=' + str(round(alt2,4)) + '\n'
ret=MapViewerControl_interface.getMapViewScale(dbus.UInt32(mapviewerhandle))
-print('Scale ID: '+str(int(ret[0])))
-print('MapScaleType: '+str(int(ret[1])))
+print('Scale: '+str(int(ret[0])))
+print('Is min max: '+str(int(ret[1])))
g_scale=int(ret[0])
diff --git a/test/navigation/test-map-viewer-control.py b/test/navigation/test-map-viewer-control.py
index 1588f5d..37a10c6 100755
--- a/test/navigation/test-map-viewer-control.py
+++ b/test/navigation/test-map-viewer-control.py
@@ -29,6 +29,7 @@
import dbus
import gobject
+import dbus.mainloop.glib
import time
#import pdb; pdb.set_trace()
@@ -43,14 +44,62 @@ SPLIT_SCREEN = 0x0011
#constants used by the script
HORIZONTAL_SIZE = 800
VERTICAL_SIZE = 480
+TIME_OUT = 20000
+MIN_SCALE = 0
+MAX_SCALE = 21
+
+def mapviewer_mapViewScaleChanged_handler(mapViewInstanceHandle,scale,isMinMax):
+ global g_scale
+ new_scale=int(scale)
+ print("Scale: "+str(new_scale))
+ print('Is min max: '+str(int(isMinMax)))
+ time.sleep(0.25)
+ if g_scale > new_scale and new_scale !=MIN_SCALE:
+ print("Zoom in")
+ g_scale=new_scale
+ MapViewerControl_interface.SetMapViewScaleByDelta( \
+ dbus.UInt32(sessionhandle), \
+ dbus.UInt32(mapviewerhandle), \
+ dbus.Int16(1))
+ else:
+ if new_scale < MAX_SCALE:
+ print("Zoom out")
+ g_scale=new_scale
+ MapViewerControl_interface.SetMapViewScaleByDelta( \
+ dbus.UInt32(sessionhandle), \
+ dbus.UInt32(mapviewerhandle), \
+ dbus.Int16(-1))
+ else:
+ print 'Test PASSED'
+ MapViewerControl_interface.ReleaseMapViewInstance( \
+ dbus.UInt32(sessionhandle), \
+ dbus.UInt32(mapviewerhandle))
+ session_interface.DeleteSession(sessionhandle)
+ loop.quit()
+
+#timeout
+def timeout():
+ print 'Timeout Expired'
+ print '\nTest FAILED'
+ loop.quit()
+
print '\n--------------------------'
print 'MapViewerControl Test'
print '--------------------------\n'
+if __name__ == '__main__':
+ dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
+
+
#connect to session bus
bus = dbus.SessionBus()
+bus.add_signal_receiver(mapviewer_mapViewScaleChanged_handler, \
+ dbus_interface = "org.genivi.mapviewer.MapViewerControl", \
+ signal_name = "MapViewScaleChanged")
+
+
session = bus.get_object('org.genivi.mapviewer.Session','/org/genivi/mapviewer')
session_interface = dbus.Interface(session, dbus_interface='org.genivi.mapviewer.Session')
@@ -115,13 +164,13 @@ if round(lon1,4) != round(lon2,4) :
if round(alt1,4) != round(alt2,4) :
print '\nTest Failed:' + str(round(alt1,4)) + '!=' + str(round(alt2,4)) + '\n'
-print 'Zoom in'
-MapViewerControl_interface.SetMapViewScaleByDelta( \
- dbus.UInt32(sessionhandle), \
- dbus.UInt32(mapviewerhandle), \
- dbus.Int16(1))
+ret=MapViewerControl_interface.GetMapViewScale(dbus.UInt32(mapviewerhandle))
+print('Scale: '+str(int(ret[0])))
+print('Is min max: '+str(int(ret[1])))
+
+g_scale=int(ret[0])
-time.sleep(3)
+time.sleep(1)
print 'Zoom in'
MapViewerControl_interface.SetMapViewScaleByDelta( \
@@ -129,33 +178,10 @@ MapViewerControl_interface.SetMapViewScaleByDelta( \
dbus.UInt32(mapviewerhandle), \
dbus.Int16(1))
-time.sleep(3)
-
-print 'Zoom out'
-MapViewerControl_interface.SetMapViewScaleByDelta( \
- dbus.UInt32(sessionhandle), \
- dbus.UInt32(mapviewerhandle), \
- dbus.Int16(-1))
-
-time.sleep(3)
-
-print 'Zoom out'
-MapViewerControl_interface.SetMapViewScaleByDelta( \
- dbus.UInt32(sessionhandle), \
- dbus.UInt32(mapviewerhandle), \
- dbus.Int16(-1))
-
-time.sleep(3)
-
-MapViewerControl_interface.ReleaseMapViewInstance( \
- dbus.UInt32(sessionhandle), \
- dbus.UInt32(mapviewerhandle))
-
-session_interface.DeleteSession(sessionhandle)
-
-print '\nTest Finished\n'
-
-
-
+time.sleep(1)
+#main loop
+gobject.timeout_add(TIME_OUT, timeout)
+loop = gobject.MainLoop()
+loop.run()