TestCase inheritance broken due to duplicate test id's

Bug #1256728 reported by Endre Karlson
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Designate
Fix Released
High
Endre Karlson

Bug Description

Our tests currently fails as in https://review.openstack.org/#/c/58316/.

This is due to a recent change in https://github.com/testing-cabal/testtools which checks for duplicate tests which we have due inheriting (the base of the notification handler or backend ones for example and then they are inherited down to each different "scenario" or "driver") this causes multiples of the same tests to be found.

Solution is to use python-testscenarios somewhere and a combination of mixins / inheritance elsewhere.

Revision history for this message
Endre Karlson (endre-karlson) wrote :

This also means that testing with the current version of testtools is broken.

Changed in designate:
importance: Undecided → Critical
assignee: nobody → Endre Karlson (endre-karlson)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to designate (master)

Fix proposed to branch: master
Review: https://review.openstack.org/59307

Changed in designate:
status: New → In Progress
Changed in designate:
milestone: none → icehouse-1
importance: Critical → High
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to designate (master)

Reviewed: https://review.openstack.org/59307
Committed: http://github.com/stackforge/designate/commit/eb164336c555e2617f478af7b4c37fb6eba0e81b
Submitter: Jenkins
Branch: master

commit eb164336c555e2617f478af7b4c37fb6eba0e81b
Author: Endre Karlson <email address hidden>
Date: Mon Dec 2 01:25:49 2013 +0100

    Multiple testing fixes

    * Changes NotificationHandler base to be a object and the tests to inherit it
      like a mixin, test_invalid method fails if not due to duplicate test id.
    * Changes backend tests to use scenarios and special NSD4 tests puts the setUp
      logic into a fixture which is loaded for the NSD4 backend tests.
    * Remove any get_*_service call into start_service(name) which uses a fixture
      ServiceFixture that automatically cleans up the service upon teardown (no
      more sprinkling tearDowns all over the tests to stop a service).
    * Use fixture for database. Removes storage.setup_schema and teardown_schema.
    * Fix cleanup of notifications.
    * Use fixture for Policy instead of in teardown().

    bug #1256728

    Change-Id: I72a53eed9e81d3f014015aa443582de21a4e66ee

Changed in designate:
status: In Progress → Fix Committed
Changed in designate:
milestone: icehouse-1 → icehouse-2
Changed in designate:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.