Invoking a subclass's method on its superclass's instance
Christian Tanzer
tanzer at swing.co.at
Tue Sep 26 02:22:08 EDT 2000
More information about the Python-list mailing list
Tue Sep 26 02:22:08 EDT 2000
- Previous message (by thread): Invoking a subclass's method on its superclass's instance
- Next message (by thread): Invoking a subclass's method on its superclass's instance
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
rwklee at home.com wrote: > I thought a natural and elegant solution is to implement only the default > behaviour in the reference model of class methods, and then implement each > behaviour variant as a method of a subclass with the same method name as its > superclass's. As the test system starts, only the reference model starts up > (in some test scenarios that is all that is needed.) To begin a test, the > tester will introduce his behaviour variants, and tell the test system to > switch to them for a selected set of instances. After the test, he tells the > system to switch back to the reference behaviour; and then repeat for a > different test. I would try something like: =============================================================================== module A.py: ------------------------------------------------------------------------------- class Reference : def behavior (self) : # implements reference behavior module B.py: ------------------------------------------------------------------------------- def behavior_variant_B (self) : # implements some specific behavior variant module Test_Driver.py ------------------------------------------------------------------------------- from A import Reference from B import behavior_variant_B object = Reference () # do some tests object.behavior = behavior_variant_B # switch to behavior variant B # do some more tests del object.behavior # switch back to reference behavior =============================================================================== You can repeat that with as many behavior variants as necessary. There is no need for subclasses implementing the variants. -- Christian Tanzer tanzer at swing.co.at Glasauergasse 32 Tel: +43 1 876 62 36 A-1130 Vienna, Austria Fax: +43 1 877 66 92
- Previous message (by thread): Invoking a subclass's method on its superclass's instance
- Next message (by thread): Invoking a subclass's method on its superclass's instance
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list