Archive for the ‘Testing’ Category

Diving into the StoryTeller trunk, Part 6: The main players in the screen activation lifecycle (2009-8-7)

It has been an interesting time with the StoryTeller codebase so far. I’ve learned a lot about advanced StructureMap usage by scanning through the code, trying to understand the unit tests, debugging StoryTeller and writing some smaller programs based on the newly discovered patterns & features.
However, my initial motivation for spending time with that codebase [...]

Diving into the StoryTeller trunk, Part 5: The EventAggregator (2009-7-20)

I’ve spend some time with the Pub / Sub topic on my own in the past. Although I still like my own implementation, even a year after I’ve originally written it (yes, rare but sometimes that happens), I really like how Jeremy implemented it. The EventAggregator in StoryTeller is one of those examples of how [...]

Diving into the StoryTeller trunk, Part 4: Registration of Generics (2009-7-17)

I really like the way StructureMap automates the container registration. Part 1 already showed a lot of the convention based container registration mechanism. Today I would like to touch an aspect of registration which doesn’t really fit under the term "convention over configuration", but is a really cool functionality non the less. For this post [...]

Diving into the StoryTeller trunk, Part 3: The INeedBuildUp convention (2009-7-15)

Another day in the trunk, another convention found.  After all startable instances have been started in the bootstrapping process, there is very similar looking convention which acts upon the INeedBuildUp interface, a marker interface. The code for it looks like this:

ObjectFactory.Model.PluginTypes
.Where(p => p.Implements<INeedBuildUp>())
.Select(x => x.To<INeedBuildUp>())
[...]

Diving into the StoryTeller trunk, Part 2: The IStartable convention (2009-7-14)

In the last post I talked a bit about how “Convention over Configuration” is applied to container registration in the StoryTeller trunk. Another neat convention which can be found in the bootstrapping process of StoryTeller is a convention around startable instances .
Each instance in the StoryTeller assemblies whose contract applies to StructureMaps default convention [...]

Diving into the StoryTeller trunk, Part 1: Convention based registration (2009-7-13)

Since I’ve read some bits about Rails I often wondered how “Convention over Configuration” (CoC) might look like in a .NET environment. StructureMap  was (AFAIK) the first IoC container in the .Net realm which provided functionality in order to combine conventions with dependency injection. It’s not surprising that StoryTeller relies a lot on StructureMap and [...]

Diving into the StoryTeller trunk (2009-7-9)

I just finished watching Jeremy D. Millers “Presentation Patterns” talk from this years NDC.
What he showed in the talk reminded me a lot of a prototype we build at my last employer.  The basic patterns & principles we used are mostly the same. Composite app, testable presentation layer, Presenter-First, IoC, Event-Brokering with auto-registration, just to [...]

That’s why I like Open Source . . . (2009-7-8)

Today I received a really nice feature for xUnit.BDDExtensions from a former colleague and friend of mine. It came to me completely with a spec demonstrating and documenting its usage. Completely awesome. I wish day to day software development would always be like that.

The feature deals with chained properties on interfaces. Consider [...]

I shot me again . . . (2009-7-7)

Earlier the day I wrote about my recent experience with ILMerge. As it turns out there were still some Rhino.Mocks related types which had to be excluded (The ones related to the WhenToldTo / WasToldTo functionality). This issue should be fixed now with my last check-in.
Damn it

Dude, I can do reports (2009-7-5)

Over the past days I finally managed to spend some time with xUnit.BDDExtensions. I can’t possibly describe how good coming back to xUnit.net feels after working with MSTest in my last project. The speed, the extensibility model.  It’s simply not comparable. MSTest is certainly a great tool in case you haven’t worked with a unit [...]