Merge lp:~xnox/notes-app/py32 into lp:notes-app

Proposed by Dimitri John Ledkov
Status: Merged
Merged at revision: 261
Proposed branch: lp:~xnox/notes-app/py32
Merge into: lp:notes-app
Diff against target: 168 lines (+31/-16)
6 files modified
CMakeLists.txt (+1/-0)
click/manifest.json.in (+3/-0)
debian/control (+5/-2)
debian/rules (+4/-1)
tests/autopilot/CMakeLists.txt (+1/-3)
tests/autopilot/notes_app/tests/__init__.py (+17/-10)
To merge this branch: bzr merge lp:~xnox/notes-app/py32
Reviewer Review Type Date Requested Status
PS Jenkins bot continuous-integration Approve
Ubuntu Phablet Team Pending
Review via email: mp+210254@code.launchpad.net

Commit message

Make autopilot tests python 3 and 2 compatible.

Description of the change

Make autopilot tests python 3 and 2 compatible.

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

FAILED: Continuous integration, rev:250
No commit message was specified in the merge proposal. Click on the following link and set the commit message (if you want a jenkins rebuild you need to trigger it yourself):
https://code.launchpad.net/~xnox/notes-app/py32/+merge/210254/+edit-commit-message

http://jenkins.qa.ubuntu.com/job/notes-app-ci/275/
Executed test runs:
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty/3787
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty-touch/3374
    SUCCESS: http://jenkins.qa.ubuntu.com/job/notes-app-trusty-amd64-ci/57
    SUCCESS: http://jenkins.qa.ubuntu.com/job/notes-app-trusty-armhf-ci/57
        deb: http://jenkins.qa.ubuntu.com/job/notes-app-trusty-armhf-ci/57/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/notes-app-trusty-i386-ci/57
    SUCCESS: http://jenkins.qa.ubuntu.com/job/autopilot-testrunner-otto-trusty/3327
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/3805
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/3805/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/3376
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/3376/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-runner-mako/5743
    SUCCESS: http://s-jenkins.ubuntu-ci:8080/job/touch-flash-device/4627

Click here to trigger a rebuild:
http://s-jenkins.ubuntu-ci:8080/job/notes-app-ci/275/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
lp:~xnox/notes-app/py32 updated
251. By Dimitri John Ledkov

Merge trunk

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
lp:~xnox/notes-app/py32 updated
252. By Dimitri John Ledkov

