Re: Fwd: Addin SetUp question
"Charlie Poole" <[email protected]>
| Newsgroups | gmane.comp.windows.dotnet.nunit.devel |
|---|---|
| Message-ID | <002101c87d9a$344a4fa0$6401a8c0@ferrari> |
Hi Kelly, > > Then again, this list does include people who work with NUnit > > internals, so I'm glad I asked. > > The thing that makes Eclipse so wonderful is the plethora of > well-documented extension points. That gives many mere > mortals the opportunity to create extension points. The whole > platform benefits quickly from that. That's in stark contrast > to the difficulty with which one can extend the Linux core, > for example. Slower benefits are realized there. As we move > towards NUnit v 3.0, I hope that we will keep the > "well-documented" part in mind, because extensibility is, in > my mind, a key differentiator for 3.0... I intend on putting > my keyboard where my mouth is on that too. That's my vision as well. > I'm sure this is not lost on anyone, but what we think about > as "internal" and what we think about as newly exposed > extension points is an important design issue as we go > forward. If it's to be useful in 2.x, the same probably > applies, but I think it gets especially vital in the 3.0 time frame. Yes. You'll notice that there is a big wided façade on top of the engine in my "vision" block diagram. My view is that's the stuff you should call from outside. For extensions, we need to have the same thing - and in fact we do. However, it turns out that most people who want to implement extensions do so by deriving from internal classes. That's understandable, since it's the easiest way to do it. So I think we have to provide some sort of minimal "extensibility kit" with the stuff that you need to use to implement a test, for example. > > > Would there be any backwards compatibility issues with > > current > > plugins should you drop TestCase? Seems like that > would make it > > hard to make one plugin that worked with all > versions, wouldn't > > it? > > > > In theory, there could be. However, these are intended as NUnit > > internal implementation details. The way to write one plugin that > > works across multiple versions is to stick to the > interfaces. That's > > just a bit hard to do right now. > > Yup. Again, this is a good reason to get the extension points > in 3.0 as good as we can the first time around, as there > won't be a really super good way to fix it until 4.0, which > is hopefully years off. Fortunately, mono.addins does have a way of versioning extension points. But the actual action interfaces - the ones we create - will need to be versioned as well. Charlie > -Kelly > > -------------------------------------------------------------- > ----------- > This SF.net email is sponsored by: Microsoft Defy all > challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > nunit-developer mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/nunit-developer > ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/