summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Make it possible to connect to QAbstract{State,Transtion} private signals.Stephen Kelly2012-07-131-0/+121
| | | | | | | Use the same trick as used for private signals in the models. Change-Id: I4235788490cae0e3d554565621d145652dc5b0ca Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Make it possible to use new syntax to connect to model signals.Stephen Kelly2012-07-131-0/+107
| | | | | | | | | The private signals can not be used as function pointers, as required by the new syntax, so we introduce a parameter which can only be created privately. Change-Id: I3d7bb8a163e764d685e8007cba831fb77e3c6855 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Create a way to inform moc about private signals.Stephen Kelly2012-07-131-0/+370
| | | | | | | | | | | | | | | | | | Moc checks for the use of the QPrivateSignal struct, which is part of the Q_OBJECT macro and is private to each class that uses it. Moc then generates a name of the signal which does not include the private struct, and generates code to invoke such signals with an instance of the private struct. This way we can mark private signals as such and prevent them from being emitted from subclasses or from outside of the class entirely. The drawback to this is that it only works if the private signal has no default arguments. However, at least in Qt, there are no such signals. Change-Id: Id16eadaa8d3c36a2c3b265077877f3e1d8304c84 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Test for QMetaType binary breakage.Jędrzej Nowacki2012-07-133-0/+46
| | | | | | | Type traits can not be changed durring Qt5 life time. Change-Id: If69f65ff2113c901580afee91b11ae1b11c13a4f Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* tst_QMimeDatabase: use QFutureSynchronizerMarc Mutz2012-07-131-12/+11
| | | | | | | | Replace a list of QFuture<void>s and a loop that calls waitForFinished() on each of them with a QFutureSynchronizer<void>, which does exactly that. Change-Id: I1f2e90169a5b2949bd8cb9d1009a5a7af1500139 Reviewed-by: David Faure <faure@kde.org>
* statemachine: Fix state entry bug for parallel state groupsKent Hansen2012-07-121-0/+39
| | | | | | | | | | | | | | | | | | The SCXML spec had a bug that would cause the initial state of a compound state within a parallel state group to be entered even if the transition specified another (non-initial) state of the compound state as its target. This only happened if the transition had multiple target states. The bug has been fixed in recent revisions of the SCXML spec. This commit implements the fix, which is to walk the ancestors of the transition's target states only after all the target states themselves have been added, so that the default initial states are correctly overridden/ignored. Task-number: QTBUG-25958 Change-Id: Iac532047678c483a4a3996e24dacf30e00f6bbe0 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* Fix small problems with tst_QProcessThiago Macieira2012-07-121-3/+4
| | | | | | | | | | | | | | Remember to register the metatype where we use it, so we don't depend on another test being run previously. And skip the setWorkingDirectory test completely on Unix. I don't know why it needs to be skipped, but if we're not going to verify anything, don't even try to do anything. This saves us one memory leak at least. Change-Id: I22e151cc3fa7b4e976972aca8978b88b263d9bee Reviewed-by: Mitch Curtis <mitch.curtis@nokia.com> Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com> Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Enable modularization of translation files.Jan-Arve Saether2012-07-123-0/+47
| | | | | | | | | | | | | | | | | This is accomplished by introducing dependencies to catalogs. This requires one API change: QTranslator::load(const uchar *, int); changes to QTranslator::load(const uchar*, int len, const QString &directory = QString()); Since now, even the load from memory might need a directory if the memory block contains a qm file with dependencies. Change-Id: I781f333d07f53bb431d0a7b5fa1abe282dc4d338 Task-number: QTBUG-26138 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Fix crash when column is inserted before rowspanned cellEskil Abrahamsen Blomfeldt2012-07-121-0/+29
| | | | | | | | | | | | | | When you're inserting a column in front of a rowspanned cell and this cell is not the first in the rowspan, we would get the wrong logical index of the new cell (putting it in front of the initial cell with the rowspan). If the cell does not span all rows, the table will get into a broken state and trigger asserts in update(). To fix this, we search for the first cell after the insertion point which has a logical index higher than the cell directly before the insertion point. Change-Id: I42e91a20d77b2ba9c5607f6cab23f51ed888cbd3 Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
* test behavior of $${absolute,relative}_path() with empty 1st argumentOswald Buddenhagen2012-07-121-0/+2
| | | | | Change-Id: I76c0853a9d397979f2ae5eb780374d2380c989f1 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Implement qWaitForWindowShown using qWaitForWindowExposed.Friedemann Kleint2012-07-121-1/+1
| | | | | | | Deprecate qWaitForWindowShown for Qt 6 as it is just a wrapper. Change-Id: I0f8195679679120bd402e273fed4d331dc926708 Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
* Tests: Fix printsupport profiles.Friedemann Kleint2012-07-122-2/+2
| | | | | | | | | Fix reversed conditions, breakage introduced by 32db7de2079967fe1c333c562b742318c50321a4. Change-Id: I6fca399376cd1fa9bffea0a686b56c4d5ec26605 Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Write qHash functions for QDate, QTime and QDateTime.Mitch Curtis2012-07-123-1/+8
| | | | | | | | These functions didn't exist - this patch implements them. Task-number: QTBUG-23079 Change-Id: I9eb6e238531d5cda878f5f2cdd27bab30aa60669 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add unary operator+ to QPoint and QPointF.Mitch Curtis2012-07-122-0/+30
| | | | | | | | | | | | | As requested by Winfried Schenke: "QPoint should have an unary operator+ (the unary operator- exists). Classes with arithmetic operators should provide a complete set of operators, because some template code relies on it." Task-number: QTBUG-22913 Change-Id: Ib0c5105975f56c15f00bb48d83c8d911f5a204ac Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Improve windowflags, windowgeometry manual tests.Friedemann Kleint2012-07-118-21/+62
| | | | | | | | | | - Make them compile with 4.8 for comparison - Add Active to WindowStates control - Add -layout option to windowgeometry Change-Id: I052330eb8689883c104a0552708ea700c7cd790a Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* Fix some spelling errorsSergio Ahumada2012-07-1110-11/+11
| | | | | | Change-Id: I19d3b2e9a5180b13deb828b55195404ef20be295 Reviewed-by: Daniel Teske <daniel.teske@nokia.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* Improve QPoint and QPointF auto tests.Mitch Curtis2012-07-114-72/+679
| | | | | | | | Improve test coverage for QPoint and QPointF. Separate QPointF tests into their own project. Change-Id: Id28dc5b85aba9fc179d87b2bca1d99854f27a5ab Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* fix build with namespaced qtOswald Buddenhagen2012-07-111-0/+4
| | | | | Change-Id: Ie7d8ce60448aea98141baa66a57796447a31040e Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Fix unit tests when CMAKE_PREFIX_PATH env var is not set.Stephen Kelly2012-07-112-2/+10
| | | | | | | | | | | | Tests which are expected to not build need to get a way to find the Qt 5 config packages. Because they use try_compile, there is no way to pass the contents to it. Work around that by generating a file containing the prefix which the tests will include. Change-Id: If43080c241539e4af5fe1c183e7da72066278b73 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* statemachine: Support parallel root stateKent Hansen2012-07-111-4/+9
| | | | | | | | | | | QStateMachine inherits from QState, so it should be possible to set its childMode to ParallelStates, and it should behave as expected (the machine should emit the finished() signal when all its child states are in final states). Task-number: QTBUG-22931 Change-Id: Ic436351be0be69e3b01ae9984561132cd9839fa7 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* statemachine: Emit finished() signal when the initial state is finalKent Hansen2012-07-111-0/+12
| | | | | | | | | | It's legal to set a QFinalState as the initial state. The state machine should correctly emit the finished() signal upon entering such a state in the initial transition, and don't do any further processing. Change-Id: Ica8d3fadbbde604512ea1136624af54eb3b13b11 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* statemachine: Revamp property assignments implementationKent Hansen2012-07-111-0/+443
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the old implementation, property assignments (QState::assignProperty()) were "second-class citizens". Assignments were not really integrated into the state machine algorithm, but rather done as a separate step (QStateMachinePrivate::applyProperties()). While that was convenient for SCXML spec transcription purposes, it resulted in some pretty poor semantics on the user side: * Properties were not assigned until _after_ both the QAbstractState::onEntry() function had been called and the QState::entered() signal had been emitted. * Automatic property restoration (QStateMachine::RestoreProperties) did not play nice with nested states (and parallel states, in particular). The proper fix is to refactor the implementation to make property assignments first-class in the core state machine algorithm (QStateMachinePrivate::microstep()). In practice, this meant splitting some steps. Instead of calling exitStates() straight away, we now first only compute the states to exit (without actually exiting them), and use the resulting set to compute which properties are candidates for restoration. Similarly, instead of calling enterStates(), we first only compute the states to enter (without actually entering them), and use the resulting set to compute which properties are assigned by the entered states. With that in place, the rest was a matter of moving the various chunks of the old applyProperties() logic to the place where they belong in the per-state entry/exit. All existing autotests pass. Added several tests that verify the desired semantics in more detail. Task-number: QTBUG-20362 Change-Id: I7d8c7253b66cae87bb0d09aa504303218e230c65 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* Remove clipboard operations from QAccessibleEditableTextInterfaceJan-Arve Saether2012-07-112-53/+133
| | | | | | | | | | | | | | | | | | Also, remove its subclass QAccessibleSimpleEditableTextInterface Instead of having the subclass that implements this conveniently, we move this behaviour over to the bridge. The bridge should check if role() == EditableText is set, and then it should try to support the IAccessibleEditableText interface (i.e. it should accept the calls to replaceText(), deleteText() and insertText()) and change the text with the following operations: 1. Query the text using QAccessibleTextInterface::text() or by using QAccessibleInterface::text(QAccessible::Value) as a fallback 2. Do the requested delete/insert/replace manipulation 3. Update the text with setText(QAccessible::Value, newText); Change-Id: Iee5e41faf14351951e2bfca8c9eac970a113e878 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
* test: subtract qurlinternal.pro when private_tests are not enabledSergio Ahumada2012-07-101-1/+2
| | | | | | | | | | This test used requires(contains(QT_CONFIG,private_tests)) in its .pro file, but did not subtract itself from its parent project SUBDIRS when private_tests weren't enabled. Change-Id: Idcd0893c4804a8217e4dd33ba9838ff67e996f58 Reviewed-by: David Faure <faure@kde.org> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* statemachine: Don't assign properties for transitions with no targetsKent Hansen2012-07-101-0/+55
| | | | | | | | | | If the transition has no target states, that means the current state won't change; hence, property assignments should not be performed. In particular, properties should not be restored to the values they had before the state was entered. Change-Id: I237bbb541f939c272777e70c5f26c886ec457a17 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* statemachine: Purge restorable properties when they are restoredKent Hansen2012-07-101-0/+46
| | | | | | | | | | | | Previously, a registered restorable property would only be unregistered if the property was animated (see QStateMachinePrivate::_q_animationFinished()). But if a property is set directly, it should also be unregistered; otherwise, the state machine would use the previously saved (stale) value the next time that property should be restored. Change-Id: I5d246aa5355ddd0ba5f81b0186a9f0e4f3bbaa3f Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* Set compound state's initial state to 0 if it is removed/deletedKent Hansen2012-07-101-0/+13
| | | | | Change-Id: I45b7c15a9b3d5a1860cb9a7da8836f9eaaa0326d Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* statemachine: Don't crash if property assignment target is deletedKent Hansen2012-07-101-0/+52
| | | | | | | | Do like QPropertyAnimation and store the QObject in a QPointer. Purge the assignments list upon state entry and property restore. Change-Id: I54a56885a2905178ab6aa5cf292b3d25c86b7a97 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* Color transparency support in html import/exportAlexey Chernov2012-07-102-0/+123
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Export of color transparency component is added for cases where color is exported to html. New static function colorValue() is added to prepare CSS string representation of QColor. When the color is opaque, it falls down to QColor::name() method which was used previously, otherwise it returns 'rgba()' CSS statement or 'transparent' keyword in case transparency is 0. 6-digit precision is used for alpha value as it's maximum which can be processed properly by Gecko and Webkit engines (http://lists.w3.org/Archives/Public/www-style/2009Dec/0295.html). Import part for rgba() statement was also added to QCssParser. It supports rgba() color values as stated in CSS Color Module Level 3 (http://www.w3.org/TR/css3-color/#rgba-color). Import of undocumented statement 'rgba(int,int,int,int);' was also added to preserve regression test success and to provide compatibility with previous code relying on this behaviour. Test cases added to QCssParser autotest for rgba(int,int,int,float) statement and to QTextDocument autotest for rgba(int,int,int,float) and 'transparent' statements for certain 'color', 'background-color' and 'bgcolor' properties. Change-Id: Id341c4e800249820d52edef8003e50f9a74d062b Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* fix compilation with conforming compilers (e.g. GCC >= 4.7)Marc Mutz2012-07-102-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | In qdbus_cast(), qMetaTypeId<QDBusArgument> as well as qvariant_cast<QDBusArgument> are used. They don't depend on any template argument of qdbus_cast(), so their definitions need to be available at function template definition instead of instantiation time. But the necessary Q_DECLARE_METATYPE(QDBusArgument) was at the end of the header, after the defintion of qdbus_cast(), which is too late for conformin compilers. Fixed by moving it up just after the QDBusArgument definition. Similarly, in tst_qdatetime and tst_qvector, the Q_DECLARE_METATYPE() for Qt::DateFormat and QVector<int>, and with it the specialisation of QMetaTypeId<>, were issued after the first use of meta typing; too late for conforming compilers. Change-Id: I25ca0b06e68d5184597a22708404a8f2040b2de1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Change deprecated use of CONFIG+=qdbus to QT+=dbusSergio Ahumada2012-07-092-3/+2
| | | | | | | | qdbus.prf was deprecated by 812adb58ba714c69eea9249584da2efd4fedecbc Change-Id: I5ceb65c1c671734491fe12e2174e6d8ecc14147d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Update the moc no-keywords test for the signals replacement.Stephen Kelly2012-07-091-1/+1
| | | | | Change-Id: I5c544e71615b00ff8fd337579fcd185e4b8e24af Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* QItemDelegate - add a more comprehensive testThorbjørn Lund Martsum2012-07-091-0/+124
| | | | | | | | | | | | | | | This is a bigger test after this change: c3e1abad4e141e6e9d876e5cff194c473a2654eb Beside the test of behavior it has the class FastEditItemView which could be useful in the future. QTestEventLoop::instance().enterLoop(1) does not perform well. (IE it makes CI slower). My class could be used to extensions. (or maybe even to remove a few of these calls) Change-Id: I4f1460873cd07ddc482d5cfe462b59c47ebb189f Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* remove QEXPECT_FAILS from tst_qwidgetJoerg Bornemann2012-07-091-14/+0
| | | | | | | Task-number: QTBUG-26420 Change-Id: Ic4cb725cda418bfb427e7d834c0e07c2543d408d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* QMimeType: document preferredSuffix()/suffixes() betterDavid Faure2012-07-081-0/+1
| | | | | | | Change-Id: Icf4aab3516cd622d9932e32cb0bd819bef22ce9b Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com> Reviewed-by: Wolf-Michael Bolle <wolf-michael.bolle@nokia.com>
* Fix QMimeType::operator== to only compare mimetype names.David Faure2012-07-081-39/+0
| | | | | | | | | | The name is the unique identifier. Code such as if (oldItem.mimeType() == newItem.mimeType()) really wants to detect whether the item has a new mimetype (name), not compare static mimetype data such as comments and icons. Change-Id: I5fe56443295c91e1024c066ad6e7f93d842ae507 Reviewed-by: Wolf-Michael Bolle <wolf-michael.bolle@nokia.com>
* fixed unittest builds for winceBjoern Breitmeyer2012-07-065-19/+5
| | | | | | | | | | removed printsupport tests for wince as there is no print support on wince and removed the special handling for wince from 4.8 on some tests as the dependent modules are not part of qt base anymore Change-Id: I4ffb22da11f98beee1013f775cb5ce4b936d3211 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* make tst_qwidget significant again on Windows and LinuxJoerg Bornemann2012-07-062-2/+144
| | | | | | | | | To let this test pass, a bunch of test cases had to be disabled. Task-number: QTBUG-25300 Change-Id: I26bc08f366c43fb2bf3ba42a5fcbeb3888ed02c0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Fix division by zero in triangulating stroker.Kim Motoyoshi Kalland2012-07-061-0/+75
| | | | | | | Task-number: QTBUG-15621 Change-Id: I10e0e39e57078507a01e1c2edb59fa52fd932f6c Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
* Improve QDate, QTime, QDateTime auto tests.Mitch Curtis2012-07-063-47/+114
| | | | | | | | Add more test data, merging operator!= tests in with operator== to take advantage of added data. Change-Id: If0426a3d01b8800cb7363385dbf3bcb21af5ed8f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* tst_qudpsocket: Interface fix for Windows XpMartin Petersson2012-07-061-0/+6
| | | | | | | | On Windows Xp we can not connect to the pseudo interfaces used for Teredo, so do not add these to the tests. Change-Id: I4e20c880fa2d18f266ffcef2f640d8b2e6d0cd21 Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
* tst_QTcpServer::linkLocal fix for Windows XpMartin Petersson2012-07-051-0/+3
| | | | | | | | Do not try to connect to the Terdo Tunneling Pseudo-Interface as this will fail for Windows Xp. Change-Id: I6dcd8369ba1e8642224cd4ac53f4032ed46d050d Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
* QHeaderView - adding an auto test with saveState and restoreStateThorbjørn Lund Martsum2012-07-051-0/+22
| | | | | | | | This test is nice to have regardless though the main reason for it is a refactor of hiddenSections in QHeaderView. Change-Id: Id41a1d5edda2ef75bf432a78cdb3e952303eae92 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* QHeaderView - resizeSection improvementThorbjørn Lund Martsum2012-07-052-0/+113
| | | | | | | | | | | | | | | | | This patch improves the manual resizeSection a bit. Before we didn't consider that the program could maybe resize other sections when the user was resizing one section. The main issue with that is that setOffset is so smart that it helps moving the mouse cursor - however it really shouldn't do if the program is trying to change something too. Maybe this won't solve all (possible) problems at once - but it is a fixed needed just to make something work - trying to make anything work without this fix is horrible.... Change-Id: I3cefa375a9b8ee4c1ef1e08ba0900025c671e4c6 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Replace insignificant test with QEXPECT_FAIL.Toby Tomkins2012-07-052-2/+3
| | | | | | | Task-number: QTBUG-26430 Change-Id: I647388701b7e6a71bb011f7714ff3b96c833a837 Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
* QHeaderView - prevent negative default+minimum section sizesThorbjørn Lund Martsum2012-07-041-6/+4
| | | | | | | | | In 96f1fe8855082017fbbecccdab1eb11fd8c1f870 we agreed that sections with negative sizes did not make sense. Of the same reason default section sizes and minimum section sizes should be not negative. Change-Id: I6a770e7f510d8e2bb90bfd8f38b4fa0566fc137b Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Uppercase the CONFIG for verbatim mode.Stephen Kelly2012-07-041-1/+1
| | | | | Change-Id: Iec883e0218af80fc329d866affb2b95db72c54d3 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Add a Q_PROPERTY for the sourceModel of a proxy model.Stephen Kelly2012-07-041-0/+10
| | | | | | | | | | | Now that Q_PROPERTY with a QObject derived type is more powerful. This property can be used in QML so that wrappers for proxy models do not need to be created, such as in the example at https://codereview.qt-project.org/#change,13007 Change-Id: I6ba676549d2135585d429a28e214fef0b2a6b1f9 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* tst_qwidget: remove QEXPECT_FAIL for QTBUG-8911Joerg Bornemann2012-07-041-3/+0
| | | | | | | | QTBUG-8911 has been fixed some time ago. Change-Id: I19dae0571b1829f6b3b797f7e0ec5c24a4241db8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
* Replace insignificant test with QEXPECT_FAIL.Toby Tomkins2012-07-042-2/+1
| | | | | | | Task-number: QTBUG-26403 Change-Id: Id933665a35be056f2b2a6fa2152f324810a7f057 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>