Mark autopilot tests as python3 compatible.

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'CMakeLists.txt'
2--- CMakeLists.txt 2013-10-08 22:42:33 +0000
3+++ CMakeLists.txt 2014-04-10 10:39:03 +0000
4@@ -41,6 +41,7 @@
5 include(GNUInstallDirs)
6
7 set(NOTES_APP notes-app)
8+set(AUTOPILOT_DIR notes_app)
9
10 if(NOT CLICK_MODE)
11 set(NOTES_APP_DIR ${CMAKE_INSTALL_DATADIR}/${NOTES_APP})
12
13=== modified file 'click/manifest.json.in'
14--- click/manifest.json.in 2014-03-14 17:06:41 +0000
15+++ click/manifest.json.in 2014-04-10 10:39:03 +0000
16@@ -17,5 +17,8 @@
17 "x-source": {
18 "vcs-bzr": "lp:notes-app",
19 "vcs-bzr-revno": "@BZR_REVNO@"
20+ },
21+ "x-test": {
22+ "autopilot": "@AUTOPILOT_DIR@"
23 }
24 }
25
26=== modified file 'debian/control'
27--- debian/control 2013-09-26 17:55:31 +0000
28+++ debian/control 2014-04-10 10:39:03 +0000
29@@ -4,13 +4,15 @@
30 XSBC-Original-Maintainer: Ugo Riboni <ugo.riboni@canonical.com>
31 Build-Depends: cmake,
32 debhelper (>= 9),
33- python (>= 2.7),
34+ python3,
35+ dh-python,
36 qtbase5-dev,
37 qtdeclarative5-dev,
38 dh-translations,
39 Standards-Version: 3.9.4
40 Section: libs
41 Homepage: https://launchpad.net/notes-app
42+X-Python3-Versions: >= 3.2
43 # If you aren't a member of ~phablet-team but need to upload packaging changes,
44 # just go ahead. ~phablet-team will notice and sync up the code again.
45 Vcs-Bzr: https://code.launchpad.net/~phablet-team/notes-app/trunk
46@@ -36,7 +38,8 @@
47 libqt5widgets5,
48 ubuntu-ui-toolkit-autopilot,
49 notes-app (>= ${binary:Version}),
50- python2.7,
51+ python3-autopilot,
52+ ${python3:Depends},
53 ${misc:Depends},
54 Description: Test package for the notes app
55 notes-app is a note taking application for the Ubuntu platform. This package
56
57=== modified file 'debian/rules'
58--- debian/rules 2013-10-08 09:52:53 +0000
59+++ debian/rules 2014-04-10 10:39:03 +0000
60@@ -11,7 +11,7 @@
61 export DPKG_GENSYMBOLS_CHECK_LEVEL=4
62
63 %:
64- dh $@ --parallel --with translations
65+ dh $@ --parallel --with translations,python3
66
67 override_dh_install:
68 dh_install --fail-missing
69@@ -21,3 +21,6 @@
70 # Unfortunately, the default build directory is not exposed
71 # (see http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=601774).
72 $(MAKE) -C obj-$(DEB_HOST_GNU_TYPE) com.ubuntu.notes.pot
73+
74+override_dh_python3:
75+ dh_python3 -pnotes-app-autopilot
76
77=== modified file 'tests/autopilot/CMakeLists.txt'
78--- tests/autopilot/CMakeLists.txt 2013-09-23 13:47:21 +0000
79+++ tests/autopilot/CMakeLists.txt 2014-04-10 10:39:03 +0000
80@@ -1,6 +1,4 @@
81-set(AUTOPILOT_DIR notes_app)
82-
83-execute_process(COMMAND python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
84+execute_process(COMMAND python3 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())"
85 OUTPUT_VARIABLE PYTHON_PACKAGE_DIR OUTPUT_STRIP_TRAILING_WHITESPACE)
86
87 if(INSTALL_TESTS)
88
89=== modified file 'tests/autopilot/notes_app/tests/__init__.py'
90--- tests/autopilot/notes_app/tests/__init__.py 2013-12-11 17:29:27 +0000
91+++ tests/autopilot/notes_app/tests/__init__.py 2014-04-10 10:39:03 +0000
92@@ -6,12 +6,19 @@
93 # by the Free Software Foundation.
94
95 """notes-app autopilot tests."""
96+from __future__ import print_function, absolute_import
97
98 import base64
99-import BaseHTTPServer
100+try:
101+ from http import server
102+except ImportError:
103+ import BaseHTTPServer as server
104 import errno
105 import glob
106-import md5
107+try:
108+ from hashlib import md5
109+except ImportError:
110+ from md5 import md5
111 import os
112 import os.path
113 import socket
114@@ -26,7 +33,7 @@
115 from ubuntuuitoolkit.emulators import UbuntuUIToolkitEmulatorBase
116
117 from notes_app.emulators.notesapp import NotesApp
118-import imagedata
119+from . import imagedata
120
121
122 class NotesAppTestCase(AutopilotTestCase):
123@@ -99,7 +106,7 @@
124
125 def ensure_db(self):
126 path = os.path.expanduser("~/.local/share/com.ubuntu.notes/Databases")
127- db = os.path.join(path, md5.md5("notes").hexdigest() + ".sqlite")
128+ db = os.path.join(path, md5(b"notes").hexdigest() + ".sqlite")
129 if not os.path.exists(db):
130 self.launch_and_quit_app()
131 self.assertTrue(os.path.exists(db))
132@@ -139,7 +146,7 @@
133
134
135
136-class HTTPRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
137+class HTTPRequestHandler(server.BaseHTTPRequestHandler):
138
139 """
140 A custom HTTP request handler that serves GET resources.
141@@ -182,14 +189,14 @@
142 self.server = None
143 while (self.server is None) and (port < 12350):
144 try:
145- self.server = BaseHTTPServer.HTTPServer(("", port),
146- HTTPRequestHandler)
147+ self.server = server.HTTPServer(("", port),
148+ HTTPRequestHandler)
149 except socket.error as error:
150 if (error.errno == errno.EADDRINUSE):
151- print "Port %d is already in use" % port
152+ print("Port %d is already in use" % port)
153 port += 1
154 else:
155- print os.strerror(error.errno)
156+ print(os.strerror(error.errno))
157 raise
158 if self.server is None:
159 raise SystemError("Unable to start local HTTP server")
160@@ -200,7 +207,7 @@
161 return self.server.server_port
162
163 def run(self):
164- print "now serving on port %d" % self.port
165+ print("now serving on port %d" % self.port)
166 self.server.serve_forever()
167
168 def shutdown(self):

Subscribers

People subscribed via source and target branches