Extension classes with multiple base classes aren't merged correctly.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Autopilot |
Fix Released
|
High
|
Unassigned | ||
autopilot (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Vivid |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Related to this bug: lp:1376996 where the fix for that introduced other issues for existing application test cases this code needs to be fixed so this aforementioned bug is fixed completely.
The actual bug is that the extension classes aren't applied in the call to `_try_custom_
base + tuple(set(
)
But this introduced other errors and at that point the quick fix was no longer quick.
[Impact]
* It is possible that a test authors tests fail intermittently due to the base classes of a cpo not being resolved correctly and thus added methods etc. are not available (resulting in an attribute failure).
* justification: Ensures that test author tests for applications have a decreased likelihood of failing
* This fix improves the handling of the what is expected when using a custom proxy object and is stricter in what it allows.
[Test Case]
* To reproduce this bug:
- Install the current python3-autopilot (apt-get install python3-autopilot python-
- run this test (using the following command):
$ python3 -m autopilot.run run autopilot.
[Regression Potential]
* Changes to the existing core app autopilot tests have been landed, otherwise there would be a potential regression where tests start failing with an exception [1].
[1] ValueError with the message starting: "base_class: {passed} does not appear to be the actual base CPO class."
* This change has been tested against the existing core app tests (Using a jenkins job similar to the smokeeng dash board) where all the tests are run. The results are inspected.
Related branches
description: | updated |
Changed in autopilot: | |
status: | Confirmed → Fix Released |
description: | updated |
tags: |
added: verification-done removed: verification-needed |
[Impact]
* It is possible that a test authors tests fail intermittently due to the base classes of a cpo not being resolved correctly and thus added methods etc. are not available (resulting in an attribute failure).
* justification: Ensures that test author tests for applications have a decreased likelihood of failing
* This fix improves the handling of the what is expected when using a custom proxy object and is stricter in what it allows.
[Test Case]
* To reproduce this bug: windowmocker) tests.functiona l.test_ introspection_ features. IntrospectionFe atureTests. test_customised _proxy_ classes_ have_extension_ classes
- Install the current python3-autopilot (apt-get install python3-autopilot python-
- run this test (using the following command):
$ python3 -m autopilot.run run autopilot.
[Regression Potential]
* Changes to the existing core app autopilot tests have been landed, otherwise there would be a potential regression where tests start failing with an exception [1].
[1] ValueError with the message starting: "base_class: {passed} does not appear to be the actual base CPO class."
* This change has been tested against the existing core app tests (Using a jenkins job similar to the smokeeng dash board) where all the tests are run. The results are inspected.