Hi Steve, The Purpose is: there is one module unittest2 which can do testing for our test scripts and generate report. Some of its unittest2 internal function churns out different test cases from module as per given parameter (i am using discover function).
Now there are some test case which need to be skipped according to some prerequisite. So according to the prerequisite we need to replace existing test case class and its function with new one (with same class name and function name but different steps inside the function, which will help in skipping the test case (by using unittest2.SkipTest()) So i do know who to create a class and its function dynamically at runtime??? What I am looking is, I have class name and function names during runtime and i can create the class using these variables. Thanks Nitin K On Tue, Jan 11, 2011 at 7:09 PM, steve <st...@lonetwin.net> wrote: > Hi Nitin, > > > On 01/11/2011 01:15 PM, Nitin Kumar wrote: > >> Hi all, >> >> I am trying to create one meta Class which can create classes at runtime. >> This I am able to achieve by the code snippet below >> >> [...snip...] >> >> but I am looking for one function for this class created above, which will >> do some activities (say print some data) at run time. >> what all changes can be added to MetaClass to achieve this?? >> >> or is there any better way for the same. >> >> The above things I am doing to replace one existing class and its function >> attribute depending on some condition. So I want to create new class >> itself >> using MetaClass (bcoz there can be various class which need to be created >> at >> runtime) >> >> > Taking one step back can you describe what exactly are you trying to do and > why do you think Metaclasses are the way to do it ? Maybe there is an > existing Design Pattern to solve your problem. If you simply wanted to > change a method for a class you can do it by: > > [st...@laptop ~]$ python > Python 2.7 (r27:82500, Sep 16 2010, 18:02:00) > [GCC 4.5.1 20100907 (Red Hat 4.5.1-3)] on linux2 > Type "help", "copyright", "credits" or "license" for more information. > >>> class UpdateMe: > ... def replace_me(self): > ... print "Not replaced" > ... > >>> a = UpdateMe() > >>> a.replace_me() > Not replaced > >>> def replacement(the_object): > ... print "Replaced" > ... > >>> UpdateMe.replace_me = replacement > >>> a.replace_me() > Replaced > >>> > > (hehehe, voice in my head just said Python is dyna-effing-mic, bi***es !!) > > cheers, > - steve > -- > random spiel: http://lonetwin.net/ > what i'm stumbling into: http://lonetwin.stumbleupon.com/ > _______________________________________________ > BangPypers mailing list > BangPypers@python.org > http://mail.python.org/mailman/listinfo/bangpypers > -- Nitin K _______________________________________________ BangPypers mailing list BangPypers@python.org http://mail.python.org/mailman/listinfo/bangpypers